梯度下降推导

    本文记录的目的是方便自己学习和复习,有误之处请谅解,欢迎指出。

    梯度下降算法是机器学习、深度学习中更新模型参数最常用的算法,从公式上看,比较简单,只需要设定更新步长和计算一阶导数即可,但十分好用,其具体公式为:

梯度下降
一阶导

    梯度下降的任务是根据给定的训练数据来学习分布,具体分布情况主要通过更新权重参数w来表示。为了使权重参数更好的表达真实分布,需要让损失函数值不断变小,即让真实标签与预测标签差距最小。

梯度下降推导

    大学高数中,都学过泰勒展开式,它是对某可导函数通过各阶导数的组合近似表示该邻域的函数值的数学表达式。表达式如下:

泰勒展开

    具体不做介绍,根据泰勒余项趋近0,可以舍弃,将上式化简为:

    有了泰勒展开,带入损失函数得到:

    其中,w_{t+1} -w_{t}为参数向量的前进方向,结果也为参数向量,设单位向量\bar{v} ,标量\eta ,得:

    替换原式,向左移动得到:

    我们的目标就是让损失函数的值随着模型参数的更新不断变小,即:

    两向量的点积可以用模和夹角带代替,标量\eta 不变:

    为让上式最小,a=-\pi ,即认为两向量方向相反,乘积最小,梯度下降最快,v=-\Delta L(w_{t} ) ;又由于\vec{v} 是单位向量,所以:

    至此,解出\vec{v} 。带入之前的参数更新公式:

    由于\eta 和模都为标量,化简为:

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容