在 Hugging Face 上使用 BERTopic
BERTopic 是一个主题建模框架,它利用 🤗 transformers 和 c-TF-IDF 来创建密集的聚类,从而在保持主题描述中重要词语的同时,生成易于解释的主题。
BERTopic 支持各种主题建模技术
引导式 | 监督式 | 半监督式 |
手动 | 多主题分布 | 分层 |
基于类别 | 动态 | 在线/增量 |
多模态 | 多方面 | 文本生成/LLM |
零样本 (新!) | 合并模型 (新!) | 种子词 (新!) |
在 Hub 上探索 BERTopic
您可以在 模型页面 的左侧筛选找到 BERTopic 模型。
托管在 Hub 上的 BERTopic 模型具有模型卡,其中包含有关模型的有用信息。由于 BERTopic 与 Hugging Face Hub 的集成,您可以使用几行代码加载 BERTopic 模型。您也可以使用 推理端点 部署这些模型。
安装
要开始使用,您可以遵循 BERTopic 安装指南。您也可以使用以下通过 pip 进行的一行安装
pip install bertopic
使用现有模型
所有 BERTopic 模型都可以轻松从 Hub 加载
from bertopic import BERTopic
topic_model = BERTopic.load("MaartenGr/BERTopic_Wikipedia")
加载后,您可以使用 BERTopic 的功能来预测新实例的主题
topic, prob = topic_model.transform("This is an incredible movie!")
topic_model.topic_labels_[topic]
这将给我们以下主题
64_rating_rated_cinematography_film
分享模型
当您创建了 BERTopic 模型后,您可以轻松地通过 Hugging Face Hub 与他人分享。为此,我们可以使用 push_to_hf_hub
函数,该函数允许我们直接将模型推送到 Hugging Face Hub
from bertopic import BERTopic
# Train model
topic_model = BERTopic().fit(my_docs)
# Push to HuggingFace Hub
topic_model.push_to_hf_hub(
repo_id="MaartenGr/BERTopic_ArXiv",
save_ctfidf=True
)
请注意,保存的模型不包含降维和聚类算法。这些算法被移除,因为它们仅在训练模型和查找相关主题时才需要。推断是通过主题和文档嵌入之间的直接余弦相似度来完成的。这不仅加快了模型速度,还使我们能够使用一个小型 BERTopic 模型进行操作。