zoukankan      html  css  js  c++  java
  • Logistic 两种标签对应的损失函数

    1 标签 (y in {0, 1})

    通常我们在计算 Logistic Regression 经验风险损失是在假设数据集标签 (y in {0, 1})时,利用极大似然估计可以得到:

    [L(w) = -sum_{i=1}^{N}y_ilog p_i + (1-y_i)log(1-p_i) ]

    其中,(N) 为训练样本数量,(p_i = P(y=1|x) = frac{e^{wx}}{1+e^{wx}}).

    则对于单个样本损失函数可以记为

    [- [y_ilog p_i + (1-y_i)log(1-p_i)] ]

    2 标签 (y in {-1, 1})

    但是,当数据标签 (y in {-1, 1}) 时,其损失函数可以记为

    [log(1 + exp(-2yf)) ]

    其中,(f = wx).

    证明:
    其实,(y in {0, 1})(y^* in {-1, 1}),相当于作了一个映射 (y^* = 2y-1). 同时设 (f = wx),则:

    [egin{aligned} & - left[y_i log p_i + (1-y_i)log(1-p_i) ight] \ & = -left[mathbb I(y=1)log p_i + mathbb I(y=0)log(1-p_i) ight] \ & = -left[mathbb I(y=1)log left(frac{e^{wx_i}}{1+e^{wx_i}} ight) + mathbb I(y=0) log left(1-frac{e^{wx_i}}{1+e^{wx_i}} ight) ight] \ & = -left[mathbb I(y^*=1) log left(frac{1}{1+e^{-f_i}} ight) + mathbb I(y^*=-1) log left(frac{1}{1+e^{f_i}} ight) ight] \ & = log(1 + exp(-y^*f_i)) end{aligned} ]

    其中,(mathbb I(cdot)) 为指示函数。

    上面得到的结果与 (log(1+exp(-2yf))) 相差一个常数 2,这并不影响结果。其实,如果想要结果一致,只要在证明中假设

    [p_i = frac{e^{wx}}{e^{wx} + e^{-wx}} = frac{e^f}{e^f + e^{-f}} = frac{1}{1+ e^{-2f}} ]

    即可。

  • 相关阅读:
    区间覆盖(线段树)
    差分约束
    二维数组
    P1195 口袋的天空
    dp的刷表法和填表法
    P1284 三角形牧场
    数据库课程设计
    具体解释VB中连接access数据库的几种方法
    android之PackageManager简单介绍
    Oracle fga审计有这几个特性
  • 原文地址:https://www.cnblogs.com/shaocf/p/14411123.html
Copyright © 2011-2022 走看看