【自然语言处理】主题建模:Top2Vec(理论篇)

主题建模:Top2Vec(理论篇)

Top2Vec 是一种用于 主题建模语义搜索 的算法。它自动检测文本中出现的主题,并生成联合嵌入的主题、文档和词向量。

算法基于的假设:许多语义相似的文档都可以由一个潜在的主题表示。首先,创建文档和词向量的联合嵌入。一旦文档和单词被嵌入到向量空间中,算法的目标就是找到密集的文档簇,然后找到是哪些单词将这些文档聚集在一起。每个密集区域即为一个主题,将文档聚拢到密集区域的词就是主题词。

1.联合嵌入

使用 Doc2VecUniversal Sentence EncoderBERT Sentence Transformer 创建文档和词向量的联合嵌入。

文档将被放置在靠近其他类似文档和靠近最有区别的词的地方。

在这里插入图片描述

2.降维

使用 UMAP 为文档向量的降维。高维空间中的文档向量非常稀疏,降维有助于找到密集区域。每个点都代表了一个文档向量。
在这里插入图片描述

3.聚类

使用 HDBSCAN 查找文档的密集区域。彩色区域是文档的密集区域。红点是不属于特定集群的异常值。
在这里插入图片描述

4.计算质心

对于每个密集区域,计算文档向量在原始维度的质心,这就是主题向量。红点是异常文档,不用于计算主题向量。紫色点是属于密集区域的文档向量,从中计算主题向量。

在这里插入图片描述

5.词向量排序

找到与生成的主题向量最接近的词向量。最接近的词向量作为主题词。
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/be_racle/article/details/129131451
今日推荐