通俗理解:Logistic Regression【学习笔记】

1、提出问题

比如

  • 问题1,在信用评分模型中,如何判断某个人的违约概率
  • 问题2,在图像识别领域,如何判断一张图片的动物是不是猫
  • 问题3,给定某个人的体重、年龄,判断其体脂高低
  • 问题4,在物品详情页,线上一个用户点击进来了,如何给出推荐列表,即找到ta最可能点击哪些商品。CTR
  • 问题5,通过一个人的年龄、性别、血压、胆固醇水平、体重等,想知道这个人患心脏病的概率
  • …等等

先给出整个推导的流程图:倒推的思路
在这里插入图片描述


以问题3为例:已收集到样本(X,Y)

  • X = ( x 1 , x 2 , x 3 , . . . , x n ) X=(x_1, x_2, x_3, ..., x_n) X=(x1,x2,x3,...,xn)
  • Y = ( y 1 , y 2 , y 3 , . . . , y n ) , y i ∈ ( 0 或 1 ) Y=(y_1, y_2, y_3, ..., y_n), y_i\in(0或1) Y=(y1,y2,y3,...,yn),yi(01)
  • w = ( w 1 , w 2 , w 3 , . . . , w n ) w=(w_1, w_2, w_3, ..., w_n) w=(w1,w2,w3,...,wn) X X X的权重值

现在给一个人的体重(weight)、年龄(age),如何判断其体脂高低?
我们需要得到一个预测函数 s ( X T w ) s(X^Tw) s(XTw)(线性模型),在输入样本 X X X过程中,不断尝试不同的 w w w(学习过程),输出样本:

  • Y = 1 Y=1 Y=1的概率为 p p p Y = 0 Y=0 Y=0的概率为 1 − p 1-p 1p),从而判断这个人体脂高低:
    • s ≥ 0.5 s≥0.5 s0.5,体脂高,正样本,标记为1;
    • s < 0.5 s<0.5 s0.5,体脂低,负样本,标记为0;

得出: p = s ( X T w ) p=s(X^Tw) p=s(XTw)

一个事情(如体脂【高】或者【低】)发生的概率 p p p和影响这个事情发生的因素(如身高、年龄)之间存在一种关系。


2、现在的问题是: s ( X T w ) s(X^Tw) s(XTw)是什么?

换个思路,得到 s ( x ) s(x) s(x)的反函数 h ( x ) h(x) h(x),于是:
X T w = h ( p ) X^Tw=h(p) XTw=h(p)

如果知道了 h ( p ) h(p) h(p),那么, s ( X T w ) s(X^Tw) s(XTw)就很容易得到了。


3、现在的问题变为: h ( p ) h(p) h(p)怎么得到?

我们需要的 h ( p ) h(p) h(p)函数是这样的:

  • h ( p ) h(p) h(p)是一个 p ∈ ( 0 , 1 ) p\in(0,1) p(0,1)之间变化一个函数。
  • h ( p ) h(p) h(p)是一个在 p = 0 p=0 p=0 p = 1 p=1 p=1附近, p p p的微小变化,对应 h ( p ) h(p) h(p)(即 X T w X^Tw XTw)的较大变化;同时 h ( p ) h(p) h(p)要足够简单。

于是,从 h ( p ) h(p) h(p)变化入手,想到了求导,寻找到一个符合要求的函数:

d ( h ( p ) ) d ( p ) = 1 1 − p + 1 p \frac{d(h(p))}{d(p)}=\frac{1}{1-p}+\frac{1}{p} d(p)d(h(p))=1p1+p1
这个式子 1 1 − p + 1 p \frac{1}{1-p}+\frac{1}{p} 1p1+p1就在 p = 0 p=0 p=0 p = 1 p=1 p=1附近,数值是接近于 ∞ \infty ,也就是变化很大。那么对上述式子积分(即知道了函数的导函数,反求原函数)得到:
h ( p ) = ln ⁡ p 1 − p h(p)=\ln\frac{p}{1-p} h(p)=ln1pp

( u v ) ′ = u ′ v − u v ′ v 2 (\frac{u}{v})^′=\frac{u^′v-uv^′}{v^2} (vu)=v2uvuv

根据上述的 h ( p ) = X T w h(p)=X^Tw h(p)=XTw,因此:

ln ⁡ p 1 − p = X T w ⇒ p 1 − p = e X T w ⇒ p = e X T w 1 + e X T w = 1 1 + e − X T w \ln\frac{p}{1-p}=X^Tw \Rightarrow \frac{p}{1-p}=e^{X^Tw} \Rightarrow p=\frac{e^{X^Tw}}{1+e^{X^Tw}} = \frac{1}{1+e^{-X^Tw}} ln1pp=XTw1pp=eXTwp=1+eXTweXTw=1+eXTw1

即结论是: p = 1 1 + e − X T w = s ( X T w ) p = \frac{1}{1+e^{-X^Tw}}=s(X^Tw) p=1+eXTw1=s(XTw)

得到最终的Logistic函数为:

s ( x ) = 1 1 + e − x ∈ ( 0 , 1 ) , x ∈ ( − ∞ , + ∞ ) s(x)=\frac{1}{1+e^{-x}} \in (0, 1), x \in (-\infty, +\infty) s(x)=1+ex1(0,1),x(,+)

在这里插入图片描述


总结:

上述函数 s ( x ) = 1 1 + e − x ∈ ( 0 , 1 ) , x ∈ ( − ∞ , + ∞ ) s(x)=\frac{1}{1+e^{-x}} \in (0, 1), x \in (-\infty, +\infty) s(x)=1+ex1(0,1),x(,+)称之为Logistic函数(或 Sigmoid函数),用于二元分类(任务)中,输出事件概率:即 当输出满足某一个概率条件时,我们就将其划分为正或负样本。

是机器学习中一个常用的函数,与之类似的有softmax、softplus等函数。最早可追溯到1844年,一个比利时的数学家用于模仿一些情况人口增长的S形曲线,除了应用人类学,还可应用于数学、动物学、机器学习领域。

使用Logistic函数 很容易将预测值 分为两类:

  • 将预测概率小于0.5的分为负样本,标记为0;
  • 将预测概率大于0.5的分为正样本,标记为1。

而Sigmoid函数对输入超出一定范围就会不敏感(从图像可知 x x x趋向于正负无穷大时)。

所以,Logistic Regression最常见的应用场景是:预测概率。


从【国内】翻译角度理解(不推荐):Logistic Regression

Logistic Regression(简写 LR),逻辑回归 或逻辑斯蒂回归。

从单词(词根)的角度

logistic adj.逻辑的;n.数理(符号)逻辑,逻辑斯蒂
   ↓
logic 译为 n.逻辑 adj.逻辑的,这词是个舶来品,是音译
在本文的【逻辑回归算法】中的【逻辑】不是中文常说的【逻辑思维】这种逻辑。或译成:逻辑斯蒂回归。以避免误导性。
logistic指的是 logistic函数

-------------------------------------------------------------

regression =     re     +        gress                +   sion
                  ↓                 ↓                        ↓
           回/向后/相反 | to go/walk行走,来自拉丁语    | 名词后缀
=>翻译:向后走

根据上述推导过程,最准确的翻译应该是:对数几率回归

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值