使用 Gensim 运行 LDA
在真实语料库上拟合主题
使用 Gensim 运行 LDA 是 CoddyKit 上的免费 NLP Academy 课时。 这是第 3 节课,共 4 节。 你可以在下方免费阅读本课时的完整内容 — 然后在浏览器中使用内置代码编辑器和全天候 AI 导师进行实践。 这是 NLP Academy 学习路径的一部分,你的进度在网页和 CoddyKit 应用中同步。 NLP Academy 课程共包含 4 节课。
认识 Gensim
Gensim 是一个专为主题建模打造的 Python 库。它让您能够快速、轻松地在真实文本上运行 LDA。🐍
from gensim import corpora, models从词元开始
Gensim 要求每篇文档都是由干净词元组成的列表。您需要提供已经转换为小写且去除停用词的词语列表。
docs = [["price", "refund"], ["battery", "screen"]]构建词典
Gensim 的 Dictionary 会将每个不重复的词映射到一个整数 ID。LDA 处理的是这些 ID,而不是原始字符串。
dictionary = corpora.Dictionary(docs)创建语料库
将每篇文档转换为词袋:由词语 ID 和计数组成的键值对列表。这个列表就是您的语料库。📦
corpus = [dictionary.doc2bow(d) for d in docs]训练模型
现在拟合 LdaModel,并传入语料库、词典以及您希望它找出的主题数量。
lda = models.LdaModel(corpus, num_topics=2, id2word=dictionary)谨慎选择主题数量
主题数量是您最重要的选择。数量太少会将多个主题混在一起,数量太多则会把主题拆成噪声。
迭代次数越多,拟合越好
迭代次数参数决定 LDA 读取语料库的次数。增加几次迭代通常可以让主题更加清晰。
lda = models.LdaModel(corpus, num_topics=2, passes=10)查看主题
调用 print_topics,查看每个主题中权重最高的词语。这是您第一次了解 LDA 发现内容的机会。
for t in lda.print_topics():
print(t)评估新文档
将新的词袋传给模型,以获得它的主题分布,显示每个主题适用的程度。
lda[dictionary.doc2bow(["refund", "price"])]精简词典
使用 filter_extremes 删除极少见和极常见的词语。更干净的词汇表会带来更清晰的主题。🧹
dictionary.filter_extremes(no_below=2, no_above=0.5)设置随机种子
LDA 具有随机性。传入随机状态,即可让每次运行得到相同的主题,从而使结果可以复现。
lda = models.LdaModel(corpus, num_topics=2, random_state=42)快速检查
回忆一下在 Gensim 中训练 LDA 模型之前需要执行哪些步骤。
回顾
进行词元化,构建 Dictionary,创建词袋语料库,然后使用您选择的主题数量拟合 LdaModel。Gensim 会处理其余工作。✅
用 AI 导师学习 Python — 免费
在浏览器中编写并运行真实代码,获得全天候 AI 导师的即时帮助,并在网页或应用中继续学习。
- 课程
- 30
- 课程
- 120
常见问题解答
「使用 Gensim 运行 LDA」课时是免费的吗?
是的 — 「使用 Gensim 运行 LDA」的完整文本可在网页上免费阅读。要进行交互式练习(内置代码编辑器和全天候 AI 导师)并解锁 NLP Academy 课程的其余内容,请升级到 CoddyKit PRO。 NLP Academy 课程共包含 4 节课。
「使用 Gensim 运行 LDA」这节课中我会学到什么?
在真实语料库上拟合主题 你通过在浏览器中直接运行的动手代码来练习 NLP Academy,全天候 AI 导师会在你学习这节课的过程中回答你的问题。
学习 NLP Academy 需要有经验吗?
无需任何先前经验。CoddyKit 上的 NLP Academy 课程适合初学者到高级学习者,你可以从这里开始或从头开始,按照自己的节奏学习。 这是第 3 节课,共 4 节。
「使用 Gensim 运行 LDA」课时需要多长时间?
大多数 CoddyKit 课程大约需要 5–10 分钟。每节课都很精短且互动,所以你能稳步进步,并在网页和应用中从离开的地方继续。
我能在这节 NLP Academy 课中编写并运行代码吗?
能。每节 NLP Academy 课都包含内置代码编辑器,你可以在浏览器中直接编写并运行真实代码,并获得即时 AI 反馈 — 无需本地设置。
此课程中的所有课时
- 主题建模解决什么问题
- LDA 如何将词语归入主题
- 使用 Gensim 运行 LDA
- 解读并标注主题