梯度下降法介绍
2023-3-9
| 2024-3-4
字数 637阅读时长 2 分钟
type
Post
status
Published
date
Mar 9, 2023
slug
summary
简单介绍梯度下降的原理
tags
机器学习
Deep Learning
category
Documents
icon
password

1. 梯度下降

梯度下降法用来计算函数的最小值.

1.1. 二维函数梯度下降

比如需要计算函数 的最小值, 如果不从经验上获知其最小值, 如何通过迭代来计算呢?
notion image
  1. 首先需要设置一个起点 , 假设 .
    1. 此时函数的梯度如下
      由于这个梯度是一个一维向量, 并且在 轴的向量指向函数增长最快的方向, 求梯度下降的目的是找到函数增长最慢的方向, 也就是反方向 .
      另外 (Nabla算子) 是向量微分算子, 定义为 .
      notion image
  1. 这时候将当前值 , 将其看做向量, 与梯度的反方向相加, 就可以获得下一个值 的位置.
      • 这里的 表示为步长 (学习率), 用来控制采样点移动距离. 步长的设定是凭借经验的, 过小收敛较慢, 过大会无法收敛. 这里设定 .
      notion image
      此时的采样点来到了 的位置.
      notion image
  1. 开始迭代
    1. 迭代方法同上
      notion image

1.2. 三维函数梯度下降

找到函数 的最小值, 函数三维图和等高线如下.
notion image
  1. 设置初始点 , 此时梯度为:
    1. 设置 , 可以计算出下一点 的向量
      1. 开始迭代
        1. 方法同上
          notion image

      1.3. 深度学习中的梯度下降

      模型训练过程中, 需要计算的是损失函数的最小值
      而在深度学习的优化算法中不同的梯度下降算法如下图所示
      notion image
      • 拿随机梯度下降算法举例, 是每个样本的损失函数, 表示一个输入为 和 初始参数 的函数, 表示 GT 值.
        • 其中的梯度计算是先计算样本数据的平均损失, 但是损失函数中有 作为优化参数, 也就是说函数变为了以 为未知数的函数, 对 求偏导, 之后带入 获得梯度参数 .
          之后更新 .
       
    2. 机器学习
    3. Deep Learning
    4. 威联通QNAP Nas 搭建Gitea代码托管平台火绒阻止 windows 更新
      Loading...