【mechine learning-九-梯度下降】

梯度下降

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

更加通用的梯度下降算法

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

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

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

算法步骤

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

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

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

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

相关推荐
aigcapi13 小时前
RAG 系统的黑盒测试:从算法对齐视角解析 GEO 优化的技术指标体系
大数据·人工智能·算法
上进小菜猪14 小时前
基于深度学习的河道垃圾检测系统设计(YOLOv8)
人工智能
上天夭14 小时前
模型训练篇
人工智能·深度学习·机器学习
小徐Chao努力15 小时前
【Langchain4j-Java AI开发】09-Agent智能体工作流
java·开发语言·人工智能
Blossom.11815 小时前
AI编译器实战:从零手写算子融合与自动调度系统
人工智能·python·深度学习·机器学习·flask·transformer·tornado
Coder_Boy_15 小时前
SpringAI与LangChain4j的智能应用-(理论篇2)
人工智能·spring boot·langchain·springai
却道天凉_好个秋15 小时前
OpenCV(四十八):图像查找
人工智能·opencv·计算机视觉
Coder_Boy_15 小时前
SpringAI与LangChain4j的智能应用-(理论篇3)
java·人工智能·spring boot·langchain
GetcharZp15 小时前
工地“火眼金睛”!手把手带你用 YOLO11 实现安全帽佩戴检测
人工智能·计算机视觉
Codebee15 小时前
Ooder A2UI架构白皮书
人工智能·响应式编程