非负矩阵分解(Non-negative Matrix Factorization, NMF)的概率解释与最大似然估计
题目描述
我们讨论非负矩阵分解(NMF)的一种概率建模视角。假设我们有一个非负观测矩阵 \(V \in \mathbb{R}^{n \times m}_{\ge 0}\),NMF旨在将其分解为两个非负矩阵的乘积:\(V \approx WH\),其中 \(W \in \mathbb{R}^{n \times k}_{\ge 0}\),\(H \in \mathbb{R}^{k \times m}_{\ge 0}\),\(k\) 是给定的潜在维度(通常 \(k \ll \min(n, m)\))。从概率角度来看,我们可以假设观测矩阵 \(V\) 中的每个元素 \(v_{ij}\) 服从一个以 \((WH)_{ij}\) 为参数的泊松分布。这个概率模型为NMF提供了一个基于最大似然估计的推导框架,并可以自然导出乘性更新规则。我们将逐步讲解如何建立这个概率模型,推导其对数似然函数,并通过期望最大化(EM)算法的思想得到与经典乘性更新规则等价的迭代优化过程。
解题过程
- 概率模型建立
- 假设观测矩阵 \(V\) 的每个元素 \(v_{ij}\) 是独立的,且服从泊松分布,其概率质量函数为:
\[ P(v_{ij} | \lambda_{ij}) = \frac{\lambda_{ij}^{v_{ij}} e^{-\lambda_{ij}}}{v_{ij}!} \]
其中,泊松分布的参数 $ \lambda_{ij} $ 被建模为分解矩阵的乘积元素,即:
\[ \lambda_{ij} = (WH)_{ij} = \sum_{t=1}^{k} w_{it} h_{tj} \]
- 这里,\(W\) 和 \(H\) 是非负的,因此 \(\lambda_{ij} \ge 0\) 满足泊松分布参数的要求。这个假设适用于计数数据(如文档的词频、图像的像素强度等非负整数)。
- 对数似然函数
- 给定整个观测矩阵 \(V\),其似然函数是所有元素概率的乘积:
\[ P(V | W, H) = \prod_{i=1}^{n} \prod_{j=1}^{m} \frac{((WH)_{ij})^{v_{ij}} e^{-(WH)_{ij}}}{v_{ij}!} \]
- 取对数得到对数似然函数(忽略常数项):
\[ \mathcal{L}(W, H) = \sum_{i=1}^{n} \sum_{j=1}^{m} \left[ v_{ij} \log \left( \sum_{t=1}^{k} w_{it} h_{tj} \right) - \sum_{t=1}^{k} w_{it} h_{tj} \right] \]
- 我们的目标是找到非负矩阵 \(W\) 和 \(H\) 以最大化这个对数似然函数。由于对数内部有求和,直接优化困难,我们引入潜在变量来简化。
- 引入潜在变量与EM算法框架
- 我们引入一组潜在变量 \(z_{ijt} \ge 0\),满足:
\[ v_{ij} = \sum_{t=1}^{k} z_{ijt} \]
其中,每个 $ z_{ijt} $ 可以解释为观测 $ v_{ij} $ 中归属于第 $ t $ 个潜在成分的部分。在泊松分布的背景下,如果 $ v_{ij} \sim \text{Poisson}(\sum_t w_{it} h_{tj}) $,那么可以证明存在一组独立的潜在变量 $ z_{ijt} \sim \text{Poisson}(w_{it} h_{tj}) $,且 $ v_{ij} = \sum_t z_{ijt} $。
- 给定 \(v_{ij}\),潜在变量 \(\{z_{ijt}\}_{t=1}^k\) 的联合条件分布是一个多项分布:
\[ P(z_{ij1}, \dots, z_{ijk} | v_{ij}) = \frac{v_{ij}!}{\prod_{t=1}^{k} z_{ijt}!} \prod_{t=1}^{k} \left( \frac{w_{it} h_{tj}}{\sum_{s=1}^{k} w_{is} h_{sj}} \right)^{z_{ijt}} \]
其中,$ \sum_{t} z_{ijt} = v_{ij} $。这个关系允许我们在E步中计算 $ z_{ijt} $ 的期望。
- EM算法的E步:计算潜在变量的期望
- 在E步,我们需要计算完整数据对数似然关于潜在变量条件分布的期望。完整数据对数似然(包括 \(z_{ijt}\) )为:
\[ \mathcal{L}_c = \sum_{i,j,t} \left[ z_{ijt} \log(w_{it} h_{tj}) - w_{it} h_{tj} - \log(z_{ijt}!) \right] \]
- 在给定当前参数估计 \(W^{old}, H^{old}\) 和观测 \(v_{ij}\) 下,潜在变量 \(z_{ijt}\) 的条件期望为:
\[ \mathbb{E}[z_{ijt} | v_{ij}, W^{old}, H^{old}] = v_{ij} \cdot \frac{w_{it}^{old} h_{tj}^{old}}{\sum_{s=1}^{k} w_{is}^{old} h_{sj}^{old}} \]
记这个期望为 $ \hat{z}_{ijt} $。直观上,它将观测 $ v_{ij} $ 按当前模型下各成分的贡献比例分配给各潜在成分。
- EM算法的M步:最大化期望完整数据对数似然
- M步需要最大化关于 \(W, H\) 的期望完整数据对数似然(忽略常数项):
\[ Q(W, H) = \sum_{i,j,t} \left[ \hat{z}_{ijt} \log(w_{it} h_{tj}) - w_{it} h_{tj} \right] \]
- 分别对 \(w_{it}\) 和 \(h_{tj}\) 求导并设为零。例如,对 \(w_{it}\) 的偏导数为:
\[ \frac{\partial Q}{\partial w_{it}} = \sum_{j=1}^{m} \frac{\hat{z}_{ijt}}{w_{it}} - \sum_{j=1}^{m} h_{tj} = 0 \]
解得:
\[ w_{it} = \frac{\sum_{j=1}^{m} \hat{z}_{ijt}}{\sum_{j=1}^{m} h_{tj}} \]
- 类似地,对 \(h_{tj}\) 求导可得:
\[ h_{tj} = \frac{\sum_{i=1}^{n} \hat{z}_{ijt}}{\sum_{i=1}^{n} w_{it}} \]
- 但注意,这里 \(\hat{z}_{ijt}\) 依赖于 \(W^{old}\) 和 \(H^{old}\),而上式右边的分母也含有待优化的变量,因此这并非封闭解。然而,我们可以将上述方程重新整理,得到迭代更新公式。
- 导出乘性更新规则
- 将 \(\hat{z}_{ijt} = v_{ij} \cdot \frac{w_{it}^{old} h_{tj}^{old}}{(W^{old} H^{old})_{ij}}\) 代入 \(w_{it}\) 的表达式:
\[ w_{it} = w_{it}^{old} \cdot \frac{\sum_{j=1}^{m} \frac{v_{ij}}{(W^{old} H^{old})_{ij}} h_{tj}^{old}}{\sum_{j=1}^{m} h_{tj}} \]
- 但此时 \(h_{tj}\) 在分母中仍是未知的。为了得到封闭的迭代格式,一个常见的做法是采用“当前估计”来近似分母中的 \(h_{tj}\),即用 \(h_{tj}^{old}\) 代替分母中的 \(h_{tj}\),从而得到:
\[ w_{it}^{new} = w_{it}^{old} \cdot \frac{\sum_{j=1}^{m} \frac{v_{ij}}{(W^{old} H^{old})_{ij}} h_{tj}^{old}}{\sum_{j=1}^{m} h_{tj}^{old}} \]
- 同理,对 \(h_{tj}\) 可得:
\[ h_{tj}^{new} = h_{tj}^{old} \cdot \frac{\sum_{i=1}^{n} \frac{v_{ij}}{(W^{old} H^{old})_{ij}} w_{it}^{old}}{\sum_{i=1}^{n} w_{it}^{old}} \]
- 这两个更新公式正是经典NMF乘性更新规则(对应于用散度损失,这里泊松模型对应的是Kullback-Leibler散度)。它们保证了 \(W\) 和 \(H\) 的非负性(如果初始化为非负),且每次迭代单调增加对数似然(或等价地,减少KL散度)。
- 算法总结与解释
- 算法从随机非负初始化 \(W, H\) 开始,然后交替进行以下步骤直至收敛:
- E步:计算“比例分配”矩阵 \(\hat{Z}\),其中元素 \(\hat{z}_{ijt} = v_{ij} \cdot \frac{w_{it} h_{tj}}{\sum_s w_{is} h_{sj}}\)。
- M步:用上述乘性更新规则更新 \(W\) 和 \(H\)。
- 实际上,E步和M步可以合并,直接应用乘性更新规则迭代,而不显式计算 \(\hat{Z}\),这正是实践中常用的NMF-KL算法。
- 这个概率视角不仅提供了最大似然解释,还可以自然地扩展到考虑缺失值、加入正则化(如通过先验分布)等情况。
- 算法从随机非负初始化 \(W, H\) 开始,然后交替进行以下步骤直至收敛:
通过以上步骤,我们完成了NMF概率模型的构建、最大似然估计的推导,并展示了如何通过EM算法框架导出经典的乘性更新规则。这个推导揭示了NMF与泊松分布、KL散度最小化的内在联系,为其在处理计数数据时的有效性提供了理论依据。