如约来填前几天给自己填下的坑。
一、数据准备部分
实话实说,这一部分参照了CSDN上博主的答案,也是因为自己对python数据的准备不是很熟练,对numpy的一些功能也不明白,还是得学习啊!
既然是有别人的就不放了,感谢大佬对小白的帮助。
二、损失函数
#计算损失函数
def ComputeCost(X,y,theta):
return np.sum(np.power(((X * theta.T) - y), 2)) / (2 * len(X))
三、梯度下降
alpha=0.01
iters=1500
for i in range(iters):
theta=theta-(X.T*(Xtheta.T-y)).Talpha/len(X)
print(theta)
结束!
多变量的就不做了,本质上没有什么区别。