3.2日-线性模型,基础优化方法,线性回归从零开始实现
- 1线性模型
- 衡量预估质量
- 训练数据
- 总结
- 2基础优化方法
- 3 线性回归从零开始实现
1线性模型
衡量预估质量
训练数据
总结
2基础优化方法
梯度下降是一种优化算法,常用于机器学习和深度学习中,用于最小化或最大化函数。在机器学习中,梯度下降通常用于最小化损失函数,以调整模型参数使其更好地拟合训练数据。
梯度: 函数的梯度是该函数在某一点上的导数,表示函数在该点上的变化率。对于多变量函数,梯度是一个向量,指向函数在该点上变化最快的方向。
目标函数: 在机器学习中,我们通常有一个目标函数(也称为损失函数),它是模型参数的函数,描述了模型预测与实际观测之间的差距。
参数调整: 我们希望通过调整模型的参数来最小化目标函数。梯度下降的思想是沿着目标函数下降最快的方向进行参数调整。
度下降的步骤如下:
初始化参数: 随机选择初始参数值。
计算梯度: 计算目标函数对于当前参数的梯度。
更新参数: 根据梯度的方向和大小来更新参数。通常使用学习率(learning rate)来控制更新步长。学习率不能太长也不能太小。
重复: 重复步骤2和步骤3,直到满足停止条件,如达到最大迭代次数或梯度足够小。
梯度下降有不同的变种,包括批量梯度下降(Batch Gradient Descent)、随机梯度下降(Stochastic Gradient Descent)和小批量梯度下降(Mini-batch Gradient Descent)等。这些变种主要区别在于梯度的计算方式和参数更新的时机。
梯度下降是许多优化算法的基础,它在机器学习领域得到广泛应用,帮助模型学习适应复杂的数据模式。
小批量随机梯度下降(Mini-batch Stochastic Gradient Descent,简称Mini-batch SGD)是梯度下降的一种变体,结合了批量梯度下降和随机梯度下降的优点。在训练过程中,Mini-batch SGD不是使用整个训练数据集的梯度(批量梯度下降),也不是仅使用一个样本的梯度(随机梯度下降),而是使用一个小批量的样本的梯度。
计算效率: 相较于批量梯度下降,Mini-batch SGD在计算梯度时不需要遍历整个数据集,因此更加高效。与随机梯度下降相比,使用小批量可以更好地利用硬件并行性,提高计算效率。
更稳定的更新: 相较于随机梯度下降,Mini-batch SGD每次更新时使用多个样本的平均梯度,能够减小更新的方差,使得参数的更新更为稳定。
泛化性能: 由于小批量中包含了一定数量的样本,因此Mini-batch SGD的参数更新更具有代表性,有助于提高模型的泛化性能
3 线性回归从零开始实现
简洁实现: