0、问题求解步骤
①选择数据集
②选择模型
③进行训练
1、基本模型
y
^
=
x
∗
ω
+
b
\hat{y}=x*\omega+b
y^=x∗ω+b
2、损失函数
均方误差,即对于每一项,求预测值和真实值差的平方的和。然后求平均值。
3、代码实现
import numpy as np
import matplotlib.pyplot as plt
x_data = [1.,2.,3.]
y_data = [2.,4.,6.]
def forward(x):
return [w*v for v in x]
def loss(x,y):
y_pred = forward(x)
#转化成ndarray,因为list不支持对应位置相减
y_pred = np.array(y_pred)
y = np.array(y)
return sum((y_pred - y)**2) #计算方误差和
w_l = []
mse_l = []
for w in np.arange(0.,4.1,0.1):
#0 0.1 0.2 ......
l_sum = loss(x_data,y_data)
w_l.append(w)
mse_l.append(l_sum / 3)
plt.plot(w_l,mse_l)
4、结果展示