目录
1.1、均方误差代价函数(Mean squared error)
五、用于线性回归的梯度下降(Gradient Descent for Linear Regression)
一、定义
线性回归模型(Linear Regression Model):线性回归模型是用于建立变量之间线性关系的一种经典的机器学习模型。它假设因变量(输出变量)和自变量(输入变量)之间存在线性关系,并用一条直线(或超平面)来近似表达这种关系。
线性回归模型的目标是根据给定的自变量的值预测因变量的值。模型可以用简单线性回归或多元线性回归等形式表示,其中简单线性回归只包含一个自变量,多元线性回归包含多个自变量。在模型训练过程中,通过最小化残差来优化模型,使模型能够最好地拟合实际数据。线性回归模型广泛应用于生物医学、金融、工业、社会科学等领域。
二、数据集
在线性回归模型中,数据集是指用来进行模型训练和测试的数据集合。数据集可以分为训练集和测试集两部分。
在模型训练中,首先需要将数据集划分为训练集和测试集。通常采用的方法是随机抽取一定比例的数据作为测试集,剩余数据作为训练集。然后,使用训练集数据来训练模型,评估模型性能时使用测试集数据来测试模型的预测能力。
1、训练集
训练集是用来训练模型的数据集合,通常占总数据集的大部分。训练集的作用是让模型学习数据的规律和趋势,从而建立起模型的预测能力。
2、测试集
测试集则是用来评估模型预测能力的数据集合,一般占总数据集的少部分。测试集的作用是检验训练出的模型对新数据的预测能力,从而评估模型的性能和泛化能力。
三、代价函数(Cost Function)
1、代价函数公式
1.1、均方误差代价函数(Mean squared error)
目的是最小化代价函数J,以得到参数θ。
m:训练示例数量
ŷ:预测值
y:标准值
i:样本序号
θ:线性回归模型参数
h(θ):用参数θ和x预测出来的y值
notes:
平方可以消除正负并且更好避开较大误差
额外除以2是为了使后边的计算更加整洁,不影响成本函数有效性
四、梯度下降(Gradient Descent)
1、定义
梯度下降是一种优化算法,用于最小化误差函数(也称为代价函数或损失函数)。该方法基于函数的梯度(或导数)的反方向进行迭代更新,以找到误差函数的最小值。
梯度下降在机器学习中被广泛应用,用于训练模型参数,例如线性回归,逻辑回归和神经网络。该算法通常需要设置学习率和迭代次数。较大的学习率可能会导致算法无法收敛,而较小的学习率则需要更多的迭代次数才能达到最小值。
梯度下降中的梯度指的是代价函数对各个参数的偏导数,偏导数的方向决定了在学习过程中参数下降的方向。
学习率(通常使用α表示)决定了每步变化的步长。
2、算法描述
3、算法种类
3.1 批量梯度下降(BDG)
3.2 随机梯度下降(SDG)
3.3 小批量梯度下降(Mini-Batch)
3.4 在线梯度下降(Online GD)
3.5 各种梯度下降算法性能比较
4、梯度下降的实现
参数优化:
notes:
其中等号"="为赋值运算符(Assignment)
为学习率(Learning Rate),通常介于0到1,用于控制参数更新的步幅大小
成本函数对w的偏导数,含义是梯度在参数w上下降的方向
成本函数对b的偏导数,含义是梯度在参数b上下降的方向
参数更新时,需要在同一步所有参数更新完毕之后,再进入下一步更新
5、学习率特性
当α 太小时,可能会需要多次迭代才能收敛,当α 太大时,可能导致无法收敛或者会发散,只有选择合适的α 时,才能更好的收敛。
学习率固定时,梯度下降过程中,导数会逐渐减小,则更新的步长也会逐渐减小。
即使学习率固定,在梯度下降的过程中,若参数已经到达了局部最小值,此时导数为零,进一步的梯度下降步骤将不会改变参数的值。
五、用于线性回归的梯度下降(Gradient Descent for Linear Regression)
线性回归模型(Linear Regression Model)
代价函数(Cost Function)
梯度下降算法(Gradient Descent Algorithm)
repeat until convergence {
}
使用线性回归的平方误差代价函数时,代价函数不会有多个局部最小值。代价函数是一个碗形(Bowl Shape),除了单个全局最小值之外,不能含有任何局部最小值。选择适当的学习率,总会收敛到全局最小值。
拟合过程: