无限潜在广义线性模型:原理、实现与实验分析
立即解锁
发布时间: 2025-08-22 01:46:18 阅读量: 2 订阅数: 17 


网络时代的个性化标签推荐系统
### 无限潜在广义线性模型:原理、实现与实验分析
#### 1. 无限潜在广义线性模型(ILGLM)概述
ILGLM 假设在低维潜在变量 $z_n$ 的条件下,协变量 $x_n$ 和响应变量 $y_n$ 相互独立。潜在变量 $z_n$ 由指数族分布的狄利克雷过程混合生成,协变量 $x_n$ 通过潜在变量模型由 $z_n$ 生成,响应变量 $y_n$ 基于 $z_n$ 用合适的广义线性模型建模。具体的生成过程如下(组件数量 $K \to \infty$):
- $y_n|z_n, c_n, \theta_y \sim p_y(y|z_n, \theta_{c_n,y})$
- $x_n|z_n, c_n, \theta_x \sim p_x(x|z_n, \theta_{c_n,x})$
- $z_n|c_n, \theta_z \sim p_z(z| \theta_{c_n,z})$
- $c_n|\pi_{1:K} \sim Discrete(\pi_1, \ldots, \pi_K)$
- $\theta_k \sim G_0(\varphi)$
- $\pi_1, \ldots, \pi_K \sim Dir(\frac{\alpha}{K}, \ldots, \frac{\alpha}{K})$
其联合概率分布为:
$p(X, Y, Z, C, \theta) = \prod_{n=1}^{N} p_z(z_n|c_n, \theta_z)p_x(x_n|c_n, z_n, \theta_x)p_y(y_n|c_n, z_n, \theta_y) \prod_{k=1}^{K} p_{\theta}(\theta_{k,x}, \theta_{k,y}, \theta_{k,z})$
#### 2. 半监督扩展
许多数据集可能缺乏标记数据,未标记数据可用于增强模型参数 $\theta_x$ 和 $\theta_z$ 的训练。将 ILGLM 扩展到半监督形式,引入未标记协变量矩阵 $U$、潜在矩阵 $H$ 和指示向量 $V$。纳入未标记数据后,联合概率分布变为:
$p(X, Y, Z, C, H, V, \theta) = \prod_{n=1}^{N} p_z(z_n|c_n, \theta_z)p_x(x_n|c_n, z_n, \theta_x)p_y(y_n|c_n, z_n, \theta_y) \prod_{n=1}^{N_1} p_z(h_n|v_n, \theta_z)p_x(u_n|v_n, h_n, \theta_x) \prod_{k=1}^{K} p_{\theta}(\theta_{k,x}, \theta_{k,y}, \theta_{k,z})$
#### 3. 预测分布
根据贝叶斯定理,新数据 $x$ 的预测分布为:
$p(y|x, X, Y, U) = \int p(y, z|x, \theta)p(\theta|X, Y, U)dzd\theta$
然而,精确评估该分布不可行,因为 $p(\theta|X, Y, U)$ 包含难以处理的边际似然 $p(X, Y, U)$,且 $p(y, z|x, \theta)$ 和 $p(\theta|X, Y, U)$ 的卷积也可能难以处理。不过,可以基于变分方法或 MCMC 进行近似推断,后续将通过吉布斯采样进行演示。
#### 4. 无限潜在多项逻辑回归(ILMNL)
ILMNL 是 ILGLM 在半监督分类场景下的一个示例。
##### 4.1 ILMNL 公式
- 潜在变量 $z_n$ 由多元高斯分布生成:$p_z(z_n|c_n, \theta_z) = N(z_n|\mu_{c_n}, \lambda_{c_n}^{-1})$
- 协变量 $x_n$ 基于 $z_n$ 和 $c_n$ 的分布:$p_x(x_n|z_n, c_n, \theta_x) = N(x_n|Az_n, \Lambda^{-1})$,其中 $\theta_x$ 由所有组件共享,$A$ 是 $D \times d$ 加载矩阵,$\Lambda$ 是对角噪声精度矩阵。
- 响应变量 $y_n$ 基于 $z_n$ 和 $c_n$ 用多项逻辑回归建模:$p_y(y_n|z_n, c_n, \theta_y) = \frac{\exp(b_{c_n,y_n} + w_{c_n,y_n}^Tz_n)}{\sum_{m=1}^{M} \exp(b_{c_n,m} + w_{c_n,m}^Tz_n)}$
其生成过程总结如下:
1. 从 Gamma 分布 $\Gamma(\alpha_1, \beta_1)$ 独立生成 $d$ 个随机样本 $\{\tau_{A1}, \ldots, \tau_{Ad}\}$。
2. 按列生成加载矩阵 $A$,每列 $A_{:,col} \sim N(0, \tau_{A_{col}}^{-1}I_D)$。
3. 生成对角噪声精度矩阵 $\Lambda$,每个对角元素 $\Lambda_{i,i}$ 从 $\Gamma(\alpha_2, \beta_2)$ 生成。
4. 生成 $K$ 个混合比例 $\{\pi_1, \ldots, \pi_K\}$,$\pi_k \sim Dir(\frac{\alpha}{K}, \ldots, \frac{\alpha}{K})$。
5. 从 $\Gamma(\alpha_3, \beta_3)$ 生成 $d$ 个随机样本 $\{\tau_{W1}, \ldots, \tau_{Wd}\}$。
6. 从 $\Gamma(\alpha_4, \beta_4)$ 生成 $d$ 个随机样本 $\{\tau_{b1}, \ldots, \tau_{bd}\}$。
7. 按行生成多项逻辑回归的参数 $\{(W_1, b_1), \ldots, (W_K, b_K)\}$,每行 $W_{:,row} \sim N(0, \tau_{W_{row}}^{-1}I_M)$ 和 $b_{:,row} \sim N(0, \tau_{b_{row}}^{-1}I_M)$。
8. 从共轭先验高斯 - 威沙特分布生成多元高斯的参数 $\{(\mu_1, \lambda_1), \ldots, (\mu_K, \lambda_K)\}$,$(\mu_k, \lambda_k) \sim N(\mu_k|\mu_0, (\kappa_0\lambda_k)^{-1})W(\lambda_k|T_0, \nu_0)$。
9. 为标记数据生成指示向量 $C$,$c_n \sim Discrete(\pi_1, \ldots, \pi_K)$,以同样方式为未标记数据生成指示向量 $V$。
10. 为标记数据生成潜在协变量矩阵 $Z$,$z_n \sim N(\mu_{c_n}, \lambda_{c_n}^{-1})$,以同样方式为未标记数据生成潜在协变量矩阵 $H$。
11. 为标记数据生成协变量矩阵 $X$,$x_n \sim N(Az_n, \Lambda^{-1})$,以同样方式为未标记数据生成协变量矩阵 $U$。
12. 为标记数据生成响应变量向量 $Y$,$y_n \sim \arg \max_m (b_{c_n,m} + w_{c_n,m}^Tz_n)$。
##### 4.2 推理
由于后验分布 $p(\theta|X, Y, U)$ 和预测分布 $p(y|x, X, Y, U)$ 的评估在解析上不可行,使用吉布斯采样从 $p(\theta|X, Y, U)$ 采样,并通过在这些样本上评估的有限和来近似 $p(y|x, X, Y, U)$。ILMNL 算法如下:
```plaintext
Input:
max number of iterations iterMax
number of accepted samples S;
step size esp and frog Leap L for HMC;
hyper - parameters Hθ.
Output:
predicative distribution for each test data point
1: initialize model parameters θ,
```
0
0
复制全文
相关推荐








