Kal*_*eem 9 nlp topic-modeling text-classification bert-language-model
我有一个数据集并尝试使用 berTopic 建模将其转换为主题,但问题是,我无法获取主题的所有文档。berTopic 每个主题仅返回 3 个文档。
topic_model = BERTopic(verbose=True, embedding_model=embedding_model,
nr_topics = 'auto',
n_gram_range = (3,3),
top_n_words = 10,
calculate_probabilities=True,
seed_topic_list = topic_list,
)
topics, probs = topic_model.fit_transform(docs_test)
representative_doc = topic_model.get_representative_docs(topic#1)
representative_doc
Run Code Online (Sandbox Code Playgroud)
该主题包含超过 300 个文档,但 bertopic 仅显示其中 3 个.get_representative_docs
小智 8
可能有更优雅的解决方案,因为我不是专家,但我可以分享对我有用的方法:
topics, probs = topic_model.fit_transform(docs_test)
Run Code Online (Sandbox Code Playgroud)
返回主题。
因此,您可以将此输出和文档结合起来。例如,使用以下方法将它们组合成 Pandas 数据框:
df = pd.DataFrame({'topic': topics, 'document': docs_test})
Run Code Online (Sandbox Code Playgroud)
现在,您可以针对每个主题过滤此数据框以识别引用文档:
topic_0 = df[df.topic == 0]
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6045 次 |
| 最近记录: |