线性模型
如果一个模型表达式类似于 y = a * x + b,那么它就可以称为线性模型 当然,如果 y = a * x2 + b * x + c,它同样也是线性模型
损失函数
假设我们有一个模型,这个模型的预测值与真实值之间总是存在差值,评估这个差值的大小的函数,就是 损失函数 比如常用的 均方差 损失函数,等于 代表了预测值。
实践
假设 模型为 y = w * x,损失函数采用均方差
x_data = [1,2,3]
y_data = [2,4,6]
请用写代码绘制出当w处于np.arange(0.0,4.1,0.1)时,损失值分别为多少?并绘制图形。
x_data = [1,2,3]
y_data = [2,4,6]
def forward(x):
return x * w
def loss(x,y):
y_pred = forward(x)
return (y_pred-y)*(y_pred-y)
w_list = []
mse_list = []
for w in np.arange(0.0,4.1,0.1):
sum = 0
for x,y in zip(x_data,y_data):
sum += loss(x,y)
w_list.append(w)
mse_list.append(sum/3)
plt.plot(w_list,mse_list)
plt.show()
|