Skip to content
知识

/knowledge/topic-modelling

主题建模

你有一万份文档,却没有时间读它们。主题建模替你读——发现贯穿整个集合的主题,无监督地,从不需要任何人告诉它要找什么。

学于
主题建模进阶 · 文本中的主题
时间
NLP 课程
应用于
看懂成堆的文档
阅读 / 复习
约 14 分钟阅读2026-06-26

想象一个装着一万份文档的文件夹——调查回应、报告、文章、情报笔记——没人有时间读它们。它们关于什么?什么主题贯穿其中,哪些文档共享哪些?主题建模正好回答这个:它是一族 无监督的方法,自动发现一个文本集合里潜在的主题(「话题」),不需要任何标签,也不需要 事先被告知要找什么。

它是一个真正独特的工具——不是分类(没有类别可预测),也不是一般的NLP——它是把聚类的想法用到文档上。这一页一步步建起经典的方法(LDA)、 如何读懂并评判它的输出,以及现代基于嵌入的继任者——连同那个诚实的警告:它找到的主题并不总是有意义的。

01

无标签地寻找主题

决定性的特征是它无监督:你不告诉它有哪些主题,它从文档间词共现的模式中发现它们。如果一组词——「预算」「赤字」「支出」「税」——在许多文档里不断一起出现,那个反复出现的词簇就是一个主题,一个人随后可以把它认出来是「财政政策」。模型找到统计结构;意义在于词如何 成组。

这使它成为面对任何大型、未读文本集合的天然第一步:在你能分析一个语料库之前,你需要知道里面有什么, 而主题建模给你那张地图。输出是两样相连的东西——存在哪些主题(作为词组),以及每份文档包含多少每个 主题。

02

文档作为词袋

经典的主题建模从词袋表示出发(与信息 检索同样的起点):一份文档被归约成它所含词的多重集,完全忽略顺序。「The cat sat」和「sat the cat」看起来一模一样。那听起来有损——确实是——但对于寻找主题,它出奇地 好用,因为一份文档的主题内容,主要由哪些词出现、出现多少次来承载,而非它们的顺序。主题 建模利用的,正是这种表示所保留的共现模式。

03

LDA:生成的故事

标准的方法是潜在狄利克雷分配(LDA)。它巧妙的一步,是想象一个文档如何被写出来的生成的故事,然后把它倒过来跑。这个故事有两个简单的想法:

  • 每个主题是一个在词上的分布(「财政政策」主题给「预算」「税」「赤字」很高的 概率)。
  • 每份文档是主题的一个混合(一篇新闻文章可能 70% 财政政策、20% 政治、10% 经济)。
文档主题
LDA 的两层结构。每份文档是主题的一个混合;每个主题是一个在词上的分布。LDA 只观测到词,并倒推出最能解释它们的隐藏主题与每份文档的混合。

LDA 只观测到词——主题和混合是潜在的(隐藏的)。它通过推断倒推,找到最能解释实际所见之词的 那组主题以及每份文档的混合。「狄利克雷」那部分只是那个先验,它鼓励每份文档关于少数几个主题、而非全部,这让结果保持可解释。要紧的是那个直觉:文档 = 主题的混合,主题 = 在词上的 分布,仅从共现推断而来。

04

解读主题

LDA 对每个主题的输出,是它最可能的词的一个排序列表——主题 4 可能是 {病人、医院、治疗、临床、护理}。那个关键而常被忽略的要点:模型并不给主题命名。它递给你词组;一个读 「病人、医院、治疗……」并把它标为「医疗保健」。主题建模是一个协助人来解读、而非取代人的 工具——它的价值在于快速浮现出结构,由分析师供给意义。在主题之外,你还得到每份文档的混合,这让你能在 整个集合里给主题打标、过滤和追踪。

05

多少个主题?艰难的选择

LDA 需要你事先指定主题的数量——而没有客观正确的答案,正是聚类里那个「选 k」的问题。太少,不同的主题会被搅在一起;太多,主题会碎裂成噪声和近乎重复的东西。

标准的指引是一个一致性分数,它度量一个主题的头部词在语义上有多相关——对一个人来说 它们是否真的「凑在一起」?你在一系列主题数量上计算一致性,找它在哪里达到峰值。但它是一个指引、而非 神谕:一致性通常上升、走平、然后下降,而最终的判断仍然落在「主题是否有用」这一人的判断上。 与聚类一样,主题的数量是一个你必须自己担起的建模决定,而非数据递给你的一个参数。

06

NMF 与神经的继任者

LDA 不是唯一的选择。非负矩阵分解(NMF)经由一条不同的路径达到相似的结果——把文档—词 矩阵分解成主题成分(与 PCA 和推荐器同一个矩阵分解家族),往往更快,在短文本上 有时更利落。

更大的转变是现代的、基于嵌入的方法——BERTopic 及同类——它把文档嵌入为捕捉意义的稠密向量,聚类那些向量,再从簇中导出主题。因为它理解意义、 而不只是词频,它对同义词和短文本处理得好得多,通常产出更一致的主题——代价是更高的计算成本。这就是 贯穿检索和一般 NLP 的那个「词袋 → 嵌入」的同样 的演进。

07

当主题是垃圾时

那些诚实的告诫,因为主题建模可能华而不实地骗人:

08

它在我工作中的体现

09

60 秒回顾

LDA 的生成框架、基于一致性的主题数量选择,以及 BERTopic 的对比,反映了当前的主题建模参考文献以及 NLP 课程。