美文网首页
073 逻辑回归

073 逻辑回归

作者: 快乐公兽 | 来源:发表于2020-06-23 18:07 被阅读0次

    算法原理

    LogisticRegression,明明是个分类问题,为什么叫逻辑回归呢?
    线性回归 Y = W*X
    对于0-1分类问题,需要将预估值限制在0-1之间,但是W*X的值域是[-\infty, +\infty],所以要将值域限制在[0, 1]
    恰巧有一个函数 \sigma(z)=\frac{1}{1+e^{-z}} 的定义域是 [-\infty, +\infty] ,值域是[0, 1],所以逻辑回归定义

    \hat y=\sigma(w*x)=\frac{1}{1+e^{-w*x}}

    极大似然估计

    极大似然函数 L(y, \hat y) = \left\{\begin{array}\\ \hat y^y \quad y=1\\(1-\hat y)^{(1-y)}\quad y=0\end{array}\right. = \hat y^y+(1-\hat y)^{(1-y)}

    对n个样本做最大似然估计
    max\{L(y, \hat y)\} = max\{log(L(y, \hat y)) \} \\= max\{ylog(\hat y)+(1-y)log(1-\hat y)\} = min\{-ylog(\hat y)-(1-y)log(1-\hat y)\}

    上式可以看出,似然函数最大化等价于损失函数最小化

    对数损失函数

    损失函数形式

    多数二分类问题都用对数损失函数,对数损失函数有以下四种形式

    1. L(y, \hat y) = -y*log(\hat y) - (1-y)*log(1-\hat y)\quad其中y\in\{0, 1 \},\quad\hat y=\sigma(w*x)
    2. L(y, \hat y) = -y\hat y + log(1+e^{\hat y})\quad其中 y\in\{0, 1 \},\quad\hat y=w*x
    3. L(y, \hat y) = log(1+e^{-y\hat y}) = -\sigma(y\hat y) \quad其中 y\in\{-1, 1 \},\quad\hat y=w*x
    4. L(y, \hat y) = -y\hat y + log(1+e^{y\hat y})\quad其中y\in\{-1, 1 \},\quad\hat y=w*x

    上式2的推导可以直接代入求解得到
    以下阐述式3推倒,式4由式3推倒得到
    L(y, \hat y) = \left\{\begin{array}\\{log(1+e^{-\hat y})}\quad y=1\\{log(1+e^{\hat y})}\quad y=-1\end{array}\right. = log(1+e^{-y\hat y})

    损失函数推导

    设预估为1的概率 P(Y=1|X)=p
    那预估为0的概率为 P(Y=0|X)=1-p

    那么预估正确的概率为 p^y+(1-p)^{1-y}

    目标就是让预估尽可能正确
    max\{p^y+(1-p)^{1-y}\}\\=max\{y*log(p)+(1-y)*log((1-p))\}\\=min\{-y*log(p)-(1-y)*log((1-p))\}

    所以损失函数可以定义为
    \displaystyle L(y, \hat y)=\sum_{i=1}^n[y_i*log(p_i)+(1-y_i)*log(1-p_i)]

    待扩展

    • 最大熵模型

    相关文章

      网友评论

          本文标题:073 逻辑回归

          本文链接:https://www.haomeiwen.com/subject/tenhfktx.html