随机梯度下降和批量梯度下降的 Python 实现
梯度下降是机器学习中最常用的优化算法之一,它可以用来寻找模型参数的最优解。梯度下降算法分为批量梯度下降和随机梯度下降两种,本文将介绍这两种算法的 Python 实现。
批量梯度下降
批量梯度下降是指在每一轮迭代中,使用全部训练数据来计算梯度。这种方法可以保证在迭代到最优解时,达到全局最优。但是,当数据集很大时,每一次迭代都需要计算所有数据的梯度,计算量非常大。
下面是批量梯度下降的 Python 实现:
import numpy as np
def batch_gradient_descent(X, y, alpha=0.01