LLM - 神经网络的训练过程

1. 对于回归问题,用损失函数来计算预测值和真实值的差异,一种常用的公式是如下图所示(Mean Square Error),如果损失函数的值越小说明神经网络学习越准确,所以神经网络训练目标是减小损失函数的值,

    

2. 对于分类问题,损失函数和上面不一样,这里使用交叉熵作为损失函数,神经网络训练目标是最小化交叉熵。

3. 最小化损失函数的方法(梯度下降法),即将优化步骤拆分成若干个步骤,每次对损失函数的值做小幅缩小,具体过程是对损失函数求该模型参数的梯度,每次迭代对向着梯度变化最快的方向前进一步(这样就可以计算出模型参数,并在此轮迭代后更新模型参数),这样就可以使损失函数值降低一点,每次前进一步的步长称为学习率。

4. 回归问题的梯度求解过程:输出是标量F(x), 输入是[x1,x2,...xn], 对输入求偏导,得到的向量是梯度。

    

     

5. 分类问题的梯度求解过程:输出是向量F(X),有多个输出,让每个输出对输入变量X[x1,x2,..xn]求微分,得到的jacobian矩阵是梯度

6. 求微分时的链式法则:

7.求微分实例:

8.在实际深度学习场景中,对每个参数梯度计算是通过反向传播算法实现的。

9.单个节点梯度的计算过程: downstream_gradient = upstream_gradient * local_gradient 这个公式在实际写算子时会用到。

相关推荐

  1. pytorch LLM训练过程精度调试实践

    2024-07-09 20:28:01       19 阅读
  2. 神经网络训练中batch作用

    2024-07-09 20:28:01       27 阅读
  3. 通过神经网络模拟人类大脑学习过程

    2024-07-09 20:28:01       49 阅读
  4. 完美异步处理数据训练神经网络框架

    2024-07-09 20:28:01       49 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-07-09 20:28:01       52 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-07-09 20:28:01       54 阅读
  3. 在Django里面运行非项目文件

    2024-07-09 20:28:01       45 阅读
  4. Python语言-面向对象

    2024-07-09 20:28:01       55 阅读

热门阅读

  1. PLSQL Day5

    2024-07-09 20:28:01       25 阅读
  2. 使用nodejs输出著作权申请所需的word版源码

    2024-07-09 20:28:01       23 阅读
  3. Linux Conda 入门案例教程

    2024-07-09 20:28:01       22 阅读
  4. HTTP Client

    2024-07-09 20:28:01       30 阅读
  5. `mysql`常用的的CIL命令行工具

    2024-07-09 20:28:01       45 阅读
  6. 在 Windows PowerShell 中模拟 Unix/Linux 的 touch 命令

    2024-07-09 20:28:01       21 阅读
  7. LVS+keepalived群集

    2024-07-09 20:28:01       26 阅读
  8. qt udp通讯应用举例

    2024-07-09 20:28:01       24 阅读