本博客已经迁往http://www.kemaswill.com/, 博客园这边也会继续更新, 欢迎关注~
Linear Regression预测的目标(Y)是连续值, Logistic Regression预测的目标是二元变量, 泊松回归预测的是一个整数, 亦即一个计数(Count).
1. 泊松分布
如果一个离散随机变量(Y)的概率分布函数(probability mass function)为
$$Pr(Y=k)=frac{lambda^ke^{-lambda}}{k!}$$
其中(lambda>0, k=0,1,2,…), 则称(Y)服从泊松分布, 示意图如下图所示
泊松分布有以下性质:
(E(Y)=lambda)
(Var(Y)=lambda)
如果(Y_1 sim Poisson(lambda_1), Y_2 sim Poisson(lambda_2)), 则(Y=Y_1+Y_2 sim Poisson(lambda=lambda_1+lambda_2))
2. 泊松回归
泊松回归预测的目标(Y)是整数值, 且服从参数为(lambda)的泊松分布:
$$P(Y=y|lambda)=frac{lambda^ye^{-lambda}}{y!}$$
泊松分布是广义线性模型(Generalized Linear Model)的一种, 可以通过以下过程来建模:
假设(Y_i~Poisson(lambda_1))
令(phi_i=log(lambda_i))或者(phi_i=lambda_i) , 前者称作identity link function, 后者称作log link function.
(phi_i=eta_0+eta_1 X_{i1}+eta_2 X_{i2}+…)
使用log link function的好处是不会得到(lambda)的负数估计值(因为泊松分布的(lambda)是正的), 而identity link function则可能会得到负数估计值, 但在数据量比较大的情况下, 使用identity link function会减少计算量(除了不需要求对数之外, 在增量计算时, 也会有很大的好处, 细节可以参考[2])
2.1 参数估计
可以使用最大似然估计(MLE)来求得泊松分布的参数:
$$w=arg hspace{2 pt} max hspace{2 pt} l=log(prod_i (p(y_i)))$$
$$=arg hspace{2 pt} max hspace{2 pt} l=sum_i (y_ilog(w^Tx_i)-w^Tx_i-log(y_i!))$$
可以得到对数似然关于(w)的倒数为
$$frac{partial l}{partial w_j}=sum_i(frac{y_i}{lambda_i}x_{ij}-x_{ij})$$
因为对数似然函数是凸函数[3], 所以可以使用梯度下降或者Newton-Raphson[4]方法来求得最优解.
2.2 用途
泊松分布可以用在Behavior Targeting中, 用泊松分布分别估计将来用户在某个类别上的浏览和点击数, 然后就可以得到这个用户在这个类别上的CTR:
$$widehat{CTR_{ik}}=frac{lambda_{ik}^{click}+alpha}{lambda_{ik}^{view}+eta}$$
其中(alpha)和(eta)是用来做拉普拉斯平滑的, 可以是一个全局的值, 也可以每个类别都设置一对. (alpha / eta)是一个没有任何历史记录的新用户的默认CTR值.
参考文献:
[1]. Carl James Schwarz. Poisson Regression.
[2]. Ye Chen, Dmitry Pavlov, John F.Canny. Large-Scale Behavioral Targeting.
[3]. 凸问题浅析.
[4]. 优化算法-BFGS.