**梯度下降法**（英語：）是一个一阶最优化算法，通常也称为**最陡下降法**，但是不該與近似積分的**最陡下降法**（英語：）混淆。
要使用梯度下降法找到一个函数的局部极小值，必须向函数上当前点对应梯度（或者是近似梯度）的*反方向*的规定步长距离点进行迭代搜索。如果相反地向梯度*正方向*迭代进行搜索，则会接近函数的局部极大值点；这个过程则被称为**梯度上升法**。

描述
--

梯度下降法的描述。
梯度下降方法基于以下的观察：如果实值函数{\displaystyle F(\mathbf {x} )}在点{\displaystyle \mathbf {a} }处可微且有定义，那么函数{\displaystyle F(\mathbf {x} )}在{\displaystyle \mathbf {a} }点沿着梯度相反的方向 {\displaystyle -\nabla F(\mathbf {a} )} 下降最多。

因而，如果

{\displaystyle \mathbf {b} =\mathbf {a} -\gamma \nabla F(\mathbf {a} )}
对于一個足够小数值{\displaystyle \gamma >0}時成立，那么{\displaystyle F(\mathbf {a} )\geq F(\mathbf {b} )}。

考虑到这一点，我们可以从函数{\displaystyle F}的局部极小值的初始估计{\displaystyle \mathbf {x} \_{0}}出发，并考虑如下序列
{\displaystyle \mathbf {x} \_{0},\mathbf {x} \_{1},\mathbf {x} \_{2},\dots }使得

{\displaystyle \mathbf {x} \_{n+1}=\mathbf {x} \_{n}-\gamma \_{n}\nabla F(\mathbf {x} \_{n}),\ n\geq 0}。
因此可得到

{\displaystyle F(\mathbf {x} \_{0})\geq F(\mathbf {x} \_{1})\geq F(\mathbf {x} \_{2})\geq \cdots ,}
如果顺利的话序列{\displaystyle (\mathbf {x} \_{n})}收敛到期望的局部极小值。注意每次迭代*步长*{\displaystyle \gamma }可以改变。

右侧的图片示例了这一过程，这里假设{\displaystyle F}定义在平面上，并且函数图像是一个碗形。蓝色的曲线是等高线（水平集），即函数{\displaystyle F}为常数的集合构成的曲线。红色的箭头指向该点梯度的反方向。（一点处的梯度方向与通过该点的等高线垂直）。沿着梯度*下降*方向，将最终到达碗底，即函数{\displaystyle F}局部極小值的点。

### 例子

梯度下降法处理一些复杂的非线性函数会出现问题，例如Rosenbrock函數

{\displaystyle f(x,y)=(1-x)^{2}+100(y-x^{2})^{2}.\quad }
其最小值在{\displaystyle (x,y)=(1,1)}处，数值为{\displaystyle f(x,y)=0}。但是此函数具有狭窄弯曲的山谷，最小值{\displaystyle (x,y)=(1,1)}就在这些山谷之中，并且谷底很平。优化过程是之字形的向极小值点靠近，速度非常缓慢。

下面这个例子也鲜明的示例了"之字"的**上升**（非下降），这个例子用**梯度上升**（非梯度下降）法求{\displaystyle F(x,y)=\sin \left({\frac {1}{2}}x^{2}-{\frac {1}{4}}y^{2}+3\right)\cos(2x+1-e^{y})}的**局部极大值**（非局部极小值）。

The gradient descent algorithm in action.（1: contour）The gradient descent algorithm in action.（2: surface）

The gradient descent algorithm in action.（1: contour）The gradient descent algorithm in action.（2: surface）


### 缺点

梯度下降法的缺點包括：

* 靠近局部極小值时速度减慢。
* 直線搜索可能會產生一些問題。
* 可能會"之字型"地下降。

上述例子也已体现出了这些缺点。

参阅
--

 

|  |  |
| --- | --- |
| * 共轭梯度法
* 随机梯度下降法（英语：）
* 最优化

  | * 线搜索
* 反向傳播算法
* 量子退火

  |

参考文献
----

1. ↑  David W. A. Bourne.. （原始内容存档于2009年2月10日） （英语）.

* Mordecai Avriel (2003). *Nonlinear Programming: Analysis and Methods.* Dover Publishing. ISBN 0-486-43227-0.
* Jan A. Snyman (2005). *Practical Mathematical Optimization: An Introduction to Basic Optimization Theory and Classical and New Gradient-Based Algorithms.* Springer Publishing. ISBN 0-387-24348-8

外部链接
----

* （英文）Interactive examples of gradient descent and some step size selection methods （页面存档备份，存于）
* （英文）Using gradient descent in C++, Boost, Ublas for linear regression （页面存档备份，存于）

|  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |
| --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- |
| 

| * 
* 论
* 编
可微分计算 |
| --- |
|  |
| 概论 | 
* 可微分编程
* 自動微分
* 张量微积分（英语：）
* 信息几何
* 统计流形
* 神经形态工程（英语：）
* 模式识别
* 运算学习理论（英语：）
* 归纳偏置

 |
|  |
| 概念 | 
* 梯度下降
	+ SGD（英语：）
* 聚类
* 回归
	+
* 幻觉
* 对抗（英语：）
* 注意力
* 卷积
* 損失函數
* 反向传播
* + softmax
	+ sigmoid
	+ ReLU
* 正则化
* 
* 扩散（英语：）
* 自回归

 |
|  |
| 应用 | 
* 机器学习
* 人工神经网络
	+ 深度学习
* 科学计算
* 人工智能
* 語言模型
	+ 大型语言模型

 |
|  |
| 硬件 | 
* TPU
* VPU
* IPU（英语：）
* 憶阻器
* SpiNNaker（英语：）

 |
|  |
| 软件库 | 
* Theano
* TensorFlow
	+ Keras
* PyTorch
* JAX
* Flux.jl（英语：）

 |
|  |
| 实现 | 

|  |  |
| --- | --- |
| 视觉·语音 | 
* AlexNet
* WaveNet
* 人像合成
* 手寫
* OCR
* 语音合成
* 
* 
* AlphaFold
* DALL-E
* Midjourney
* Stable Diffusion
* Whisper（英语：）

 |
|  |
| 自然语言 | 
* Word2vec
* Seq2seq
* BERT
* LaMDA
	+ Bard
* NMT
* 辩手项目（英语：）
* 沃森
* GPT
	+ GPT-1
	+ GPT-2
	+ GPT-3
	+ GPT-4
* GPT-J（英语：）
* ChatGPT
* 文心一言
* Chinchilla AI（英语：）
* PaLM（英语：）
* BLOOM（英语：）
* LLaMA

 |
|  |
| 决策 | 
* AlphaGo
* Q学习
* SARSA
* OpenAI Five（英语：）
* 自动驾驶
* MuZero
* 行动选择（英语：）
	+ Auto-GPT
* 机器人控制（英语：）

 |

 |
|  |
| 人物 | 
* 约书亚·本希奥
* 杰弗里·辛顿
* 杨立昆
* 艾力克斯·格雷夫斯
* 伊恩·古德费洛
* 吴恩达
* 杰米斯·哈萨比斯
* 大衛·席爾瓦
* 李飛飛
* 于尔根·施密德胡伯
* 伊爾亞·蘇茨克維

 |
|  |
| 组织 | 
* Anthropic
* DeepMind
* EleutherAI（英语：）
* Google Brain
* Meta AI（英语：）
* Mila（英语：）
* MIT CSAIL
* OpenAI
* Hugging Face

 |
|  |
| 架构 | 
* 多层感知器（MLP）
* 循环神经网络（RNN）
* 長短期記憶（LSTM）
* 门控循环单元（英语：）（GRU）
* 卷积神经网络（CNN）
* 残差神经网络（ResNet）
* 变换器
* 自编码器
* 变分自编码器（VAE）
* 生成对抗网络（GAN）
* 图神经网络（英语：）（GNN）
* 回响状态网络（英语：）（ESN）
* 神经图灵机（英语：）（NTM）
* 可微分神经计算机（英语：）（DNC）

 |
|  |
| 
* 主题 主题
	+ 计算机编程
	+ 技术
* 分类 分类
	+ 人工神经网络
	+ 机器学习

 |

 |