视觉词模型:从潜在狄利克雷分配到星座模型
1. 潜在狄利克雷分配(Latent Dirichlet Allocation)
潜在狄利克雷分配是一种用于处理包含离散词集图像的密度模型。其学习目标是基于一组训练数据 ${f_{ij}} {i = 1,j = 1}^{I,J_i}$ 来估计每个训练图像的部分概率 ${\pi_i} {i = 1}^{I}$ 以及每个部分的词概率 ${\lambda_m}_{m = 1}^{M}$,其中 $J_i$ 表示第 $i$ 个图像中找到的词的数量。
若已知隐藏部分标签 ${p_{ij}}
{i = 1,j = 1}^{I,J_i}$ 的值,学习未知参数会很容易。采用特定方法,精确表达式如下:
$\hat{\pi}
{im} = \frac{\sum_{j} \delta[p_{ij} - m] + \alpha}{\sum_{j,m} \delta[p_{ij} - m] + M\alpha}$
$\hat{\lambda}
{mk} = \frac{\sum
{i,j} \delta[p_{ij} - m]\delta[f_{ij} - k] + \beta}{\sum_{i,j,k} \delta[p_{ij} - m]\delta[f_{ij} - k] + K\beta}$
然而,我们并不知道这些部分标签,所以不能使用这种直接方法。一种可能的方法是采用 EM 算法,但由于第 $i$ 个图像中的所有部分标签 ${p_{ij}}_{j = 1}^{J_i}$ 在图形模型中共享一个父节点 $\pi_i$,它们并非独立的,理论上计算其联合后验分布不切实际。
因此,我们的策略分为以下三步:
1. 写出部分标签的后验分布表达式。
2. 开发一种马尔可夫链蒙特卡罗(MCMC)方法从该分布中抽取样本。
3. 使用这些样本估计参数。
1.1 部分标签的后验分布
部分标签 $p = {p_{ij}}
{i = 1,j = 1}^{I,J_i}$ 的后验分布通过贝叶斯规则计算:
$Pr(p|f) = \frac{Pr(f|p)Pr(p)}{\sum
{f} Pr(f|p)Pr(p)}$
其中 $f = {f_{ij}}_{i = 1,j = 1}^{I,J_i}$ 表示观察到的词。
分子中的两项分别依赖于词概率 ${\lambda_m}
{m = 1}^{M}$ 和部分概率 ${\pi_i}
{i = 1}^{I}$。由于这些量都有共轭先验,我们可以对它们进行边缘化并将其从计算中完全移除。因此,似然 $Pr(f|p)$ 可写为:
$Pr(f|p) = \int \prod_{i = 1}^{I} \prod_{j = 1}^{J_i} Pr(f_{ij}|p_{ij},\lambda_{1…M})Pr(\lambda_{1…M}) d\lambda_{1…M}$
$= \left(\frac{\Gamma[K\beta]}{\Gamma[\beta]^K}\right)^M \prod_{m = 1}^{M} \frac{\prod_{k = 1}^{K} \Gamma[\sum_{i,j} \delta[f_{ij} - k]\delta[p_{ij} - m] + \beta]}{\Gamma[\sum_{i,j,k} \delta[f_{ij} - k]\delta[p_{ij} - m] + K\beta]}$
先验可写为:
$Pr(p) = \prod_{i = 1}^{I} \int \prod_{j = 1}^{J_i} Pr(p_{ij}|\pi_i)Pr(\pi_i) d\pi_i$
$= \left(\frac{\Gamma[M\alpha]}{\Gamma[\alpha]^M}\right)^I \prod_{i = 1}^{I} \frac{\prod_{m = 1}^{M} \Gamma[\sum_{j} \delta[p_{ij} - m] + \alpha]}{\Gamma[\sum_{j,m} \delta[p_{ij} - m] + M\alpha]}$
不幸的是,我们无法计算上述贝叶斯规则分母中的值,因为这涉及对词标签 $f$ 的所有可能分配进行求和。因此,我们只能计算部分标签 $p$ 的后验概率,且存在一个未知的缩放因子。
1.2 从后验分布中抽取样本
为了取得进展,我们使用吉布斯采样(Gibbs sampling)方法从后验分布中生成一组样本 ${p^{[1]}p^{[2]},…,p^{[T]}}$。具体来说,我们依次更新每个部分标签 $p_{ij}$。计算当前部分标签的后验概率(假设其他标签固定),然后从该分布中抽取样本。重复此过程为每个部分标签生成 $p$ 的新样本。
单个部分标签(假设其他标签固定)的后验概率有 $M$ 个元素,计算如下:
$Pr(p_{ij} = m|p_{\backslash ij},f) = \frac{Pr(p_{ij} = m,p_{\backslash ij},f)}{\sum_{m = 1}^{M} Pr(p_{ij} = m,p_{\backslash ij},f)}$
实际中,简化后的表达式为:
$Pr(p_{ij} = m|p_{\backslash ij},f) \propto \left(\frac{\sum_{a,b\backslash i,j} \delta[f_{ab} - f_{ij}]\delta[p_{ab} - m] + \beta}{\sum_{k} \sum_{a,b\backslash i,j} \delta[f_{ab} - k]\delta[p_{ab} - m] + K\beta}\right) \times \left(\frac{\sum_{b\backslash j} \delta[p_{ib} - m] + \alpha}{\sum_{m} \sum_{b\backslash j} \delta[p_{ib} - m] + M\alpha}\right)$
该表达式有简单的解释:第一项是在部分 $p_{ij} = m$ 的情况下观察到词 $f_{ij}$ 的概率;第二项是部分 $m$ 在当前文档中出现的比例。
抽样过程如下:
1. 初始化部分标签 ${p_{ij}}_{i = 1,j = 1}^{I,J_i}$。
2. 依次交替更新每个部分标签。
3. 经过合理的预热期(对所有变量进行数千次迭代)后,得到的样本可假定是从后验分布中抽取的。
4. 从该链中选取一个子集样本,每个样本之间保持合理距离以确保相关性较低。
1.3 使用样本估计参数
最后,使用以下表达式估计未知参数:
$\hat{\pi}
{im} = \frac{\sum
{t,j} \delta[p^{[t]}
{ij} - m] + \alpha}{\sum
{t,j,m} \delta[p^{[t]}
{ij} - m] + M\alpha}$
$\hat{\lambda}
{mk} = \frac{\sum_{t,i,j} \delta[p^{[t]}
{ij} - m]\delta[f
{ij} - k] + \beta}{\sum_{t,i,j,k} \delta[p^{[t]}
{ij} - m]\delta[f
{ij} - k] + K\beta}$
2. 无监督对象发现
上述模型可用于分析一组图像的结构。将该模型应用于包含多个不同对象类别的未标记数据集,拟合后,每个图像被建模为部分的混合,我们可以估计每个图像的混合权重 $\lambda_i$。然后根据这些混合中的主导部分对图像进行聚类。对于小数据集,这种方法可以高精度地分离不同的对象类,从而实现未标记数据集中对象类别的发现。
3. 单作者 - 主题模型(Single Author - Topic Model)
单作者 - 主题模型是潜在狄利克雷分配的扩展,假设每个图像中只有一个对象,该对象的身份由标签 $w_i \in {1…N}$ 表示。在该模型中,同一对象的每个图像包含相同的部分概率:
$Pr(p_{ij}|w_i = n) = Cat_{p_{ij}}[\pi_n]$
$Pr(f_{ij}|p_{ij}) = Cat_{f_{ij}}[\lambda_{p_{ij}}]$
为完善模型,我们为未知参数 ${\pi_n}
{n = 1}^{N}$ 和 ${\lambda_m}
{m = 1}^{M}$ 添加狄利克雷先验:
$Pr(\pi_n) = Dir_{\pi_n}[\alpha]$
$Pr(\lambda_m) = Dir_{\lambda_m}[\beta]$
3.1 学习过程
学习过程与潜在狄利克雷分配类似。给定一组 $I$ 个图像,每个图像有已知的对象标签 $w_i \in {1…N}$ 和一组视觉词 ${f_{ij}} {j = 1}^{J_i}$。若知道与每个词相关的隐藏部分标签 $p {ij}$,估计每个对象的部分概率 ${\pi_n} {n = 1}^{N}$ 和每个部分的词概率 ${\lambda_m} {m = 1}^{M}$ 会很容易。
部分标签的后验分布通过贝叶斯规则计算:
$Pr(p|f,w) = \frac{Pr(f|p)Pr(p|w)}{\sum_{f} Pr(f|p)Pr(p|w)}$
似然项 $Pr(f|p)$ 与潜在狄利克雷分配相同,先验项为:
$Pr(p|w) = \int \prod_{i = 1}^{I} \prod_{j = 1}^{J_i} Pr(p_{ij}|w_i,\pi_{1…N})Pr(\pi_{1…N}) d\pi_{1…N}$
$= \left(\frac{\Gamma[M\alpha]}{\Gamma[\alpha]^M}\right)^N \prod_{n = 1}^{N} \frac{\prod_{m = 1}^{M} \Gamma[\sum_{i,j} \delta[p_{ij} - m]\delta[w_i - n] + \alpha]}{\Gamma[\sum_{i,j,m} \delta[p_{ij} - m]\delta[w_i - n] + M\alpha]}$
同样,我们无法计算贝叶斯规则的分母,因此使用吉布斯采样方法。从每个边际后验依次抽取样本 $p^{[1]} …p^{[T]}$,计算单个部分标签后验概率的近似表达式为:
$Pr(p_{ij} = m|p_{\backslash ij},f,w_i = n) \propto \left(\frac{\sum_{a,b\backslash i,j} \delta[f_{ab} - f_{ij}]\delta[p_{ab} - m] + \beta}{\sum_{k} \sum_{a,b\backslash i,j} \delta[f_{ab} - k]\delta[p_{ab} - m] + K\beta}\right) \times \left(\frac{\sum_{a,b\backslash i,j} \delta[p_{ab} - m]\delta[w_i - n] + \alpha}{\sum_{m} \sum_{a,b\backslash i,j} \delta[p_{ab} - m]\delta[w_i - n] + M\alpha}\right)$
最后,使用以下关系估计未知参数:
$\hat{\pi}
{nm} = \frac{\sum
{t,i,j} \delta[p^{[t]}
{ij} - m]\delta[w_i - n] + \alpha}{\sum
{t,i,j,m} \delta[p^{[t]}
{ij} - m]\delta[w_i - n] + M\alpha}$
$\hat{\lambda}
{mk} = \frac{\sum_{t,i,j} \delta[p^{[t]}
{ij} - m]\delta[f
{ij} - k] + \beta}{\sum_{t,i,j,k} \delta[p^{[t]}
{ij} - m]\delta[f
{ij} - k] + K\beta}$
3.2 推理过程
在推理中,我们使用以下公式计算新图像数据 $f = {f_j}
{j = 1}^{J}$ 在每个可能对象 $w \in {1…N}$ 下的似然:
$Pr(f|w = n) = \prod
{j = 1}^{J} \sum_{p_j = 1}^{M} Pr(p_j|w = n)Pr(f_j|p_j) = \prod_{j = 1}^{J} \sum_{p_j = 1}^{M} Cat_{p_j}[\pi_n]Cat_{f_j}[\lambda_{p_j}]$
然后定义合适的先验 $Pr(w)$ 并使用贝叶斯规则计算后验分布:
$Pr(w = n|f) = \frac{Pr(f|w = n)Pr(w = n)}{\sum_{n = 1}^{N} Pr(f|w = n)Pr(w = n)}$
以下是潜在狄利克雷分配学习过程的 mermaid 流程图:
graph TD;
A[开始] --> B[初始化部分标签];
B --> C[计算后验概率];
C --> D[抽取样本];
D --> E{是否达到预热期};
E -- 否 --> C;
E -- 是 --> F[选取样本子集];
F --> G[估计参数];
G --> H[结束];
通过上述内容,我们详细介绍了潜在狄利克雷分配和单作者 - 主题模型的学习、推理过程以及无监督对象发现的方法。这些模型在处理图像数据中的离散词集方面具有重要应用。
4. 星座模型(Constellation Models)
单作者 - 主题模型对物体的描述仍较为薄弱,因为它不包含空间信息。星座模型则是一类通过一组部分及其空间关系来描述物体的通用模型。这里,我们将开发一种扩展潜在狄利克雷分配模型的星座模型。
4.1 模型假设
我们假设部分的含义与之前相同,即它是共现词的聚类。但现在每个部分会在其关联的词上诱导出一个空间分布,我们用二维正态分布来建模:
$Pr(p_{ij}|w_i = n) = Cat_{p_{ij}}[\pi_n]$
$Pr(f_{ij}|p_{ij} = m) = Cat_{f_{ij}}[\lambda_m]$
$Pr(x_{ij}|p_{ij} = m) = Norm_{x_{ij}}[\mu_m,\Sigma_m]$
其中 $x_{ij} = [x_{ij},y_{ij}]^T$ 是第 $i$ 个图像中第 $j$ 个词的二维位置。
同样,我们为未知的分类参数定义狄利克雷先验:
$Pr(\pi_n) = Dir_{\pi_n}[\alpha]$
$Pr(\lambda_m) = Dir_{\lambda_m}[\beta]$
4.2 学习过程
如果我们知道部分分配 $p = {p_{ij}} {i = 1,j = 1}^{I,J_i}$,该模型的学习会很容易。因此,我们从给定观察到的词标签 $f = {f {ij}} {i = 1,j = 1}^{I,J_i}$、它们的关联位置 $X = {x {ij}} {i = 1,j = 1}^{I,J_i}$ 和已知对象标签 $w = {w_i} {i = 1}^{I}$ 的部分分配的后验分布 $Pr(p|f,X,w)$ 中抽取样本。
后验分布通过贝叶斯规则计算:
$Pr(p|f,X,w) = \frac{Pr(f,X|p)Pr(p|w)}{\sum_{p} Pr(f,X|p)Pr(p|w)}$
分子中的项可以计算,但分母包含指数级多项的难处理求和,这意味着后验分布无法以封闭形式计算,但我们仍可以计算任何特定分配 $p$ 的后验概率(存在一个未知的缩放因子),这足以使用吉布斯采样从分布中抽取样本。
先验概率 $Pr(p|w)$ 与之前相同,似然项 $Pr(f,X|p)$ 现在有一个额外的组件,因为词位置 $x_{ij}$ 需要与部分诱导的正态分布一致:
$Pr(f,X|p) = \int \prod_{i = 1}^{I} \prod_{j = 1}^{J_i} Pr(f_{ij}|p_{ij},\lambda_{1…M})Pr(\lambda_{1…M})Pr(x_{ij}|p_{ij},\mu_{1…M},\Sigma_{1…M}) d\lambda_{1…M}$
$= \left(\frac{\Gamma[K\beta]}{\Gamma[\beta]^K}\right)^M \prod_{m = 1}^{M} \frac{\prod_{k = 1}^{K} \Gamma[\sum_{i,j} \delta[f_{ij} - k]\delta[p_{ij} - m] + \beta]}{\Gamma[\sum_{i,j,k} \delta[f_{ij} - k]\delta[p_{ij} - m] + K\beta]} Norm_{x_{ij}}[\mu_{p_{ij}},\Sigma_{p_{ij}}]$
在吉布斯采样中,我们选择一个数据示例 ${f_{ij},x_{ij}}$,并在假设其他部分固定的情况下从后验分布中抽取样本。计算该后验的近似表达式为:
$Pr(p_{ij} = m|p_{\backslash ij},f,x_{ij},w_i = n) \propto \left(\frac{\sum_{a,b\backslash i,j} \delta[f_{ab} - f_{ij}]\delta[p_{ab} - m] + \beta}{\sum_{k} \sum_{a,b\backslash i,j} \delta[f_{ab} - k]\delta[p_{ab} - m] + K\beta}\right) Norm_{x_{ij}}[\tilde{\mu}
m, \tilde{\Sigma}_m] \times \left(\frac{\sum
{a,b\backslash i,j} \delta[p_{ab} - m]\delta[w_i - n] + \alpha}{\sum_{m} \sum_{a,b\backslash i,j} \delta[p_{ab} - m]\delta[w_i - n] + M\alpha}\right)$
其中 $\tilde{\mu}
m$ 和 $\tilde{\Sigma}_m$ 是忽略当前位置 $x
{ij}$ 贡献的与第 $m$ 个部分相关的所有词位置的均值和协方差。
学习过程结束后,概率使用以下关系计算:
$\hat{\pi}
{nm} = \frac{\sum
{t,i,j} \delta[p^{[t]}
{ij} - m]\delta[w_i - n] + \alpha}{\sum
{t,i,j,m} \delta[p^{[t]}
{ij} - m]\delta[w_i - n] + M\alpha}$
$\hat{\lambda}
{mk} = \frac{\sum_{t,i,j} \delta[p^{[t]}
{ij} - m]\delta[f
{ij} - k] + \beta}{\sum_{t,i,j,k} \delta[p^{[t]}
{ij} - m]\delta[f
{ij} - k] + K\beta}$
部分位置计算如下:
$\hat{\mu}
m = \frac{\sum
{i,j,t} x_{ij}\delta[p^{[t]}
{ij} - m]}{\sum
{i,j,t} \delta[p^{[t]}
{ij} - m]}$
$\hat{\Sigma}_m = \frac{\sum
{i,j,t}(x_{ij} - \mu_m)^T (x_{ij} - \mu_m)\delta[p^{[t]}
{ij} - m]}{\sum
{i,j,t} \delta[p^{[t]}_{ij} - m]}$
学习结果示例显示,每个部分是词的空间局部聚类,通常对应于现实世界的对象,如“腿”或“轮子”。部分在对象之间共享,因此无需为自行车和摩托车的轮子学习不同的参数集。
4.3 星座模型学习步骤总结
- 初始化 :初始化部分标签 ${p_{ij}}_{i = 1,j = 1}^{I,J_i}$。
- 计算后验概率 :对于每个部分标签 $p_{ij}$,在假设其他标签固定的情况下,使用上述近似表达式计算其后验概率。
- 抽样 :从后验分布中抽取样本更新部分标签。
- 迭代 :重复步骤 2 和 3,经过合理的预热期。
- 参数估计 :使用抽取的样本估计概率参数 $\hat{\pi} {nm}$、$\hat{\lambda} {mk}$ 以及部分位置参数 $\hat{\mu}_m$ 和 $\hat{\Sigma}_m$。
模型比较
| 模型名称 | 空间信息 | 描述能力 | 应用场景 |
|---|---|---|---|
| 潜在狄利克雷分配 | 无 | 处理离散词集,不考虑空间关系 | 文本分析、图像分类初步处理 |
| 单作者 - 主题模型 | 无 | 假设每个图像一个对象,确定部分频率 | 文本和图像的主题分析 |
| 星座模型 | 有 | 通过部分及其空间关系描述对象 | 图像中物体的精细描述 |
总结
本文依次介绍了潜在狄利克雷分配、单作者 - 主题模型和星座模型。潜在狄利克雷分配是处理图像离散词集的基础模型,通过学习部分概率和词概率来建模图像。单作者 - 主题模型在此基础上,假设每个图像包含一个对象,进一步明确了对象与部分的关系。而星座模型则弥补了前两者缺乏空间信息的不足,通过引入部分的空间分布,更精确地描述了物体。这些模型在图像分析、物体识别等领域具有广泛的应用前景。未来,随着数据量的增加和计算能力的提升,这些模型有望在更复杂的场景中发挥更大的作用。
以下是星座模型学习过程的 mermaid 流程图:
graph TD;
A[开始] --> B[初始化部分标签];
B --> C[计算后验概率];
C --> D[抽取样本更新标签];
D --> E{是否达到预热期};
E -- 否 --> C;
E -- 是 --> F[估计概率和位置参数];
F --> G[结束];
这些模型各有特点,在不同的应用场景中可以根据需求进行选择和使用。对于需要考虑空间信息的图像分析任务,星座模型无疑是更好的选择;而对于只关注词频和主题的任务,潜在狄利克雷分配和单作者 - 主题模型则更为合适。
超级会员免费看
14

被折叠的 条评论
为什么被折叠?



