梯度下降法小结

概述:梯度下降法的目的是把模型估计参数不断调整优化(调整模型以适应已知数据),找到最优的参数估计值,从而找到拟合度最好的模型

核心方法:θ=θ−α(∂J(θ)/∂θ)

梯度:是一个方向,模型参数沿着这个方向可以最快的找到模型的最优参数。

1.背景:

    在机器学习中,对于无约束条件的优化问题,一般有梯度下降法、最小二乘法、牛顿法和拟牛顿法,而梯度下降法是目前比较常用的方法。

2.梯度的概念:

    梯度是指在多元函数中,对各个解释变量求偏导数,再由这些偏导数组成的向量,例如:函数f(x,y,z),它的梯度就是(∂f/∂x, ∂f/∂y,∂f/∂z)T,简称grad f(x,y,z)或者▽f(x,y,z)

3.梯度的目的和意义:

    求解梯度的目的是什么呢,简单来说,函数沿着梯度方向可以最快速度找到函数的最大值,沿着梯度相反的方向可以最快速度找到函数的最小值。

    在机器学习中,计算最小化损失函数时,可以用梯度下降法迭代求解,或者在计算最大化损失函数时,可以用梯度上升法迭代求解。

4.梯度下降法算法:

    4.1梯度下降法的直观解释:

        梯度下降法有一个直观解释,如果你处于一个高山上准备下山,现在你每走一步就要计算一下梯度,沿着梯度的负方向下山,这样你下山的速度最快,你可能会下到山脚,也可能到了山中间的一片凹地,也就是说,梯度下降法,它可能只是找到了一个局部最优解,而只有当函数为凸函数时候,找到的才一定会是全局最优解。

    4.2梯度下降的相关名词:

        (1)步长(learning rate):步长是指梯度下降过程中每一次迭代所确定的距离,即每一次沿着梯度负方向前进的距离

        (2)特征(feature): 解释变量的个数

        (3)假设函数(hypothesis function):是指在有监督学习中,为了拟合样本函数,而假设的函数。

        (4)损失函数(loss function): 为了评估模型的好坏,一般用损失函数来度量模型的好坏,损失函数越小说明数据拟合 程度越高,找到损失函数的最小值,也就确定了最优参数。在线性回归中,损失函数是指残差平方和。

    4.3 梯度下降法算法详解:

梯度下降法算法有代数法和向量法(矩阵法)。代数法容易理解,但是运算麻烦。向量法运算简洁

        数学证明过程请看梯度下降法证明过程

        算法过程可以分为以下几个步骤:

            (1)确定假设函数和损失函数以及损失函数的梯度(∂J(θ)/∂θ)

            (2)根据步长乘以梯度确定损失函数下降的距离:α(∂J(θ)/∂θ)

            (3)比较参数θ里边的每个值是否均小于ε,如果小于ε ,则θ为最终结果

            (4)如果参数 θ里边的每个值并不是均小于ε,则需要对θ进行迭代次处理 :θ=θ−α(∂J(θ)/∂θ)

5. 梯度下降法具体分类

    5.1 批量梯度下降法

        批量梯度下降法是指在求梯度的时候用全样本求解

    5.2 随机梯度下降法

        随机梯度下降法是指在求解梯度时候用一个随机样本进行求解

    5.3 小批量梯度下降法

        小批量梯度下降法是指在求解梯度时候随机取多个样本进行求解,它是介于批量梯度下降法和随机梯度下降法的折中

6. 梯度下降法和其他无约束条件优化的比较

    梯度下降法是需要自己设定步长,需要迭代求解,而最小二乘法不需要迭代,而是直接计算解析。

    如果数据量比较小,则用最小二乘法可以更加高效,如果数据量庞大,则用梯度下降法更加有优势

    梯度下降法和牛顿法/拟牛顿法相比,两者都是迭代求解,不过梯度下降法是梯度求解,而牛顿法/拟牛顿法是用二阶的海森矩阵的逆矩阵或伪逆矩阵求解。相对而言,使用牛顿法/拟牛顿法收敛更快。但是每次迭代的时间比梯度下降法长

    


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值