【课堂笔记】指数族与广义线性模型(GLMs)
文章目录
- 指数族
- 定义
- 连接函数
- 例子
- 伯努利分布
- 高斯分布
- 泊松分布
- 对数分配函数的性质
- 梯度
- 凸性
- GLMs 广义线性模型
- 定义
- GLM 的负对数似然估计
指数族
指数族(Exponential Family)是一类概率分布的集合,在统计学和机器学习中非常重要,因其数学性质优美且广泛应用于广义线性模型(GLMs)等框架。
定义
指数族分布是指可以表示为以下形式的概率分布:
p ( y ∣ η ) = h ( y ) exp [ η ⊤ ϕ ( y ) − A ( η ) ] p(y|\eta) = h(y)\text{exp}[\eta^\top\phi(y) - A(\eta)] p(y∣η)=h(y)exp[η⊤ϕ(y)−A(η)]
其中:
y y y:随机变量
η \eta η:自然参数(natural parameter),控制分布的形状
ϕ ( y ) \phi(y) ϕ(y):充分统计量(sufficient statistics),从数据中提取的关键信息。
h ( y ) h(y) h(y):基测度(base measure),一个与 η \eta η无关的函数,通常起缩放作用。
A ( η ) A(\eta) A(η):对数配分函数(log-partition function),确保概率分布归一化。
我们希望
∫ p ( y ∣ η ) d y = 1 ⇒ ∫ h ( y ) exp [ η ⊤ ϕ ( y ) − A ( η ) ] d y = 1 ⇒ ∫ h ( y ) e η ⊤ ϕ ( y ) d y = e A ( η ) ⇒ A ( η ) = ln ( ∫ h ( y ) e η ⊤ ϕ ( y ) d y ) \int p(y|\eta)dy = 1 \\ \Rightarrow \int h(y)\text{exp}[\eta^\top\phi(y)-A(\eta)]dy=1 \\ \Rightarrow \int h(y)e^{\eta^\top\phi(y)}dy=e^{A(\eta)} \\ \Rightarrow A(\eta) = \text{ln }\left(\int h(y)e^{\eta^\top\phi(y)}dy\right) ∫p(y∣η)dy=1⇒∫h(y)exp[η⊤ϕ(y)−A(η)]dy=1⇒∫h(y)eη⊤ϕ(y)dy=eA(η)⇒A(η)=ln (∫h(y)eη⊤ϕ(y)dy)
我们只考虑在自然参数空间
M : = { ∫ y h ( y ) exp [ η ⊤ ϕ ( y ) ] d y < ∞ } M := \left\{\int_y h(y) \text{exp }[\eta^\top \phi(y)]dy < \infty \right\} M:={∫yh(y)exp [η⊤ϕ(y)]dy<∞}
中的参数,这个条件对后续推导中很重要。
连接函数
连接函数是把模型从线性推广到非线性的桥梁。连接函数 g g g是一个可逆的函数,将概率分布的均值 μ \mu μ(通常是充分统计量 ϕ ( y ) \phi(y) ϕ(y)的期望,即 μ = E [ ϕ ( y ) ] \mu=\mathbb{E}[\phi(y)] μ=E[ϕ(y)])映射到自然参数 η \eta η。数学上:
η = g ( μ ) , μ = g − 1 ( η ) \eta = g(\mu), \mu = g^{-1}(\eta) η=g(μ),μ=g−1(η)
例子
伯努利分布
p ( y ∣ μ ) = μ y ( 1 − μ ) 1 − y = exp ( y ln ( μ 1 − μ ) + ln ( 1 − μ ) ) p(y|\mu) = \mu^y(1-\mu)^{1-y} = \text{exp}\left(y\text{ln}\left(\frac{\mu}{1-\mu}\right) + \text{ln}(1-\mu) \right) p(y∣μ)=μy(1−μ)1−y=exp(yln(1−μμ)+ln(1−μ))
于是对应的:
η = g ( μ ) = ln ( μ 1 − μ ) ϕ ( y ) = y h ( y ) = 1 A ( η ) = − ln ( 1 − μ ) = ln ( 1 + e η ) \eta = g(\mu) = \text{ln}\left(\frac{\mu}{1-\mu}\right) \\ \phi(y) = y \\ h(y) = 1\\ A(\eta) = -\text{ln}(1-\mu) = \text{ln}(1+e^\eta) η=g(μ)=ln(1−μμ)ϕ(y)=yh(y)=1A(η)=−ln(1−μ)=ln(1+eη)
这里连接函数 g g g称为logit连接函数,常用于逻辑回归。
高斯分布
高斯分布的概率密度函数为: p ( y ∣ μ , σ 2 ) = 1 2 π σ 2 exp ( − ( y − μ ) 2 2 σ 2 ) p(y|\mu, \sigma^2) = \frac{1}{\sqrt{2\pi\sigma^2}} \exp\left( -\frac{(y-\mu)^2}{2\sigma^2} \right) p(y∣μ,σ2)=2πσ21exp(−2σ2(y−μ)2)
写成指数族形式: p ( y ∣ η ) = 1 2 π σ 2 exp ( − y 2 2 σ 2 ) exp ( η y − σ 2 η 2 2 ) p(y|\eta) = \frac{1}{\sqrt{2\pi\sigma^2}} \exp\left( -\frac{y^2}{2\sigma^2} \right) \exp\left( \eta y - \frac{\sigma^2 \eta^2}{2} \right) p(y∣η)=2πσ21exp(−2σ2y2)exp(ηy−2σ2η2)
对应参数为: η = g ( μ ) = μ σ 2 ϕ ( y ) = y h ( y ) = 1 2 π σ 2 exp ( − y 2 2 σ 2 ) A ( η ) = σ 2 η 2 2 \eta = g(\mu) = \frac{\mu}{\sigma^2} \\ \phi(y) = y \\ h(y) = \frac{1}{\sqrt{2\pi\sigma^2}} \exp\left( -\frac{y^2}{2\sigma^2} \right) \\ A(\eta) = \frac{\sigma^2 \eta^2}{2} η=g(μ)=σ2μϕ(y)=yh(y)=2πσ21exp(−2σ2y2)A(η)=2σ2η2
这里连接函数 g g g称为典型连接函数(canonical link),在固定方差的高斯分布中用于线性回归。
泊松分布
泊松分布的概率密度函数为: p ( y ∣ μ ) = μ y e − μ y ! p(y|\mu) = \frac{\mu^y e^{-\mu}}{y!} p(y∣μ)=y!μye−μ
将其改写为指数族形式: p ( y ∣ η ) = 1 y ! exp ( η y − e η ) p(y|\eta) = \frac{1}{y!} \exp\left( \eta y - e^\eta \right) p(y∣η)=y!1exp(ηy−eη)
对应的指数族参数为:
η = g ( μ ) = ln μ ϕ ( y ) = y h ( y ) = 1 y ! A ( η ) = e η \eta = g(\mu) = \ln \mu \\ \phi(y) = y \\ h(y) = \frac{1}{y!}\\ A(\eta) = e^\eta η=g(μ)=lnμϕ(y)=yh(y)=y!1A(η)=eη
这里的连接函数 g g g称为对数连接函数(log link),常用于泊松回归。
对数分配函数的性质
梯度
对数分配函数 A ( η ) A(\eta) A(η)的一阶梯度等于充分统计量 ϕ ( y ) \phi(y) ϕ(y)的期望。推导如下:
A ( η ) = ln ( ∫ h ( y ) e η ⊤ ϕ ( y ) d y ) = ln Z ( η ) ∇ A ( η ) = ∇ ln Z ( η ) = 1 Z ( η ) ∇ Z ( η ) A(\eta) = \text{ln }\left(\int h(y)e^{\eta^\top\phi(y)}dy\right) = \text{ln }Z(\eta) \\ \nabla A(\eta) = \nabla \text{ln }Z(\eta) = \frac{1}{Z(\eta)}\nabla Z(\eta) A(η)=ln (∫h(y)eη⊤ϕ(y)dy)=ln Z(η)∇A(η)=∇ln Z(η)=Z(η)1∇Z(η)
现在计算 Z ( η ) Z(\eta) Z(η)的梯度:
Z ( η ) = ∫ h ( y ) e η ⊤ ϕ ( y ) d y ∇ Z ( η ) = ∇ ∫ h ( y ) e η ⊤ ϕ ( y ) d y = ∫ h ( y ) ∇ e η ⊤ ϕ ( y ) d y Z(\eta) = \int h(y)e^{\eta^\top\phi(y)}dy \\ \nabla Z(\eta) =\nabla \int h(y)e^{\eta^\top\phi(y)}dy = \int h(y)\nabla e^{\eta^\top\phi(y)}dy Z(η)=∫h(y)eη⊤ϕ(y)dy∇Z(η)=∇∫h(y)eη⊤ϕ(y)dy=∫h(y)∇eη⊤ϕ(y)dy
这里能交换积分和导数的顺序,是基于自然参数空间 M M M满足Leibniz 法则的条件,即:
(1)积分域对参数的独立性:积分上界和下界(或积分域)不依赖于 η \eta η
(2)函数的连续可导性:被积函数及其对参数的导数在积分域内连续。
(3)积分收敛性:积分必须在 η \eta η的定义域内收敛,且导数交换后仍保持收敛。
继续计算:
∇ e η ⊤ ϕ ( y ) = ϕ ( y ) e η ⊤ ϕ ( y ) ∇ Z ( η ) = ∫ h ( y ) ϕ ( y ) e η ⊤ ϕ ( y ) d y \nabla e^{\eta^\top\phi(y)} = \phi(y)e^{\eta^\top\phi(y)} \\ \nabla Z(\eta) = \int h(y)\phi(y)e^{\eta^\top\phi(y)}dy ∇eη⊤ϕ(y)=ϕ(y)eη⊤ϕ(y)∇Z(η)=∫h(y)ϕ(y)eη⊤ϕ(y)dy
注意,概率密度函数为:
p ( y ∣ η ) = h ( y ) exp [ η ⊤ ϕ ( y ) − A ( η ) ] = h ( y ) e η ⊤ ϕ ( y ) Z ( η ) p(y|\eta) = h(y)\text{exp}[\eta^\top\phi(y) - A(\eta)] = \frac{h(y)e^{\eta^\top\phi(y)}}{Z(\eta)} p(y∣η)=h(y)exp[η⊤ϕ(y)−A(η)]=Z(η)h(y)eη⊤ϕ(y)
于是:
∇ Z ( η ) = ∫ h ( y ) ϕ ( y ) e η ⊤ ϕ ( y ) d y = ∫ p ( y ∣ η ) Z ( η ) ϕ ( y ) d y ∇ A ( η ) = 1 Z ( η ) ∇ Z ( η ) = ∫ p ( y ∣ η ) ϕ ( y ) d y = E [ ϕ ( y ) ] \nabla Z(\eta) = \int h(y)\phi(y)e^{\eta^\top\phi(y)}dy = \int p(y|\eta)Z(\eta)\phi(y)dy \\ \nabla A(\eta) = \frac{1}{Z(\eta)}\nabla Z(\eta) = \int p(y|\eta)\phi(y)dy = \mathbb{E}[\phi(y)] ∇Z(η)=∫h(y)ϕ(y)eη⊤ϕ(y)dy=∫p(y∣η)Z(η)ϕ(y)dy∇A(η)=Z(η)1∇Z(η)=∫p(y∣η)ϕ(y)dy=E[ϕ(y)]
当然我们也可以进一步推出 A ( η ) A(\eta) A(η)的二阶梯度为 Cov [ ϕ ( y ) ] \text{Cov}[\phi(y)] Cov[ϕ(y)]即充分统计量的协方差。
凸性
通过 Hölder 不等式可以证明 A ( η ) A(\eta) A(η)的凸性,这一性质表明 A ( η ) A(\eta) A(η)的二阶导数(Hessian 矩阵)是非负定矩阵,这在优化(如最大似然估计)中非常重要。凸性确保了参数估计过程(如梯度下降)有唯一的最优解。
Hölder 不等式指出:
∥ f g ∥ 1 ≤ ∥ f ∥ p ∥ g ∥ q p , q ∈ [ 1 , + ∞ ) , s.t. 1 p + 1 q = 1 ∥ f ∥ p = ( ∫ ∣ f ( y ) ∣ p d y ) 1 / p \|fg\|_1 \le \|f\|_p \|g\|_q \\ p, q \in [1, +\infty), \text{s.t. }\frac{1}{p} + \frac{1}{q} = 1 \\ \|f\|_p = \left( \int |f(y)|^p dy \right)^{1/p} ∥fg∥1≤∥f∥p∥g∥qp,q∈[1,+∞),s.t. p1+q1=1∥f∥p=(∫∣f(y)∣pdy)1/p
要证明 A ( η ) A(\eta) A(η)的凸性,只要证:
θ = λ η 1 + ( 1 − λ ) η 2 A ( θ ) ≤ λ A ( η 1 ) + ( 1 − λ ) A ( η 2 ) ⇒ Z ( θ ) ≤ Z ( η 1 ) λ ⋅ Z ( η 2 ) 1 − λ \theta = \lambda \eta_1 + (1-\lambda)\eta_2 \\ A(\theta) \le \lambda A(\eta_1) + (1-\lambda)A(\eta_2) \\ \Rightarrow Z(\theta) \le Z(\eta_1)^\lambda \cdot Z(\eta_2)^{1-\lambda} θ=λη1+(1−λ)η2A(θ)≤λA(η1)+(1−λ)A(η2)⇒Z(θ)≤Z(η1)λ⋅Z(η2)1−λ
为了应用Hölder 不等式,取 p = 1 λ , q = 1 1 − λ p = \frac{1}{\lambda}, q = \frac{1}{1-\lambda} p=λ1,q=1−λ1,则:
Z ( θ ) = ∫ h ( y ) exp [ θ ⊤ ϕ ( y ) ] d y = ∫ h ( y ) λ + 1 − λ exp [ η 1 ⊤ ϕ ( y ) ] λ exp [ η 2 ⊤ ϕ ( y ) ] 1 − λ d y Z(\theta) = \int h(y)\text{exp }[\theta^\top\phi(y)]dy = \int h(y)^{\lambda + 1 - \lambda}\text{exp }[\eta^\top_1\phi(y)]^{\lambda}\text{exp }[\eta^\top_2\phi(y)]^{1-\lambda}dy Z(θ)=∫h(y)exp [θ⊤ϕ(y)]dy=∫h(y)λ+1−λexp [η1⊤ϕ(y)]λexp [η2⊤ϕ(y)]1−λdy
取
f ( y ) = [ h ( y ) exp ( η 1 ⊤ ϕ ( y ) ) ] λ g ( y ) = [ h ( y ) exp ( η 2 ⊤ ϕ ( y ) ) ] 1 − λ f(y) = [h(y)\text{exp }(\eta_1^\top \phi(y))]^{\lambda} \\ g(y) = [h(y)\text{exp }(\eta_2^\top \phi(y))]^{1-\lambda} f(y)=[h(y)exp (η1⊤ϕ(y))]λg(y)=[h(y)exp (η2⊤ϕ(y))]1−λ
则
Z ( θ ) = ∫ f ( y ) g ( y ) d y ≤ ( ∫ f ( y ) 1 λ d y ) λ ( ∫ g ( y ) 1 1 − λ d y ) 1 − λ = Z ( η 1 ) λ ⋅ Z ( η 2 ) 1 − λ Z(\theta) = \int f(y)g(y)dy \le \left( \int f(y)^{\frac{1}{\lambda}} dy \right)^{\lambda}\left( \int g(y)^{\frac{1}{1-\lambda}} dy \right)^{1-\lambda} = Z(\eta_1)^\lambda \cdot Z(\eta_2)^{1-\lambda} Z(θ)=∫f(y)g(y)dy≤(∫f(y)λ1dy)λ(∫g(y)1−λ1dy)1−λ=Z(η1)λ⋅Z(η2)1−λ
两端同时取 ln \text{ln} ln,即得到了 A ( η ) A(\eta) A(η)是凸函数。
GLMs 广义线性模型
GLM 是一种统一的建模框架,扩展了线性回归和逻辑回归,能够处理不同类型的响应变量(如连续、二分类、计数数据等)。通过指数族分布和链接函数建立了 GLM 的理论基础。
定义
GLM 的核心思想是将线性模型与指数族分布结合起来,通过以下三个步骤定义:
(1)自然参数与输入的线性关系: η = x ⊤ w \eta = x^\top w η=x⊤w
(2)条件均值通过自然参数确定: μ = E [ y ∣ x ; w ] = f ( η ) \mu = \mathbb{E}[y|x;w] = f(\eta) μ=E[y∣x;w]=f(η)
(3)响应变量服从指数族分布: y ∼ Expotential Family ( μ ) y \sim \text{Expotential Family}(\mu) y∼Expotential Family(μ)
结合上述步骤,GLM 的条件概率模型为
p ( y ∣ x ; w ) = h ( y ) exp [ η ⊤ ϕ ( y ) − A ( η ) ] , η = x ⊤ w p(y|x;w) = h(y)\text{exp}[\eta^\top\phi(y) - A(\eta)], \eta = x^\top w p(y∣x;w)=h(y)exp[η⊤ϕ(y)−A(η)],η=x⊤w
均值 μ = E [ ϕ ( y ) ] = ∇ A ( η ) \mu = \mathbb{E}[\phi(y)] = \nabla A(\eta) μ=E[ϕ(y)]=∇A(η),通过连接函数与 η \eta η关联。
GLM 的负对数似然估计
为了估计参数 w w w,GLM使用最大似然估计(MLE),即最小化负对数似然。给定 N N N个独立样本 { ( x n , y n ) } n = 1 N \left\{(x_n, y_n)\right\}_{n=1}^N {(xn,yn)}n=1N,负对数似然为:
L ( w ) = − 1 N ∑ N n = 1 ln p ( y n ∣ x n ; w ) \mathcal{L}(w) = -\frac{1}{N}\underset{n=1}{\overset{N}{\sum}}\text{ln }p(y_n|x_n;w) L(w)=−N1n=1∑Nln p(yn∣xn;w)
代入指数族形式:
L ( w ) = − 1 N ∑ N n = 1 [ ln h ( y n ) + η n ϕ ( y n ) − A ( η n ) ] , η n = x n ⊤ w \mathcal{L}(w) = -\frac{1}{N}\underset{n=1}{\overset{N}{\sum}}[\text{ln }h(y_n) + \eta_n \phi(y_n) - A(\eta_n)], \eta_n = x_n^\top w L(w)=−N1n=1∑N[ln h(yn)+ηnϕ(yn)−A(ηn)],ηn=xn⊤w
计算梯度:
∇ L ( w ) = − 1 N ∑ N n = 1 [ ϕ ( y n ) ∇ η n − ∇ A ( η n ) ] ∇ η n = ∇ ( x n T w ) = x n ∇ A ( η n ) = E [ ϕ ( y ) ] ∇ η n = μ n x n = g − 1 ( η n ) x n \nabla \mathcal{L}(w) = -\frac{1}{N}\underset{n=1}{\overset{N}{\sum}}[\phi(y_n)\nabla\eta_n - \nabla A(\eta_n)] \\ \nabla \eta_n = \nabla(x_n^T w) = x_n \\ \nabla A(\eta_n) = \mathbb{E}[\phi(y)]\nabla \eta_n = \mu_nx_n = g^{-1}(\eta_n)x_n ∇L(w)=−N1n=1∑N[ϕ(yn)∇ηn−∇A(ηn)]∇ηn=∇(xnTw)=xn∇A(ηn)=E[ϕ(y)]∇ηn=μnxn=g−1(ηn)xn
于是:
∇ L ( w ) = 1 N ∑ N n = 1 x n [ g − 1 ( η n ) − ϕ ( y n ) ] = 1 N X ⊤ [ g − 1 ( X w ) − ϕ ( y ) ] \nabla \mathcal{L}(w) = \frac{1}{N}\underset{n=1}{\overset{N}{\sum}}x_n[g^{-1}(\eta_n) - \phi(y_n)] = \frac{1}{N}X^\top[g^{-1}(Xw) - \phi(y)] ∇L(w)=N1n=1∑Nxn[g−1(ηn)−ϕ(yn)]=N1X⊤[g−1(Xw)−ϕ(y)]