BERTopic 如何获取前10个主题词的ctf-idf公式输入?

628mspwn  于 5个月前  发布在  其他
关注(0)|答案(1)|浏览(78)

你好,Maarten,

感谢你创建和维护BERTopic,它在我目前的工作中是一个非常有用的工具!
我想问一下,是否有可能为每个主题返回的前10个单词获取tf-idf公式的输入组件。也就是说,我希望得到每个主题词的前10个单词的实际值tf_{x,c} 、 f_{x}和A。为了完整性,以下是为什么我需要这些输入的原因,以防你想知道或者可以提供一个不需要tf_{x,c}的更简单的解决方案。
我在较小的代表性新闻数据上拟合了一个主题模型,并希望在另一个非常大的新闻数据库中使用搜索相似文章的前10个单词来跟踪每个主题的覆盖强度随时间的变化。由于其巨大的尺寸和因为我无法访问全文,因此在较大的数据上运行主题模型是不可行的。我只能提交文本查询并随着时间范围计算结果。由于主题簇中的每个文档都不包含前10个单词中的每一个,我想随机从前10个单词中抽取较小的组(例如元组或三元组),并根据它们的频率tf_{x,c}与它们成比例地绘制概率,然后将组内的单词用“AND”连接起来。然后通过OR连接几个这样的组,并提交包含至少一个随机组中所有单词的文章查询。

ctzwtxfj

ctzwtxfj1#

感谢您的赞美!
要实现这一点,您需要创建一些自定义功能来提取在训练BERTopic之后的特定参数。特别是,我建议您阅读并调整c-TF-IDF转换器以返回这些输入:https://github.com/MaartenGr/BERTopic/blob/master/bertopic/vectorizers/_ctfidf.py
您可以创建另一个仅执行此操作的函数,并仍然能够在训练过程中使用它。

相关问题