刘二大人Pytorch深度学习实践 第二讲 线性模型
b站刘二大人pytoch深度学习实践 第二讲代码笔记及课后作业
·
课程传送门:刘二大人《pytorch深度学习实践》——第二讲线性模型
课程代码:绘制线性模型 ()在不同w取值下,loss函数变化的图线

课后作业:
个人实现:
import matplotlib.pyplot as plt
import numpy as np
from matplotlib import cm
x_data = [1.0, 2.0, 3.0]
y_data = [2.0, 4.0, 6.0]
def forward(x, w, b):
return x * w + b
def loss(x, y, w, b):
y_pred = forward(x, w, b)
return (y_pred - y) ** 2
w_list = np.arange(0.0, 4.1, 0.1)
b_list = np.arange(-2.0, 2.1, 0.1)
mse_list = []
for w in w_list:
print("w=", w)
for b in b_list:
print("b=", b)
l_sum = 0
for x_val, y_val in zip(x_data, y_data):
y_val_pred = forward(x_val, w, b)
loss_val = loss(x_val, y_val, w, b)
l_sum += loss_val
print(' ', x_val, y_val, y_val_pred, loss_val)
mse_list.append(l_sum/3)
print("mse=", l_sum/3)
W, B = np.meshgrid(w_list, b_list)
mse_array = np.array(mse_list)
MSE = mse_array.reshape(len(b_list), len(w_list))
fig, ax = plt.subplots(subplot_kw={"projection": "3d"})
# 绘制曲面图
surf = ax.plot_surface(W, B, MSE, cmap=cm.coolwarm, linewidth=0, antialiased=False)
plt.style.use('_mpl-gallery')
plt.show()
运行结果:

注:此帖仅为学习记录之用,文中涉及到的PPT均为刘二大人原创,如有侵权,烦请告知,以便删除。本人为初学者入门,代码编写如果有可以改善提高之处,欢迎在评论区留下您宝贵的意见。
魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。
更多推荐


所有评论(0)