泊松回歸

在統計學上，泊松回歸（Poisson regression）是用來為計數資料和列聯表建模的一種回歸分析。泊松回歸假設因變量（英語：response variable）Y是泊松分布，並假設它期望值的對數可由一組未知參數進行線性表達。當其用於列聯表分析時，泊松回歸模型也被稱作對數-線性模型。

泊松回歸模型是廣義線性模型（GLM）的一種，以對數變化作為連接函數（link function），該模型的假設之一是其被解釋變量服從泊松分布。

## 泊松回歸模型

$\mathbf{x} \in \mathbb{R}^n$ 代表由一組相互獨立的變量組成的向量，其泊松回歸的模型形式為:

$\log (\operatorname{E}(Y\mid\mathbf{x}))=\alpha + \mathbf{\beta}' \mathbf{x},$ $\alpha \in \mathbb{R}$， $\mathbf{\beta} \in \mathbb{R}^n$.

亦可簡潔表示為：$\log (\operatorname{E}(Y\mid\mathbf{x}))=\boldsymbol{\theta}' \mathbf{x},\,$

此處，$\mathbf{x}$ 是 n+1維的向量，由n個獨立變量（自變量向量）一個常向量（元素取值全為1）構成，用一個θ 代表第一個表達式當中的 α 和 β。

因此，當已知泊松回歸模型當中的 θ和解釋變量 $\mathbf{x}$, 其滿足泊松分布的被解釋變量的期望值可以由下式來預測：

$$\operatorname{E}(Y\mid\mathbf{x})=e^{\boldsymbol{\theta}' \mathbf{x}}.\,$$

Yi 是被解釋變量的觀測值，相應的解釋變量為 xi，可由極大似然估計（MLE）的方法來估計參數θ。極大似然估計不能通過解析表達式獲得解析解，是由其對數似然函數為凸函數的特性，可通過Newton–Raphson或其他基於梯度下降的思想方法來進行參數估計。

## 極大似然估計

如上所述，已知泊松回歸模型當中的 θ和解釋變量 $\mathbf{x}$, 其回歸表達式為：

$\operatorname{E}(Y\mid x)=e^{\theta' x}\,$,

泊松分布的機率密度函數為：

$$p(y\mid x;\theta) = \frac{[\operatorname{E}(Y\mid x)]^y \times e^{-\operatorname{E}(Y\mid x)}}{y!} = \frac{e^{y \theta' x} e^{-e^{\theta' x}}}{y!}$$

現已知解釋變量的觀測值為由 m個向量組成 $x_i \in \mathbb{R}^{n+1}, \, i = 1,\ldots,m$, 對應 m 個被解釋變量的觀測值，$y_1,\ldots,y_m \in \mathbb{R}$. 若同時已知θ, 則該組觀測值所對應的聯合機率可由下式表達：

$$p(y_1,\ldots,y_m\mid x_1,\ldots,x_m;\theta) = \prod_{i=1}^m \frac{e^{y_i \theta' x_i} e^{-e^{\theta' x_i}}}{y_i!}.$$

極大似然方法估計 θ的核心思想是，去找到能使得基於當前觀測值的聯合機率儘可能達到最大的θ。（可理解為：變量的取值當前觀測值，與取值為其他任何數值相比，是發生機率最高的事件）。既然目標是尋找到最優的θ，可以先將上式的等號左邊簡單表達為關於θ 的表達式：

$L(\theta\mid X,Y) = \prod_{i=1}^m \frac{e^{y_i \theta' x_i} e^{-e^{\theta' x_i}}}{y_i!}$.

注意等號右邊的表達式並未改寫，但通常難於付諸計算，因而採用其對數變化後的表達式（log-likelihood）即：

$\ell(\theta\mid X,Y) = \log L(\theta\mid X,Y) = \sum_{i=1}^m \left( y_i \theta' x_i - e^{\theta' x_i} - \log(y_i!)\right)$.

由於 θ 僅出現在似然函數的前兩項，因而在極大化似然函數的運算過程中，可以只考慮前兩項。可以刪去第三項yi!，待優化的似然函數可以簡潔表達為：

$\ell(\theta\mid X,Y) = \sum_{i=1}^m \left( y_i \theta' x_i - e^{\theta' x_i}\right)$.

為了找到極大值，需要求解方程：

$$\frac{\partial \ell(\theta\mid X,Y)}{\partial \theta} = 0$$

可以通過對其似然函數取負值 （negative log-likelihood）, $-\ell(\theta\mid X,Y)$是一個凸函數, 標準的凸優化方法可以考慮來求解 θ的最優值。統一的方法是Newton-Raphson 與Iterative Weighted Least Square（IWLS）演算法。給θ一組初始值，IWLS 是通過多次迭代更新直到θ 收斂。

## 泊松回歸的應用

泊松回歸常用於被解釋變量為計數（Count）形式時，包括事件發生的次數，比如：客服中心接到的電話次數。其滿足相互獨立的假設。在此例子中，即為：撥打客服電話的人們之間不存在相互關聯。不會因為甲撥打了客服，而影響乙撥打的可能性。但在建模時，需要考慮統計該事件發生的時期，比如目標變量統計的是一天接到的電話次數，還是一個星期，或者一個月。這個時期的數據作為回歸模型中的抵消值，在下面解釋。

### "曝光量"（Exposure） 與 偏移量 (trade off)

泊松分布也可以適用於比率數據，即事件發生次數與其測量時間或測量範圍的比值。比如生物學家測量某森林中樹木種類的數目，比率變量即為每平方千米的樹木種類數。人口學家關注的是每個人口年（person-year）的人口死亡數。通常來說，比率變量表達的是單位時間內該事件發生的次數。這些例子中，平方米」，「人口年」這些變量就是所謂的"曝光量"（Exposure）。泊松回歸中將其視為偏移量放在等式右邊。

$$\log{((\operatorname{E}(Y\mid x) / (\text{exposure}))} = \theta' x$$

which implies

$$\log{(\operatorname{E}(Y\mid x))} - \log{(\text{exposure})} = <pre> \log{\left(\frac{\operatorname{E}(Y\mid x)}{\text{exposure}}\right)} = \theta' x$$

在R中運行廣義線性模型時，可用offset來指定表示「曝光量」的變量:

```rsplus
glm(y ~ offset(log(exposure)) + x, family=poisson(link=log) )
```

### 過度離勢和零膨脹

服從泊松分布的變量,具有期望與方差相等的特徵。若觀測樣本的方差遠大於期望值的時，則認為存在過度離勢，當前的模型不合理。其常見的原因是缺失重要的解釋變量。解決該問題的方法，通常採用准似然估計（quasi-likelihood）或者負二項分布來估計。

泊松回歸的另一個常見的問題是零膨脹zero-inflated model。標準的泊松分布其定義域為非負整數，被解釋變量y取值為0的機率為：

$$p(y=0\mid x;\theta) = e^{-e^{\theta' x}}$$

但如果觀測樣本中添加大量的0，則取值為0的頻率遠大於理論機率，此時不適宜直接採用泊松回歸。比如觀測一組人在一小時內的吸菸情況，目標變量是每人吸了多少根煙。但當觀測人群中有大量的非吸菸者，就會有過多的目標變量為0，這就是零膨脹。可以採用其他的廣義線性模型，比如負二項分布負二項分布來建模，或者零膨脹模型zero-inflated model 來解決。