逻辑回归

2018-10-24  本文已影响0人  Yiren_Hwang

和感知机不同,逻辑回归在点到平面的距离基础上,通过逻辑函数,把距离值转换成一个(0,1) 的值,这个值称为P值(可能性)

logist函数

p = logist(x) = \frac{1}{1+e^{-out}} = \frac{1}{1+e^{-\sum{w_i*x_i}+b_0}}

通过这个函数可以看到:

似然函数

已知当前我们有个任务,把一组样本分成两类,0 或者 1,设:

组合上面两个公式,则一个样本点 X_i 的分类密度函数可以表示为:

通过最大似然估计法,样本集的似然函数表示为:
L= \prod{P_i} = \prod{ p^{y_i} * (1-p)^ {1-y_i} }
ln(L) = \sum(y_i*ln(p) + (1-y_i)*ln(1-p))

损失函数

我们现在对模型定义一个损失函数 loss,使得 loss 最小的时候,L 最大;
loss = -\frac{1}{m}ln(L) = - \frac{1}{m}\sum(y_i*ln(p) + (1-y_i)*ln(1-p))

损失函数求导

\begin{split} \frac{\partial loss}{\partial w_i} &= \frac{-1}{m}*\frac{\partial ln(L)}{\partial w_i} \\ &= \frac{-1}{m}*\frac{\partial \sum(y_i*ln(p) + (1-y_i)*ln(1-p))}{\partial w_i} \\ &= \frac{-1}{m}* \sum( y_i * \frac{1}{p} * \frac{\partial p}{\partial w_i} + (1-y_i) * \frac{1}{1-p} * (-1) * \frac{\partial p}{\partial w_i} ) \\ &= \frac{-1}{m} * \sum(y_i * \frac{1}{p}+ (y_i-1) * \frac{1}{1-p}) * \frac{\partial p}{\partial w_i} \\ &= \frac{-1}{m} * \sum(\frac{y_i}{p} + \frac{y_i}{1-p} - \frac{1}{1-p}) * \frac{\partial p}{\partial w_i} \\ &= \frac{-1}{m} * \sum( \frac{y_i(1-p)}{p(1-p)}+ \frac{p*y_i}{p*(1-p)} - \frac{p}{p*(1-p)}) * \frac{\partial p}{\partial w_i} \\ &= \frac{-1}{m} * \sum( \frac{y_i(1-p)+ p*y_i - p}{p*(1-p)}) * \frac{\partial p}{\partial w_i} \\ &= \frac{-1}{m} * \sum( \frac{y_i- p}{p*(1-p)}) * \frac{\partial p}{\partial w_i} \\ \end{split}

又有

\begin{split} \frac{\partial p}{\partial w_i} &= \frac{\partial (1+e^{-WX})^{-1}}{\partial w_i} \\ &=(-1)(1+e^{-WX})^{-2}e^{-WX}*(-1)\frac{\partial}{\partial w_i}(WX)\\ &=\frac{e^{-WX}}{(1+e^{-WX})^2}*x_i \\ &=\frac{1}{1+e^{-WX}}*\frac{e^{-WX}}{1+e^{-WX}}*x_i \\ &=p*(1-p)*x_i \\ \end{split}

得到:
\begin{split} \frac{\partial loss}{\partial w_i} &= \frac{-1}{m} * \sum( \frac{y_i- p}{p*(1-p)}) * \frac{\partial p}{\partial w_i} \\ &= \frac{-1}{m} * \sum( \frac{y_i- p}{p*(1-p)}) * p*(1-p)*x_i \\ &= \frac{-1}{m} * \sum((y_i- p)*x_i) \\ \end{split}

权重更新

\begin{split} w_i & = w_i - a * \frac{\partial loss}{\partial w_i} \\ & = w_i - a * \frac{-1}{m} * \sum((y_i- p)*x_i) \end{split}

上一篇 下一篇

猜你喜欢

热点阅读