《PyTorch深度学习实践》第二节

B站up主 刘二大人 《PyTorch深度学习实践》完结合集
P2线性模型–作业

import numpy as np
import matplotlib.pyplot as plt
from mpl_toolkits.mplot3d import Axes3D

#设函数为y=2x+1
x_data = [1.0,2.0,3.0]
y_data = [3.0,5.0,7.0]

mse_list = []
W=np.arange(0.0,4.1,0.1)
B=np.arange(0.0,4.1,0.1)
[w,b]=np.meshgrid(W,B)   #生成坐标矩阵

def forward(x):
    return x * w + b

def loss(x,y):
    y_pred = forward(x)
    return (y_pred-y)*(y_pred-y)

l_sum = 0
for x_val, y_val in zip(x_data, y_data):
    y_pred_val = forward(x_val)
    print(y_pred_val)
    loss_val = loss(x_val, y_val)
    l_sum += loss_val

fig = plt.figure()  #创建一个画板
ax = Axes3D(fig)
ax.plot_surface(w, b, l_sum/3)  #曲面画图
ax.set_xlabel("w")
ax.set_ylabel("b")
ax.set_zlabel("mse")
plt.show()

运行结果:
《PyTorch深度学习实践》第二节

上一篇:回顾原型网络代码②计算模型的精度和损失


下一篇:卷积神经网络代码练习