文章目录
logistic回归
logistic regression被称之为logistic回归,对于logistic这个单词来说,他本身的翻译其实不太容易,比较有名的译法是对数几率回归,我也认为这种译法是比较合适的,虽然并非logistic的本意,但却是最贴切这个算法本身的译法
regression的意思是回归,但其实这个算法是一种分类算法
回到我们讲线性回归的时候,主要是对指数本身进行预测,但是想要更实用的话,我们其实更希望知道涨跌的情况,那其实这样的输出值就只有两类,涨或者跌,也就是二分类问题
这种情况其实非常常见,例如销售额和顾客买不买之间的问题,播放量和用户会不会点击的问题
但问题在于,我们统计出来的样本特征往往是一个连续的实数值,而目标则是一个0或1的问题,那么我们简单的线性回归模型就会失效,难以再进行有效的预测
如果直接拟合比较困难,那我们可以将输出值变化一下,从一个非0即1的问题变成涨跌的概率问题,那么概率是连续值,我们就又回到了从连续值到连续值的映射,这似乎就还是回归的内容
那我们给出一个阈值( θ \theta θ),当概率大于阈值时,认为涨的可能性大,当概率小于阈值时,认为跌的可能性大
用最直觉的想法,就是涨的概率大于不涨的概率就可以了,那么我们就可以设涨的概率是 P P P,不涨的概率就是 1 − P 1-P 1−P
当 P 1 − P > 1 \frac{P}{1-P}>1 1−PP>1时,就可以认为涨的可能性大
这个公式其实就是odds
几率,接下来我们需要把观察的连续值和输出的连续值用数学模型联系起来
需要知道的是,假设 x x x表示事件涨, P ( x ) P(x) P(x)表示涨的概率,他的值域是就是 [ 0 , 1 ] [0,1] [0,1],然后我们通过几率的运算,其实得到的就是 o d d s ( x ) odds(x) odds(x),他的值域就变成了 [ 0 , + ∞ ) [0,+\infty) [0,+∞)(因为 o d d s ( x ) = P ( x ) 1 − P ( x ) odds(x)=\frac{P(x)}{1-P(x)} odds(x)=1−P(x)P(x)且 P ( x ) P(x) P(x)的范围是 [ 0 , 1 ] [0,1] [0,1])
logit
odds是几率,他在数学上的定义就是事件发生的概率比事件不发生的概率
logit其实就是给一个数取对数,我们接下来的操作是要给几率取对数,为什么呢
如果不取对数的话odds(x)的值域只有非负的部分,并不满足我们映射到全体实数的需求,因此我们对其再取对数即可,通常我们会取自然对数,并且用z表示logit(odds(x))
z = ln ( P ( x ) 1 − P ( x ) ) z=\ln(\frac{P(x)}{1-P(x)}) z=ln(1−P(x)P(x))
需要注意的是这里的小写z本质上仍然是几率,或者说是直接与几率相关的
那我们就可以轻松的反推出概率P的值 P = e z 1 + e z P=\frac{e^z}{1+e^z} P=1+ezez
然后再对这个式子做简单的变化,积分,就可以求出他的概率分布函数 P ( Z ≤ z ) = 1 1 + e z P(Z\leq z)=\frac{1}{1+e^z} P(Z≤z)=1+ez1
这里的大写Z表示的就是随机变量,取值为实数
这个公式称之为sigmoid函数,logistic函数,具有单调增,处处可导的性质
这个函数可以将任意实数的值映射到0到1之间,这个特性对于解决二分类问题十分重要,阈值也就可以在这里面选了