《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()

运行结果:
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/weixin_44894550/article/details/120811815