การใช้ MSELoss
สำหรับปัญหาการถดถอย (regression) มักใช้ Mean Squared Error (MSE) เป็น loss function แทนที่จะใช้ cross-entropy โดย MSE คำนวณความแตกต่างยกกำลังสองระหว่างค่าที่พยากรณ์ (y_pred) กับค่าจริง (y) ในแบบฝึกหัดนี้ เราจะคำนวณ MSE loss ทั้งด้วย NumPy และ PyTorch
แพ็กเกจ torch, numpy (ในชื่อ np) และ torch.nn (ในชื่อ nn) ถูก import ไว้ให้เรียบร้อยแล้ว
แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร
Deep Learning เบื้องต้นด้วย PyTorch
คำแนะนำการฝึกหัด
- คำนวณ MSE loss โดยใช้ NumPy
- สร้างฟังก์ชัน MSE loss โดยใช้ PyTorch
- แปลง
y_predและyให้เป็น tensor จากนั้นคำนวณ MSE loss แล้วเก็บไว้ในตัวแปรmse_pytorch
แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ
ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์
y_pred = np.array([3, 5.0, 2.5, 7.0])
y = np.array([3.0, 4.5, 2.0, 8.0])
# Calculate MSE using NumPy
mse_numpy = ____
# Create the MSELoss function in PyTorch
criterion = ____
# Calculate MSE using PyTorch
mse_pytorch = ____(torch.tensor(____), ____)
print("MSE (NumPy):", mse_numpy)
print("MSE (PyTorch):", mse_pytorch)