在线性回归中,通常使用均方误差作为损失函数。
但你知道为什么用它吗?
要知道,很多函数都能衡量预测值和真实值之间的不同,在所有候选者中,均方误差有什么特殊之处吗?
据我所知,很多人都会回答:
1.均方误差是可微的,所以才作为损失函数。->错
2.与绝对误差相比,均方误差对大的误差惩罚更多 ->错
很遗憾,上述回答都是错的。
也许从概率视角出发,可以帮助我们更好理解,为什么均方误差更合适。
在线性回归中,通过输入X预测目标变量y。
作为误差项,捕获数据点i的随机噪声。
根据中心极限定理,假设噪声服从均值为0的高斯分布。
误差项的概率密度函数可以写成如下形式:
带入线性回归公式中的误差项:
上述公式表明,在某个参数下,观察到数据点i的似然。
接下来,我们可以定义似然函数:
这意味着通过改变𝜃,我们可以拟合一个分布到观测数据并量化观察到它的可能性。
我们进一步将其写成各个数据点的乘积,因为我们假设所有观测是独立的。
因此,得到:
由于对数函数是单调的,我们使用对数似然并对其进行最大化。这被称为最大似然估计(MLE)。
简化后,得到:
重申一下,目标是找到能够最大化上述表达式的𝜃。但是,第一个项与𝜃无关。
因此,最大化上述表达式等价于最小化第二个项。
如果你仔细观察,这正是平方误差。
因此,你可以通过最小化平方误差来最大化对数似然。这就是在线性回归中使用最小二乘法的起源。
可以看到,在线性回归中使用平方误差作为损失函数是有明确的证明和推理的。机器学习中的一切都不是凭空产生的。