【mechine learning-九-梯度下降】

梯度下降

上一节讲过,随机的寻找w和b使损失最小不是一种合适的方法,梯度下降算法就是解决解决这个问题的,它不仅可以用于线性回归,还可以用于神经网络等深度学习算法,是目前的通用性算法。

更加通用的梯度下降算法

之前二维关于w和b的损失函数(无特殊说明,均以均方误差成本函数为例)如下:,

但是在更多的例子里,或者说更加复杂的神经网络里面,w是很多个,目前很多模型都是超过几千亿参数:

已经无法使用随机法来解决最小化J这个损失,必须用更加通用的梯度下降算法来解决最小化损失的问题。

算法步骤

假设某一个模型的成本函数也就是Loss fuction如上(不是线性回归也不是均方误差):

如何从这里面找到J的最小值呢?方法如下:

  1. 设定w和b初始值。如图中左边这条线的起点。
  2. 从现在的位置旋转360度,找到J下降最快的点,向下走一步。(这意味着你走的是最快下山的路)
  3. 以下降后的位置,重复上述步骤,直到发现走到了一个局部最小的山谷底,也就是J的具备最小值。

梯度下降有意思的一件事情,假设随机选择的起始点是另外一个位置,比如右面这条线的起始点,那么找到的就是右边这个局部的最低点,这两个是完全不同的最低点。至于具体怎么实现算法留在下一节。

相关推荐
moshuying2 小时前
别让AI焦虑,偷走你本该有的底气
前端·人工智能
董董灿是个攻城狮2 小时前
零基础带你用 AI 搞定命令行
人工智能
喝拿铁写前端4 小时前
Dify 构建 FE 工作流:前端团队可复用 AI 工作流实战
前端·人工智能
阿里云大数据AI技术5 小时前
阿里云 EMR Serverless Spark + DataWorks 技术实践:引领企业 Data+AI 一体化转型
人工智能
billhan20165 小时前
MCP 深入理解:协议原理与自定义开发
人工智能
Jahzo5 小时前
openclaw桌面端体验--ClawX
人工智能·github
billhan20165 小时前
Agent 开发全流程:从概念到生产
人工智能
threerocks5 小时前
过了个年,AI 圈变天了?但没人告诉你为什么
人工智能
threerocks6 小时前
Anthropic CEO Dario Amodei:海啸已在地平线上,但没人在看
人工智能