美文网首页
Logistic Regression

Logistic Regression

作者: BigPeter | 来源:发表于2018-12-13 15:29 被阅读0次

    概述


    逻辑斯蒂回归是一个分类算法,它通过\vec{w}将输入值进行线性合并,然后通过sigmoid函数将线性合并的值映射到(0,1)之间,得到类别的概率表示P(Y|X)

    sigmoid函数:

    f(x)=\frac{1}{1+e^{-x}}=\frac{e^x}{1+e^x}

    f(-x)=\frac{1}{1+e^x}=\frac{e^{-x}}{1+e^{-x}}=\frac{1+e^{-x}-1}{1+e^{-x}}=1-\frac{1}{1+e^{-x}}=1-f(x)

    逻辑斯蒂回归模型


    P(Y=1|x)=sigmoid(w^Tx+b)

    输入向量尾部加1,上式可写作

    P(Y=1|x)=sigmoid(w^Tx)

    该模型有一个比较好的特点是对某个输入其分类类别之间的对数几率是x的线性函数。

    事件发生的几率(odds)定义为

    odds=\frac{P(Y=1)}{P(Y=0)},

    对LR来说

    odds=\frac{P(Y=1|x)}{P(Y=0|x)}=\frac{sigmoid(w^Tx)}{1-sigmoid(w^Tx)}=\frac{sigmoid(w^Tx)}{sigmoid(-w^Tx)}=e^{w^Tx}

    log(odds)=log(e^{w^Tx})=w^Tx

    逻辑斯蒂回归模型又称为对数线性模型

    参数估计


    使用最大似然法进行参数估计

    P(Y=1|x)=\pi,P(Y=0|x)=1-\pi,单个数据的概率分布符合伯努利分布,有

    Likelihood = \prod_{i=1}^n \pi_i^{y_i}(1-\pi_i)^{(1-y_i)}

    \begin{align*}Log-Likelihood&=\sum_{i=1}^nlog(\pi_i^{y_i}(1-\pi_i)^{(1-y_i)}) \\&=\sum_{i=1}^n(y_ilog(\pi_i)+(1-y_i)log(1-\pi_i))\\&=\sum_{i=1}^n(y_ilog\frac{\pi_i}{1-\pi_i}+log(1-\pi_i))\\&=\sum_{i=1}^n(y_iw^Tx_i-log(1+e^{w^Tx_i}))\end{align*}

    可以通过拟牛顿法或梯度下降法求对数似然的最大化问题。

    多项逻辑斯蒂回归


    假设有K个类别,引入K-1个参数向量w_1, w_2, \ldots,w_{K-1},得到模型

    P(Y=k|x)=\frac{e^{w_k^Tx}}{1+\sum_{i=1}^{K-1}e^{w_i^Tx}},for\ k=1,2,\ldots,K-1\\P(Y=K|x)=\frac{1}{1+\sum_{i=1}^{K-1}e^{w_i^Tx}}

    可以通过极大似然法进行参数估计得到最优的w_1^*, w_2^*, \ldots,w_{K-1}^*

    神经网络化


    softmax函数:

    {\displaystyle softmax(\vec v)_i={\frac {e^{v_i}}{\sum _{k=1}^{K}e^{v_k}}}}

    softmax函数将

    vec=Wx, W=\left[\begin{matrix} w_1^T      \\ w_2 ^T     \\  \vdots    \\ w_n^T     \\\end{matrix}\right]

    进行归一化得到一个概率分布P。

    有以下特征:

    softmax(\vec v) = softmax(\vec v + c),即向量\vec v各个元素加一个相同的数经过softmax得到的概率分布与softmax直接在向量\vec v上得到的概率分布相同。该性质对于数值计算有帮助,实践中常常在(\vec v - \min \vec v)上进行softmax变换。

    经过softmax变换后,\vec v中最大的元素对应下标在最后概率分布P中会更突出。

    对比前面多项逻辑斯蒂回归模型,令

    w_{K}=(0, 0, \ldots, 0)^T,W=\left[\begin{matrix} w_1^T      \\ w_2 ^T     \\  \vdots    \\ w_K^T     \\\end{matrix}\right],

    多项逻辑斯蒂回归模型可表示成

    P=softmax(Wx)

    所以可以把多项逻辑斯蒂回归看做一个3层的神经网络,输入层为输入向量x,隐含层有K个节点,激活函数为f(x)=x,输出层为softmax。网络拓扑如下

    该网络以对数损失(对数似然损失,交叉熵损失)为损失函数。

    【二项逻辑斯蒂回归可用两层神经网络表示】

    相关文章

      网友评论

          本文标题:Logistic Regression

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