当前位置:网站首页>Lecture 2 Linear Model Linear Model
Lecture 2 Linear Model Linear Model
2022-08-05 05:23:00 【A long way to go】
参考资料
- 一句话解释numpy.meshgrid()
- matplotlib教程之——Custom profiles and drawing styles(rcParams和style)
- python中zip()函数的用法
- matplotlib之plot()详解
- matplotlib 3D绘图警告
课堂练习
实现线性模型y=wx的平面图
import numpy as np
import matplotlib.pyplot as plt
#保存数据集,The same index is a sample
x_data = [1.0, 2.0, 3.0]
y_data = [2.0, 4.0, 6.0]
#Feedforward of the model
def forward(x):
return x * w
#损失函数
def loss(x, y):
y_pred = forward(x) #According to the feedforward requirementy_hat
return (y_pred - y) ** 2 #计算损失
# 穷举法
w_list = [] #权重
mse_list = [] #The loss value corresponding to the weight
for w in np.arange(0.0, 4.1, 0.1):
print("w=", w)
l_sum = 0
#从x_data, y_data取出x_val, y_val
for x_val, y_val in zip(x_data, y_data):
y_pred_val = forward(x_val)
loss_val = loss(x_val, y_val)
l_sum += loss_val
print('x_val==', x_val, 'y_val==',y_val, 'y_pred_val==',y_pred_val,'loss_val==', loss_val)
print('MSE=', l_sum / 3)
w_list.append(w)
mse_list.append(l_sum / 3)
#调用画图
plt.plot(w_list, mse_list)
plt.ylabel('Loss')
plt.xlabel('w')
plt.show()
pattern trace
课后练习
实现线性模型(y=wx+b)并输出loss的3D图像
There are several issues that need to be addressed here
1.w,b的取值
in previous class practice,只需要取一个w,因此可以用for循环取值.Correction is required in the exercises after classw,bTwo values for value operation,因此要使用meshgrid函数
2.Images cannot be displayed in Chinese
Add in front
from pylab import * mpl.rcParams[‘font.sans-serif’] = [‘SimHei’]
3.matplotlib 3D绘图警告
matplotlib 3D绘图警告
Code for homework exercises:
import numpy as np
import matplotlib.pyplot as plt
from mpl_toolkits.mplot3d import Axes3D
from pylab import *
mpl.rcParams['font.sans-serif'] = ['SimHei']
#Here the function is set to y=3x+2
x_data = [1.0,2.0,3.0]
y_data = [5.0,8.0,11.0]
def forward(x):
return x * w + b
def loss(x,y):
y_pred = forward(x)
return (y_pred-y)*(y_pred-y)
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)
# print("w==",w)
# print('b==',b)
l_sum = 0
for x_val, y_val in zip(x_data, y_data):
y_pred_val = forward(x_val)
loss_val = loss(x_val, y_val)
print('x_val==', x_val,'\ny_val==', y_val,'\ny_pred_val==', y_pred_val, '\nloss_val==',loss_val)
l_sum += loss_val
fig = plt.figure()
ax = Axes3D(fig,auto_add_to_figure=False)
fig.add_axes(ax)
ax.plot_surface(w, b, l_sum/3)
ax.set_xlabel("权重 W")
ax.set_ylabel("偏置项 B")
ax.set_zlabel("损失值")
plt.show()
3D图:
边栏推荐
- Difference between for..in and for..of
- uva1325
- 结构光三维重建(一)条纹结构光三维重建
- 判断语句_switch与case
- Wise Force Deleter强制删除工具
- 【cesium】Load and locate 3D Tileset
- Requests库部署与常用函数讲解
- 【过一下6】机器视觉视频 【过一下2被挤掉了】
- [WeChat applet] WXML template syntax - conditional rendering
- Distributed systems revisited: there will never be a perfect consistency scheme...
猜你喜欢

Using QR codes to solve fixed asset management challenges

数据库 单表查询

The mall background management system based on Web design and implementation

2022杭电多校第一场01

【cesium】Load and locate 3D Tileset
![[Study Notes Dish Dog Learning C] Classic Written Exam Questions of Dynamic Memory Management](/img/0b/f7d9205c616f7785519cf94853d37d.png)
[Study Notes Dish Dog Learning C] Classic Written Exam Questions of Dynamic Memory Management

RL强化学习总结(一)

Flutter learning 5-integration-packaging-publish

Excel Paint

DOM及其应用
随机推荐
【过一下4】09-10_经典网络解析
Transformation 和 Action 常用算子
1.3 mysql batch insert data
使用二维码解决固定资产管理的难题
Judgment statement _switch and case
Flutter Learning 4 - Basic UI Components
【过一下7】全连接神经网络视频第一节的笔记
Flutter learning three-Flutter basic structure and principle
C#关于set()和get()方法的理解及使用
HQL语句执行过程
flex布局青蛙游戏通关攻略
【过一下8】全连接神经网络 视频 笔记
Flutter TapGestureRecognizer 如何工作
2022杭电多校第一场01
Pycharm中使用pip安装第三方库安装失败:“Non-zero exit code (2)“的解决方法
u-boot中的u-boot,dm-pre-reloc
结构光三维重建(一)条纹结构光三维重建
uboot enable debug printing information
Distributed systems revisited: there will never be a perfect consistency scheme...
Excel画图