เทนเซอร์ PyTorch เปรียบเสมือนอาร์เรย์จำนวนมาก ข้อแตกต่างเพียงอย่างเดียวคือเทนเซอร์ใช้ GPU เพื่อเร่งการคำนวณตัวเลข ค่าเฉลี่ย ของเทนเซอร์คำนวณโดยใช้ torch.mean() กระบวนการ. ส่งกลับค่ากลางขององค์ประกอบทั้งหมดในเทนเซอร์อินพุต เรายังคำนวณค่าเฉลี่ยแบบแถวและคอลัมน์ได้ โดยให้แกนหรือค่าสลัวที่เหมาะสม
ค่าเบี่ยงเบนมาตรฐานของเทนเซอร์คำนวณโดยใช้ torch.std() . ส่งกลับค่าเบี่ยงเบนมาตรฐานขององค์ประกอบทั้งหมดในเทนเซอร์ ชอบ ค่าเฉลี่ย นอกจากนี้เรายังสามารถคำนวณ ค่าเบี่ยงเบนมาตรฐาน , แบบแถวหรือแบบคอลัมน์
ขั้นตอน
-
นำเข้าไลบรารีที่จำเป็น ในตัวอย่าง Python ทั้งหมดต่อไปนี้ ไลบรารี Python ที่จำเป็นคือ ไฟฉาย . ตรวจสอบให้แน่ใจว่าคุณได้ติดตั้งแล้ว
-
กำหนดเทนเซอร์ PyTorch และพิมพ์ออกมา
-
คำนวณค่าเฉลี่ยโดยใช้ torch.mean(อินพุต, แกน) . ในที่นี้ อินพุตคือเทนเซอร์ที่ควรคำนวณค่าเฉลี่ยและแกน (หรือ สลัว ) คือรายการมิติข้อมูล กำหนดค่าเฉลี่ยที่คำนวณได้ให้กับตัวแปรใหม่
-
คำนวณค่าเบี่ยงเบนมาตรฐานโดยใช้ torch.std(input, axis) . ที่นี่ อินพุตคือ เทนเซอร์ และ แกน (หรือ ติ่มซำ ) คือรายการมิติข้อมูล กำหนดค่าเบี่ยงเบนมาตรฐานที่คำนวณแล้วให้กับตัวแปรใหม่
-
พิมพ์ค่าเฉลี่ยและค่าเบี่ยงเบนมาตรฐานที่คำนวณไว้ข้างต้น .
ตัวอย่างที่ 1
โปรแกรม Python ต่อไปนี้จะแสดงวิธีคำนวณค่าเฉลี่ยและความเบี่ยงเบนมาตรฐานของเมตริกซ์ 1 มิติ
# Python program to compute mean and standard # deviation of a 1D tensor # import the library import torch # Create a tensor T = torch.Tensor([2.453, 4.432, 0.754, -6.554]) print("T:", T) # Compute the mean and standard deviation mean = torch.mean(T) std = torch.std(T) # Print the computed mean and standard deviation print("Mean:", mean) print("Standard deviation:", std)
ผลลัพธ์
T: tensor([ 2.4530, 4.4320, 0.7540, -6.5540]) Mean: tensor(0.2713) Standard deviation: tensor(4.7920)
ตัวอย่างที่ 2
โปรแกรม Python ต่อไปนี้แสดงวิธีคำนวณค่าเฉลี่ยและความเบี่ยงเบนมาตรฐานของเมตริกซ์ 2 มิติในทั้งสองมิติ กล่าวคือ แบบแถวและคอลัมน์
# import necessary library import torch # create a 3x4 2D tensor T = torch.Tensor([[2,4,7,-6], [7,33,-62,23], [2,-6,-77,54]]) print("T:\n", T) # compute the mean and standard deviation mean = torch.mean(T) std = torch.std(T) print("Mean:", mean) print("Standard deviation:", std) # Compute column-wise mean and std mean = torch.mean(T, axis = 0) std = torch.std(T, axis = 0) print("Column-wise Mean:\n", mean) print("Column-wise Standard deviation:\n", std) # Compute row-wise mean and std mean = torch.mean(T, axis = 1) std = torch.std(T, axis = 1) print("Row-wise Mean:\n", mean) print("Row-wise Standard deviation:\n", std)
ผลลัพธ์
T: tensor([[ 2., 4., 7., -6.], [ 7., 33., -62., 23.], [ 2., -6., -77., 54.]]) Mean: tensor(-1.5833) Standard deviation: tensor(36.2703) Column-wise Mean: tensor([ 3.6667, 10.3333, -44.0000, 23.6667]) Column-wise Standard deviation: tensor([ 2.8868, 20.2567, 44.7996, 30.0056]) Row-wise Mean: tensor([ 1.7500, 0.2500, -6.7500]) Row-wise Standard deviation: tensor([ 5.5603, 42.8593, 53.8602])