真实面经题目 · 原创解析

LDA 是什么,Dirichlet 分布和共轭分布在主题模型中有什么作用?

LDA 是 Latent Dirichlet Allocation,用文档-主题分布和主题-词分布解释文本集合。Dirichlet 分布为多项分布参数提供先验,控制主题和词分布的稀疏程度;共轭性质让后验更新和 Gibbs 采样、变分推断更容易处理。

出现于:网易 · 算法

60 秒回答模板

LDA 是一种无监督主题模型,全称 Latent Dirichlet Allocation。它假设每篇文档是多个主题的混合,每个主题又是词的概率分布。生成文档时,先从 Dirichlet 先验采样文档的主题分布,再对每个词采样主题并从该主题的词分布中采样具体词。Dirichlet 分布的作用是作为多项分布参数的先验,控制主题分布和词分布是否稀疏;共轭分布的好处是先验和似然结合后后验形式仍容易处理,使参数更新、Collapsed Gibbs Sampling 和变分推断更简洁。

考点 两层混合
难度 真实面经题
回答目标 讲清原理、实现和边界

深入解析

01

模型定位

LDA 不是判别式文本分类模型,而是解释一批文档如何由潜在主题生成的概率模型。它把文档表示为主题的概率混合,把主题表示为词的概率分布,因此适合做主题发现、文本聚类、可解释文本表示和弱监督特征构造。

02

生成过程

对每篇文档,先从 Dirichlet 分布采样一个文档-主题分布 θ;对每个主题,先从 Dirichlet 分布采样一个主题-词分布 φ。生成某个词时,先根据 θ 采样该词所属主题 z,再根据对应主题的 φ 采样词 w。面试回答要能把 θ、φ、z、w 的关系讲顺。

03

Dirichlet 作用

Dirichlet 分布定义在概率单纯形上,天然适合给多项分布参数做先验。超参数 α 控制一篇文档倾向包含多少主题,β 控制一个主题倾向覆盖多少词;较小的 α 或 β 会鼓励更稀疏的分布,使文档主题或主题词更集中。

04

共轭优势

Dirichlet 是 Multinomial 或 Categorical 分布参数的共轭先验。共轭意味着观测到词和主题计数后,后验仍然是 Dirichlet 形式,只需要把计数加到先验参数上。这能显著简化后验推断,避免每一步都重新处理复杂积分。

05

推断方法

真实语料中主题分配 z 不可见,所以需要推断。Collapsed Gibbs Sampling 会积分掉 θ 和 φ,只反复采样每个词的主题分配;变分推断会用可计算的分布近似真实后验。两者都依赖计数、先验和共轭结构来降低计算复杂度。

06

回答边界

LDA 的 bag-of-words 假设忽略词序,主题数需要预先选择,短文本和语义强上下文任务上表现可能有限。工程使用时要关注分词质量、停用词、低频词过滤、主题数选择、主题一致性和下游任务指标,而不是只背生成公式。

易错点

  • 把 LDA 说成监督分类算法,没有说明它是潜在主题生成模型。
  • 只背 Dirichlet 名字,不说明它为什么适合作为多项分布参数的先验。
  • 把共轭分布解释成两个分布相同,忽略关键是后验与先验属于同一分布族。
  • 没有提到词序忽略、主题数选择和短文本稀疏这些使用边界。

面试官追问

LDA 中的 L、D、A 分别是什么意思?

L 是 Latent,表示主题变量不可观测;D 是 Dirichlet,表示文档-主题和主题-词分布使用 Dirichlet 先验;A 是 Allocation,表示为每个词分配潜在主题。

α 和 β 取小会发生什么?

较小的 α 会让一篇文档更集中在少数主题上;较小的 β 会让一个主题更集中在少数词上。取值过小也可能让主题过碎或对噪声敏感。

LDA 和 PLSA 的主要区别是什么?

PLSA 为每篇训练文档学习固定参数,较容易过拟合且对新文档处理不自然;LDA 引入 Dirichlet 先验,是完整生成模型,对新文档可以通过推断得到主题分布。

如何评估 LDA 主题质量?

可以看 perplexity、topic coherence、主题词可解释性、人工标注一致性和下游任务效果。只看困惑度不够,因为低困惑度不一定代表主题语义清晰。