最优化的入门
从简单问题出发
1.1 函数最小值
求
的极小值?
理解梯度小降法的三个层次:
了解层次
- 二次函数从某点出发,沿着梯度方向下降
- 从二次函数求最小值,数学公式的层次
初级入门层次
- 从零代码求二次函数最小值
- 简单的数学证明
入门层次
- 推广到机器学习
- 推广到一般的梯度下降法
min
二次函数
Gradient
一种直观理解,函数沿着切线方向下降?(不是)

w ←w-α*J'(w)
初始值:w0=1 α=0.01(学习速率)

J'(w)=2(w+1)

x=-1处为函数最小值,停止更新
若走过对称轴-1,自变量更新会往回走(接近于最小值的方向-1点)

初级入门层次:
# 定义函数
def J(w):
return w**2 + 2*w + 1
# 函数导数
def J_prime(w):
return 2*w + 2
# 梯度下降法,就是沿着梯度方向更新参数
# w ← w - α * J_prime(w)
# epoch=1000,alpha=0.01
epoch = 100
alpha = 0.1
w =

本文从简单的函数最小值问题出发,逐步深入介绍梯度下降法的三个层次:了解层次、初级入门层次和入门层次。通过数学公式和代码实现,详细解释了一维及多维梯度下降法,并通过动量梯度下降法的例子展示了其在机器学习中的应用,最终收敛到目标函数的最小值附近。
最低0.47元/天 解锁文章
1307

被折叠的 条评论
为什么被折叠?



