损失函数是一个非负实数函数,用来量化模型预测和真实标签之间的差异。
其中,平方损失函数经常用在预测标签y为实数值的任务中,一般不适用于分类问题。
平方损失函数公式,y为真实值,\bar{y}为预测值:
J(\theta)=\frac{1}{2}(y-\bar{y})^2 (1)
二、为什么回归问题中损失函数可以用平方形式?(平方损失函数的由来)
基础准备:
正态分布 X\sim N(\mu ,\sigma ^{2}) ,连续型随机变量X的概率密度为:
f(x)=\frac{1}{\sqrt{2\pi \sigma }} e^{-\frac{(x-\mu )^{2}}{2 \sigma^{2}}} (2)
设总体X的概率密度为f(x,\theta ),其中\theta为未知参数,(x_{1},x_{2},...,x_{n})是一次试验中所获得的样本观察值,则似然函数为
L(\theta ,x_{1},x_{2},\cdot\cdot\cdot ,x_{n})=\prod_{n}^{j=1}f(x_{j},\theta ) (3)
证明:
设y为真实值,\bar{y}为预测值,x为输入,\epsilon为误差
则:
\left\{\begin{matrix} y^{(i)}-\bar{y^{(i)}}=\epsilon ^{(i)}\\ y^{(i)} = \theta^Tx^{(i)} \end{matrix}\right.
整理可得:
y^{(i)} = \theta^Tx^{(i)} + \epsilon^{(i)}
假设\epsilon^{(i)} \thicksim \mathcal{N}(0,\sigma^2),分布是均值为0,方差为\sigma^2的正态分布,那么根据公式(2)可得,的概率密度为:
f(\epsilon^{(i)})=\frac{1}{\sqrt{2\pi}\sigma}\mathrm{exp}\biggl(-\frac{(\epsilon^{(i)})^2}{2\sigma^2}\biggl)
整理后等价于:
f(y^{(i)}|x^{(i)};\theta)=\frac{1}{\sqrt{2\pi}\sigma}\mathrm{exp}\biggl(-\frac{(y^{(i)}-\theta^Tx^{(i)})^2}{2\sigma^2}\bigg)
根据似然函数的定义得:
\begin{align*} L(\theta) &= \prod_{i=1}^nf(y^{(i)}|x^{(i)};\theta) \\ &= \prod_{i=1}^n\frac{1}{\sqrt{2\pi}\sigma}\mathrm{exp}\biggl(-\frac{(y^{(i)}-\theta^Tx^{(i)})^2}{2\sigma^2}\biggr) \end{align*}
两边同取log,得:
\begin{align*} \mathrm{log}L(\theta) &=\mathrm{log}\prod_{i=1}^n\frac{1}{\sqrt{2\pi}\sigma}\mathrm{exp}\bigg(-\frac{(y^{(i)}-\theta^Tx^{(i)})^2}{2\sigma^2}\bigg) \\&= \sum_{i=1}^n\mathrm{log}\frac{1}{\sqrt{2\pi}\sigma}\mathrm{exp}\bigg(-\frac{(y^{(i)}-\theta^Tx^{(i)})^2}{2\sigma^2}\bigg) \\ &=-n\mathrm{log}{\sqrt{2\pi}\sigma}-\frac{1}{\sigma^2}\cdot\frac{1}{2}\sum_{i=1}^n(y^{(i)}-\theta^Tx^{(i)})^2\end{align*}
为了让似然函数尽可能打,需要让 \frac{1}{2}\sum_{i=1}^n(y^{(i)}-\theta^Tx^{(i)})^2尽可能小,(其余部分都为定值);
也就等价于\frac{1}{2}\cdot(y-\bar{y})^2最小化。
我们把这个函数称为损失函数J(\theta ),在训练模型时,通过训练来找到使J(\theta )最小的\theta值。