2. 梯度下降算法分类
1. 梯度下降法分类2. 几种降法下降算法特点(1️⃣ 全梯度下降算法(Full Gradient Descent)每次迭代时使用全部样本的梯度值但每次使用全部数据有弊端速度太慢、效率低2️⃣ 随机梯度下降算法SGD每次迭代时随机选择并使用一个样本梯度值无法保证这个样本的梯度值没有问题因此不稳定但是有好处当用到梯度下降算法时已经时机器学习的第四步 - 模型训练在第二三步中数据预处理、特征工程中已经将数据处理过了数据没有问题。因此为提高效率也可以使用随机梯度算法两者区别全梯度下降因为使用了所有的样本数据更精准但速度慢随机梯度下降因为随机使用一个速度快但如果这个样本是异常值则对最终结果会有影响两者过多或过少3️⃣ 小批量梯度下降算法(mini-batch)每次迭代时随机选择并使用小批量的样本梯度值从m个样本中选择x个样本进行迭代(1xm)因此m1时是随机梯度下降、xt(1xm)时是小批量梯度下降、xm时是全梯度下降4️⃣ 随机平均梯度下降算法SAG每次迭代时随机选择一个样本的梯度值和以往样本的梯度值的均值。假设选择D样本计算出的梯度是3在选择一个G样本算出的梯度是5则列表值是[3, 5]然后计算列表中的梯度值均值4假设又选择了D样本梯度是3与算出的梯度均值4一起两者再求均值(为3.5)如果选择的不是D(如7)则将选择的样本加到样本列表中([3, 5, 7])再一起求均值得到5直到算法收敛。收敛即算法何时结束两种情况达到迭代次数、达到设定阈值随机平均梯度下降算法特点是开始时算出的值不准经过大量训练到后期其精准度才会提升不如选小批量梯度下降算法因此梯度下降算法中使用最多的是小梯度下降算法5️⃣ 总结全梯度是一次用所有随机是一次一个小批量是一次一批(1tm)随即平均梯度是抽样本将梯度加到列表中算列表均值)