1、梯度下降的步骤
选择初始点,求偏微分,按梯度下降公式和学习率移动点。最终到达最低点。梯度也可以理解为等高线的法线方向,但是梯度下降取的是梯度的相反方向。
2、学习率的大小对算法的影响
学习率过大会在最低点附近震荡,甚至直接越过最低点,学习率太低,移动速度会很慢,要调整学习率,使得Loss function下降的最快
3、学习率的调整方法
1)随着参数的更新,学习率不断变小,并将参数的学习率分开计算。
一般的方法:
Adagrad:
是参数w所有的的均方根,化简得:
Stochastic Gradient Descent:
步骤一:初始随机选择一个数据
步骤二:一般的递归下降,计算所有的训练数据的Loss后取和只走一步,而SGD计算时,每一轮每计算一个数据的Loss就走一步
Fearure Scaling特征缩放:让不同的因素的分布基本相同,即变化速率基本相同。可以让下降的方向与等高线垂直
4、梯度下降的推导
根据泰勒级数的推导,因此学习率要足够小,才能保证泰勒级数成立,即使用一个一次函数代替半径为学习率的邻域内的函数。
5、梯度下降算法的能力限制
不容易看出当前是否接近极地点,因为可能某些地方斜率很小
其解不保证是全局最优解,梯度下降法的速度也未必是最快的。
此时的计算方法依旧是取均值,但Σ的计算方式略有不同
其中分别是总的样本空间为n的训练数据中,类别一和类别二的样本空间大小
优化后新的结果,分类的boundary是线性的,所以也将这种分类叫做linear model。如果考虑所有的属性,发现正确率提高到了73%。