You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何快速将BERTopic主题ID映射至40万条训练DataFrame?

高效获取BERTopic训练数据的主题映射

针对训练数据,完全不需要通过遍历调用transform来获取主题,直接利用BERTopic模型内部存储的训练数据主题结果即可,这能把处理时间从数日压缩到瞬间。

核心原理

BERTopic在fit_transform训练时,会把训练数据的主题存储在模型的topics_属性中;当你调用reduce_topics合并/减少主题后,这个属性会自动更新为调整后的新主题列表,完全不需要重新对每个文档做主题预测。

修正后的代码

topic_model = BERTopic()
# 训练模型并得到初始主题
_, _ = topic_model.fit_transform(docs)
# 减少主题数量,模型会自动更新训练数据的主题映射
topic_model.reduce_topics(docs, nr_topics=200)
# 直接将模型中存储的训练数据主题赋值给DataFrame
df['topics'] = topic_model.topics_

关键注意事项

  • 确保docs和df.texts的顺序完全一致,这样topic_model.topics_的每个元素才能对应DataFrame中对应行的文档。
  • 如果训练后对数据做过排序、过滤等操作,需要先对齐数据顺序再赋值,避免主题对应错误。

内容的提问来源于stack exchange,提问作者Vai

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.12 17:30:13