损失函数与风险评估详细介绍——统计机器学习模型评价

/ Machine Learning / 没有评论 / 367浏览

损失函数

监督学习问题是在假设空间 $\mathcal{F}$ 中选取模型 $f$ 作为决策函数,对于给定的输入 $x$, 由 $f(x)$ 给出相应的输出 $y$, 这个输出的预测值 $f(x)$ 与真实值 $y$ 可能一致也可能不一致,用一个损失函数(loss function)或代价函数(cost function)来度量预测错误的程度。

损失函数是 $f(x)$ 与 $y$ 的非负实值函数,记作 $L(y,f(x))$.

损失函数性质

0-1损失函数

英文名:0-1 loss function

$$L(y,f(x)) = \left \{ \begin{matrix} &1, \text{ if } y \ne f(x) \\ &0, \text{ if } y = f(x) \end{matrix} \right.$$

也可用指示函数表示为 $I(y\ne f(x))$;

平方损失函数

英文名:quadratic loss function

$$L(y,f(x)) = (y - f(x))^2$$

绝对损失函数

英文名:absolute loss function

$$L(y,f(x)) = |y - f(x)|$$

对数损失函数

英文名:logarithmic loss function

$$ L(y,f(x))=-\log f(x) $$

对数似然损失函数

英文名:logarithmic likelihood loss function

$$L(y,P(y|x)) = -\log P(y|x)$$

交叉熵损失函数

英文名:cross entropy loss function

$$ L(y,f(x))=-\sum_{i=1}^{c} y_{i} \log f_i(x)=-y^{T} \log f(x) $$

合页损失函数

英文名:hinge loss function

对于二类问题,令标签只可能取-1或1两值,那么

$$ L(y,f(x))=\max {0,1-yf(x)} $$

损失函数值越小,模型就越好。

风险评估

条件风险

英文名:condition risk

将一个样本 $x$ 分类为 $y_i$ 类的条件风险定义如下:

$$R(f_i|x)=\sum_{j=1}^{c} \left [ L(y_i, f(x) \right ]P(y_{j}|x)$$

这个式子很好理解,样本 $x$ 属于类别 $y_j(j \in 1,2,...,c)$ 的后验概率是 $P(y_j|x)$,那么取遍每一个可能的类别,用损失进行加权就可以。

期望风险

英文名:expected risk

$$ R_{exp}(f)=E [L(y,f(x)) ]= \int_{X\times Y} L(y,f(x))p(x,y) dxdy $$

也就是说样本损失的期望。当然,这个值是求不出来的,因为假如说可以求出来,就相当于知道了样本和类别标记的联合分布 p(x,y),那就不需要学习了。这个量的意义在于指导我们进行最小风险决策。

$$ \begin{aligned} R_{exp}(f) &= \int_{X \times Y} L(y,f(x))P(y|x)p(x)dxdy \\ &= \int \biggl(\int L(y,f(x))P(y|x)\text dy \biggr)p(x)dx \\ &= \int \biggl(\sum_{j=1}^{c} L(y_j,f(x)) P(y_j|x) \biggr)p(x)dx \\ &= \int R(f_i | x) p(x)dx \\ &= E_{x}[R(f_i|x)] \end{aligned} $$