0%

ML入门-损失和正则的概率解释

结论:最小 L2、L1 损失均等价于极大似然估计;带正则的回归等价于贝叶斯估计。


1. 损失函数的概率解释

1.1 L2损失与极大似然估计

对采用 L2 损失的模型,目标函数为:

$$
J(W) = RSS(W) = \sum^N_{i = 1} L(y_i, \hat{y_i}) = \sum^N_{i = 1} L(y_i, f(x_i)) = \sum^N_{i = 1} (y_i - f(x_i))^2
$$

在回归任务重,令模型中的真实值 $y_i$ 和预测值 $\hat{y_i}$ 之间的差异为白噪声 $\varepsilon$,假设噪声(随机变量)$\varepsilon$ 符合 0 均值的正态分布:$\varepsilon \sim N(0, \sigma^2)$。

用 $y | X$ 表示给定输入 $X$ 的情况下的输出 $y$,当输入$X$ 给定时,$f(X) = W^T X$ 是一个常数,因此 $y = f(X) + \varepsilon$ 也是一个随机变量:$y | X \sim N(f(X), \sigma^2)$

@注:随机变量加上一个常数,只改变分布的均值,不改变分布的方差。

对于正态分布,其概率密度函数为:

$$
p(y | X) = \dfrac {1} {\sqrt {2 \pi} \sigma} \exp \left( - \dfrac {\left( y - f(X) \right)^2} {2 \sigma^2} \right)
$$

@注:很多分布的概率密度函数为指数函数形式,因此通常取 log 运算,log 函数为单调函数,对似然函数取 log 不影响极值点位置。

似然函数(Likelihood)为:$likelihood(f) = p(D)$,定义为数据出现的概率。在回归任务中,通常假定所有数据都是独立同分布的,因而对所有数据 $D$,其联合概率等于每个独立样本概率的积:

$$
p(D) = \prod^N_{i = 1} p(y_i | x_i)
$$

对似然函数取 $\log$ 运算($\log$ 是单调函数,不改变极值点位置,与似然函数等价)得到 $\log$ 似然函数(积取 log 等于 log 再取和,)即为:

$$
\begin{aligned}
l(f) &= \log p(D) = \sum^N_{i = 1} \log p(y_i | x_i)
\\
&= \sum^N_{i = 1} \log \left[ \dfrac {1} {\sqrt {2 \pi} \sigma} \exp \left( - \dfrac {(y_i - f(x))^2} {2 \sigma^2} \right) \right]
\\
&= \sum^N_{i = 1} \log \left[ (2 \pi)^{- \dfrac {1} {2}} \cdot \sigma^{-1} \cdot \exp \left( - \dfrac {(y_i - f(x))^2} {2 \sigma^2} \right) \right]
\\
&= \sum^N_{i = 1} \left[ - \dfrac {1} {2} \log (2 \pi) - \log \sigma - \dfrac {(y_i - f(x))^2} {2 \sigma^2} \right]
\\
&= - \dfrac {N} {2} \log (2 \pi) - N \log \sigma - \sum^N_{i = 1} \dfrac {(y_i - f(x))^2} {2 \sigma^2}
\end{aligned}
$$

去掉 $l(f)$ 中常数项(不影响极值点位置),当 $l(f)$ 取最大值时可得 极大似然估计

$$
\begin{aligned}
& \max l(f)
\\
= & \max \left( - \sum^N_{i = 1} \dfrac {(y_i - f(x_i))^2} {2 \sigma^2} \right)
\\
= & \min \left( \sum^N_{i = 1} \dfrac {(y_i - f(x_i))^2} {2 \sigma^2} \right)
\\
= & \dfrac {1} {2 \sigma^2} \min \sum^N_{i = 1} (y_i - f(x_i))^2
\end{aligned}
$$

同样,去掉系数 $\dfrac {1} {2 \sigma^2}$ 不影响极值点位置,而其中的似然项

$
\sum^N_{i = 1} (y_i - f(x_i))^2 = RSS(f)
$

恰好 是残差平方和 / 训练集上的 L2 损失和,因此:

$$
\begin{aligned}
\max l(f) &
\\
极大似然估计 &
\end{aligned}
\begin{aligned}
\Longleftrightarrow \min \sum^N_{i = 1} (y_i - f(x_i))^2 \Longleftrightarrow
\\
\quad
\end{aligned}
\begin{aligned}
& \min RSS(f)
\\
& 最小二乘
\end{aligned}
$$

极大似然估计等价于最小二乘。

又由于 log 似然即:$l(f)$,与极大似然有:

$$
\begin{aligned}
& \max l(f):极大似然估计
\\
= & \max \left( - \sum^N_{i = 1} \dfrac {(y_i - f(x_i))^2} {2 \sigma^2} \right)
\\
= & \min \left( \sum^N_{i = 1} \dfrac {(y_i - f(x_i))^2} {2 \sigma^2} \right)
\\
= & \min - l(f):负 log 似然最小
\end{aligned}
$$

极大似然估计等价于负 log 似然最小。

因此负 log 似然也被成为一种损失函数:负 log 似然损失。

  • L2 损失是负 log 似然损失。
  • 分类任务中的 Logistic 回归使用的也是负 log 似然损失。

将上述极大似然估计推广为一般形式:

$$
l(\theta) = \log (D | \theta) = \sum^N_{i = 1}\log p(X_i | \theta)
$$

其中 $\theta$ 为需要求解的分布的参数,$X$ 为每条样本。

统计中需要根据观测数据 $D= \{ X_i \}^N_{i = 1}$ 估计分布的参数 $\theta$,一种常用的参数估计即为 极大似然估计,即,使得 log 似然函数 $l(f)$ 最大时的 $\theta$ 作为估计值:

$$
\hat{\theta} = \arg_{\theta} \max l(\theta)
$$

1.2 L1 损失与极大似然估计

L1 损失最小也等价于极大似然估计,此时噪声模型为 Laplace 分布:

$$
\varepsilon \sim Laplace(\mu, b) = \dfrac {1} {2 b} \exp \left( - \dfrac {|x - \mu|} {b} \right)
$$


2. 正则项的概率解释

2.1 L2正则与正态分布先验

在损失函数的概率解释中已经推出:假设数据产生模型为

$
y = f(X) + \varepsilon, \quad \varepsilon \sim N(0, \sigma^2)
$

则 $y | X \sim N(f(X; W), \sigma^2)$,即

$
p(y | X) = \dfrac {1} {\sqrt {2 \pi} \sigma} \exp \left( - \dfrac {(y - f(X; W))^2} {2 \sigma^2} \right)
$

似然函数为:

$$
似然 \quad likelihood(f) = p(D | W) = \prod^N_{i = 1} p(y_i | x_i) = \prod^N_{i = 1} \dfrac {1} {\sqrt {2 \pi} \sigma} \exp \left( - \dfrac {(y_i - f(x_i; W))^2} {2 \sigma^2} \right)
$$

为了模型不太复杂,增加一个参数的先验:$w_j$ 的值不能太大,也即 $w_j$ 取 0 附近的值概率更高,假设 $W$ 为独立同分布,此时可用正态分布来表示 $w_j$ 的取值分布:$w_j \sim N(0, \tau^2)$

W 取值分布

则对每一个 $w_j$,其概率密度函数为:

$
p(w_j) = \dfrac {1} {\sqrt {2 \pi} \tau} \exp \left( - \dfrac {w_j^2} {2 \tau^2} \right)
$

因此对 $W$,其联合概率密度函数即为 先验

$$
先验 \quad p(W) = \prod^D_{j = 1} p(w_j) = \prod^D_{j = 1} \dfrac {1} {\sqrt {2 \pi} \tau} \exp \left( - \dfrac {w_j^2} {2 \tau^2} \right)
$$

根据 贝叶斯公式,参数的 后验分布 正比于 先验 x 似然

$$
后验 \quad p(W | D) \propto p(W) p(D | W)
$$

去掉正比系数(不影响极值点位置)并两边同取 log 运算可得:

$
\begin{aligned}
& \log p(W | D) = \log p(W) + \log p(D | W)
\\
&= - \dfrac {D} {2} \log (2 \pi) - D \log \tau - \sum^D_{j = 1} \dfrac {w^2_j} {2 \tau^2} - \dfrac {N} {2} \log (2 \pi) - N \log \sigma - \sum^N_{i = 1} \dfrac {(y_i - f(x_i; w))^2} {2 \sigma^2}
\end{aligned}
$

贝叶斯最大后验估计(Maximun A Posteriori estimation, MAP)为

$
\hat{W} = \arg_W \max \log p(W | D)
$

将上述 $\log p(W | D)$ 代入并去掉与 $W$ 无关的常数项(不影响极值点位置)后得:

$
\begin{aligned}
\hat{W} &= \arg_W \max \log p(W | D)
\\
&= \arg_W \max \left( - \sum^D_{j = 1} \dfrac {w^2_j} {2 \tau^2} - \sum^N_{i = 1} \dfrac {(y_i - f(x_i; w))^2} {2 \sigma^2} \right)
\\
&= \arg_W \min \left( \sum^D_{j = 1} \dfrac {w^2_j} {2 \tau^2} + \sum^N_{i = 1} \dfrac {(y_i - f(x_i; w))^2} {2 \sigma^2} \right)
\\
乘以 2 \sigma^2 &= \arg_W \min \left( \dfrac {\sigma^2} {\tau^2} \sum^D_{j = 1} w^2_j + \sum^N_{i = 1} (y_i - f(x_i; w))^2 \right)
\end{aligned}
$

上式令 $\lambda = \dfrac {\sigma^2} {\tau^2}$ 得:

$$
\hat{W} = \arg_W \min \left( \sum^N_{i = 1} (y_i - f(x_i; w))^2 + \lambda \sum^D_{j = 1} w^2_j \right)
$$

等价于岭回归的目标参数,因此有结论:

L2 正则等价于正态分布先验 $N(0, \tau^2)$。

由于 $\sigma^2$ 控制了噪声分布,而 $\tau^2$ 控制了先验,因此 $\lambda = \dfrac {\sigma^2} {\tau^2}$ 实际上控制了先验的强度($w_j$ 靠近 0 的程度)。

2.2 L1正则与Laplace分布先验

L1 正则等价于 Laplace 先验,此时先验分布为 Laplace 分布:

$$
p(w_j) = \dfrac {1} {2 b} \exp \left( - \dfrac {|w_j|} {b} \right)
$$

Laplace 分布