假设f(x)f(x)f(x)具有一阶连续偏导,求解无约束最优化问题:minx∈Rnf(x)min_{x\in R^{n}}f(x)minx∈Rnf(x)则可以利用梯度下降法。凸函数运用梯度下降法可以得到全局最优解,否则有可能是局部最优。
梯度下降法是一种迭代算法。选取适当的处置x(0)x^{(0)}x(0),不断迭代,更新xxx的值对目标函数进行极小化,直到收敛。
负梯度方向是使函数下降最快的方向,故以负梯度方向更新xxx的值,从而不断达到极小化函数的目的。
f(x)−f(x0)≈▽f(x)(x−x0)f(x)- f(x_0)\approx\triangledown f(x)(x-x_0)f(x)−f(x0)≈▽f(x)(x−x0)
xxx是更靠近极小值得点,我们希望f(x)−f(x0)<0f(x)-f(x_0)<0f(x)−f(x0)<0,所以▽f(x)<0\triangledown f(x)<0▽f(x)<0,则xxx以负梯度方向移动。
设更新得步长为η\etaη,则x:x−η▽f(x)x: x- \eta \triangledown f(x)x:x−η▽f(x)。
算法:
输入:目标函数f(x)f(x)f(x),梯度函数▽f(x)\triangledown f(x)▽f(x),计算精度ϵ\epsilonϵ;
输出:f(x)f(x)f(x)的极小点。