梯度下降法(Gradient Descent)是一种常用的优化算法,用于寻找目标函数(通常是损失函数)的最小值。梯度下降法通过沿着目标函数梯度的负方向迭代更新参数,以逐渐接近最小值点。其主要思想是:从一个初始点开始,计算该点的梯度,然后沿着梯度负方向移动一定的距离(由学习率决定),并不断重复这个过程,直到满足某个收敛条件(如梯度变化小于某个阈值或迭代次数达到上限)。
以下是使用Python实现梯度下降法的简单示例代码:
import numpy as np
def gradient_descent(f, df, x0, learning_rate, max_iter, tol=1e-6):