文件名称:matlab终止以下代码-MachineLearning:机器学习
文件大小:34.09MB
文件格式:ZIP
更新时间:2024-06-10 03:22:22
系统开源
matlab终止以下代码 机器学习算法Python实现 目录 一、 1、代价函数 其中: 下面就是要求出theta,使代价最小,即代表我们拟合出来的方程距离真实值最近 共有m条数据,其中代表我们要拟合出来的方程到真实值距离的平方,平方的原因是因为可能有负值,正负可能会抵消 前面有系数2的原因是下面求梯度是对每个变量求偏导,2可以消去 实现代码: # 计算代价函数 def computerCost(X,y,theta): m = len(y) J = 0 J = (np.transpose(X*theta-y))*(X*theta-y)/(2*m) #计算代价J return J 注意这里的X是真实数据前加了一列1,因为有theta(0) 2、梯度下降算法 代价函数对求偏导得到: 所以对theta的更新可以写为: 其中为学习速率,控制梯度下降的速度,一般取0.01,0.03,0.1,0.3..... 为什么梯度下降可以逐步减小代价函数 假设函数f(x) 泰勒展开:f(x+△x)=f(x)+f'(x)*△x+o(△x) 令:△x=-α*f'(x) ,即负梯度方向乘以一个很小的步长α 将△x