Logistic Regression

模型的由来

Exponential model的解释

假设第i个特征对第k类的贡献是wkiw_{ki},则数据点(x1,,xn)(x_1,\ldots,x_n)属于第k类的概率正比于exp(wk1xi++wknxn)\exp(w_{k1}x_i + \ldots + w_{kn}x_n)

因为一个数据点属于各类的概率之和为1,所以可以得到P(y=k)=exp(i=1nwkixi)kexp(i=1nwkixi)=exp(WkTX)kexp(WkTX)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=1x)=11+exp(wx)P(Y=1|x) = \frac {1}{1+exp(-w \cdot x)}

bernoulli分布的解释

二项分布,或者bernoulli分布的exponential family形式,就是 11+ez\frac {1}{1+e^{-z}} p(yx,w)=Ber(ysign(WTx))p(y|x,w) = Ber(y|sign(W^Tx))

对数几率比的解释

Logit Logistic function

logit(P(y=1x))=logP(y=1x)P(y=0x)=logP(y=1x)1P(y=1x)=wxP(y=1x)=logit1(wx)=11+exp(wx)=exp(wx)1+exp(wx)P(y=0x)=1P(y=1x)=11+exp(wx)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)}}

LR本质上是线性回归,只是在特征到的结果的映射中加入了一层函数映射

通过logistic regression模型可以将线性函数转换为概率。线性函数的值越接近正无穷,概率值就越接近1;线性函数的值越接近负无穷,概率值就越接近0。这样的模型就是logistic regression模型。

为什么要加log,不直接是几率比? 如果P是一个分布呢?线性空间?

对数变换与正态分布

模型参数估计

模型学习时,可以用极大似然估计法估计模型参数

maxwL(w)=jpy(1p)(1y)\max_w L(w) = \prod_j p^y (1-p)^{(1-y)} \\

如果类别标签为{1,1}\{-1,1\},则极大似然可以改写成

maxwL(w)=j11+exp(yjwTxj)minwlogL(w)=jlog(1+exp(yjwTxj))这个形式方便于并行化,比如梯度:G=j[11+exp(yjwTxj)1]yiximax_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

logisticRegressionMaxEnt

在自然语言中, 最大熵等价于 logistic regression,是因为特征函数都是二项分布。所以与LR本质上是同分布。

点击预估

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

Last updated