模型的由来
Exponential model的解释
假设第i个特征对第k类的贡献是w k i w_{ki} w ki ,则数据点( x 1 , … , x n ) (x_1,\ldots,x_n) ( x 1 , … , x n ) 属于第k类的概率正比于exp ( w k 1 x i + … + w k n x n ) \exp(w_{k1}x_i + \ldots + w_{kn}x_n) exp ( w k 1 x i + … + w kn x n ) 。
因为一个数据点属于各类的概率之和为1,所以可以得到P ( y = k ) = exp ( ∑ i = 1 n w k i x i ) ∑ k exp ( ∑ i = 1 n w k i x i ) = exp ( W k T X ) ∑ k exp ( W k T X ) P(y=k) = \frac {\exp(\sum_{i=1}^n w_{ki}x_i)}{\sum_k \exp(\sum_{i=1}^n w_{ki}x_i)} = \frac {\exp(W_k^T X)}{\sum_k \exp(W_k^T X)} P ( y = k ) = ∑ k e x p ( ∑ i = 1 n w ki x i ) e x p ( ∑ i = 1 n w ki x i ) = ∑ k e x p ( W k T X ) e x p ( W k T X ) 。
若只有两类,将分子分母同除分子,则有P ( Y = 1 ∣ x ) = 1 1 + e x p ( − w ⋅ x ) P(Y=1|x) = \frac {1}{1+exp(-w \cdot x)} P ( Y = 1∣ x ) = 1 + e x p ( − w ⋅ x ) 1 。
bernoulli分布的解释
二项分布,或者bernoulli分布的exponential family形式,就是 1 1 + e − z \frac {1}{1+e^{-z}} 1 + e − z 1
p ( y ∣ x , w ) = B e r ( y ∣ s i g n ( W T x ) ) p(y|x,w) = Ber(y|sign(W^Tx)) p ( y ∣ x , w ) = B er ( y ∣ s i g n ( W T x ))
对数几率比的解释
Logit Logistic function
l o g i t ( P ( y = 1 ∣ x ) ) = log P ( y = 1 ∣ x ) P ( y = 0 ∣ x ) = log P ( y = 1 ∣ x ) 1 − P ( y = 1 ∣ x ) = w ⋅ x P ( y = 1 ∣ x ) = l o g i t − 1 ( w ⋅ x ) = 1 1 + exp ( − w ⋅ x ) = exp ( w ⋅ x ) 1 + exp ( w ⋅ x ) P ( y = 0 ∣ x ) = 1 − P ( y = 1 ∣ x ) = 1 1 + exp ( w ⋅ x ) logit(P(y=1|x)) = \log \frac{P(y=1|x)}{P(y=0|x)} = \log \frac{P(y=1|x)}{1-P(y=1|x)} = w \cdot x \\
P(y=1|x) = logit^{-1} (w \cdot x) = \color{Blue}{\frac {1}{1+\exp(-w \cdot x)}} = \frac {\exp(w \cdot x)}{1+\exp(w \cdot x)} \\
P(y=0|x) = 1-P(y=1|x) = \color{Blue}{\frac {1}{1+\exp(w \cdot x)}} l o g i t ( P ( y = 1∣ x )) = log P ( y = 0∣ x ) P ( y = 1∣ x ) = log 1 − P ( y = 1∣ x ) P ( y = 1∣ x ) = w ⋅ x P ( y = 1∣ x ) = l o g i t − 1 ( w ⋅ x ) = 1 + e x p ( − w ⋅ x ) 1 = 1 + e x p ( w ⋅ x ) e x p ( w ⋅ x ) P ( y = 0∣ x ) = 1 − P ( y = 1∣ x ) = 1 + e x p ( w ⋅ x ) 1 LR本质上是线性回归,只是在特征到的结果的映射中加入了一层函数映射
通过logistic regression模型可以将线性函数转换为概率。线性函数的值越接近正无穷,概率值就越接近1;线性函数的值越接近负无穷,概率值就越接近0。这样的模型就是logistic regression模型。
为什么要加log,不直接是几率比? 如果P是一个分布呢?线性空间?
对数变换与正态分布
模型参数估计
模型学习时,可以用极大似然估计法 估计模型参数
max w L ( w ) = ∏ j p y ( 1 − p ) ( 1 − y ) \max_w L(w) = \prod_j p^y (1-p)^{(1-y)} \\ w max L ( w ) = j ∏ p y ( 1 − p ) ( 1 − y ) 如果类别标签为{ − 1 , 1 } \{-1,1\} { − 1 , 1 } ,则极大似然可以改写成
m a x w L ( w ) = ∏ j 1 1 + exp ( − y j w T x j ) min w − log L ( w ) = ∑ j log ( 1 + exp ( − y j w T x j ) ) 这个形式方便于并行化,比如梯度: G = ∑ j [ 1 1 + exp ( − y j w T x j ) − 1 ] y i x i max_w L(w) = \prod_j \frac {1}{1+\exp(-y_j w^T x_j)} \\
\min_w -\log L(w) = \sum_j \log(1+\exp(-y_j w^T x_j)) \\
\text{这个形式方便于并行化,比如梯度:} \\
G = \sum_j [\frac {1}{1+\exp(-y_j w^T x_j)} -1]y_i x_i ma x w L ( w ) = j ∏ 1 + exp ( − y j w T x j ) 1 w min − log L ( w ) = j ∑ log ( 1 + exp ( − y j w T x j )) 这个形式方便于并行化 , 比如梯度: G = j ∑ [ 1 + exp ( − y j w T x j ) 1 − 1 ] y i x i logisticRegressionMaxEnt
在自然语言中, 最大熵等价于 logistic regression,是因为特征函数都是二项分布。所以与LR本质上是同分布。
logisticRegressionMaxEnt博客版
点击预估
LR常用来做点击,但看到最近的比赛上效果比较好的有GBDT+LR,GBDT+FM。
还看到一段话
Ad Predictor : 这是微软的研究员提出的一种算法, 论文可以参考 Web-Scale Bayesian Click-Through Rate Prediction for Sponsored Search Advertising in Microsoft’s Bing Search Engine。
Ad Predictor有几个比较好的特性
它只需要扫瞄一次数据集就可以收敛到最优解,而不是像梯度法或者拟牛顿法那样需要反复迭代数据集。
它不仅仅能预测出一个样本是正样本的概率,而且还可以给出对于这个概率预测值的置信度
Ad Predictor很好了,不过它是基于L2正则化的,这样总是让人不能满意。Google在2013年发表了一篇论文(Ad Click Prediction: a View from the Trenches),介绍了一个基于L1正则化的LR优化算法FTRL-Proximal,且又具有上述Ad Predictor的两个优点。
Logistic Regression的几个变种
待扩展这些知识
参考佳文
CTR预估中GBDT与LR融合方案
为什么 LR 模型要使用 sigmoid 函数,背后的数学原理是什么
数据挖掘模型中的IV和WOE详解
浅谈变量woe与dummy的关系
Ctr 预估之 Calibration