机器学习之梯度下降法直观理解

形象化举例,由上图所示,假如最开始,我们在一座大山上的某处位置,因为到处都是陌生的不知道下山的路,所以只能摸索着根据直觉,走一步算一步。在此过程中,每走到一个位置的时候,都会求解当前位置的梯度,沿着梯度的负方向,也就是当前最陡峭的位置向下走一步,然后继续求解当前位置梯度,向这一步所在位置沿着最陡峭最易下山的位置走一步。不断循环求梯度,就这样一步步地走下去,一直走到我们觉得已经到了山脚。

当然这样走下去,有可能我们不能走到山脚,而是到了某一个局部的山势低处。由此,从上面的解释可以看出,梯度下降不一定能够找到全局的最优解,有可能是一个局部的最优解。当然,如果损失函数是凸函数,梯度下降法得到的解就一定是全局最优解。

核心思想归纳:

  1. 初始化参数,随机选取取值范围内的任意数;
  2. 迭代操作:
    a) 计算当前梯度;
    b) 修改新的变量;
    c) 计算朝最陡的下坡方向走一步;
    d) 判断是否需要终止,如否,返回a)
  3. 得到全局最优解或者接近全局最优解。
相关推荐
jiayong237 分钟前
知识库概念与核心价值01
java·人工智能·spring·知识库
雨轩剑7 分钟前
做 AI 功能不难,难的是把 App 发布上架
人工智能·开源软件
智者知已应修善业11 分钟前
【求等差数列个数/无序获取最大最小次大次小】2024-3-8
c语言·c++·经验分享·笔记·算法
LYFlied28 分钟前
【每日算法】LeetCode 416. 分割等和子集(动态规划)
数据结构·算法·leetcode·职场和发展·动态规划
Tezign_space38 分钟前
AI智能体赋能实践:从提示工程到上下文工程的架构演进
人工智能·架构·agentic ai·上下文工程·大模型智能体·长程任务·模型注意力预算
多米Domi0111 小时前
0x3f 第19天 javase黑马81-87 ,三更1-23 hot100子串
python·算法·leetcode·散列表
..过云雨1 小时前
17-2.【Linux系统编程】线程同步详解 - 条件变量的理解及应用
linux·c++·人工智能·后端
历程里程碑1 小时前
滑动窗口最大值:单调队列高效解法
数据结构·算法·leetcode
kalvin_y_liu1 小时前
【2026年经济周期关键节点案例分析】
人工智能
Wokoo71 小时前
开发者AI大模型学习与接入指南
java·人工智能·学习·架构