主要内容

使用LDA模型可视化文档集群

这个例子展示了如何使用潜狄利克雷分配(Latent Dirichlet Allocation, LDA)主题模型和t-SNE图可视化文档的聚类。

潜狄利克雷分配(LDA)模型是一种主题模型,它在文档集合中发现底层主题,并推断主题中的单词概率。每个主题的词概率向量描述了主题。通过比较每个文档的主题概率,也称为主题混合,可以使用LDA模型来评估文档的相似度。

负载LDA模型

加载LDA模型factoryReportsLDAModel它使用详细描述不同故障事件的工厂报告数据集进行训练。有关展示如何将LDA模型适合文本数据集合的示例,请参见使用主题模型分析文本数据

负载factoryReportsLDAModelmdl
mdl = ldaModel具有属性:NumTopics: 7 WordConcentration: 1 TopicConcentration: 0.5755 corpustopicprobability: [0.1587 0.1573 0.1551 0.1534 0.1340 0.1322 0.1093] documenttopicprobability: [480×7 double] topicwordprobability: [158×7 double]词汇:[1×158 string] TopicOrder: 'initial-fit-probability' FitInfo: [1×1 struct]

使用词云可视化主题。

numTopics = mdl.NumTopics;图tiledlayout (“流”)标题(“LDA的话题”)i = 1:numTopics nexttile wordcloud(mdl,i);标题(“主题”+ i)结束

使用t-SNE可视化文档集群

t分布随机邻居嵌入(t-SNE)算法将高维向量投影到二维空间。这种嵌入使得高维向量之间的相似性很容易可视化。通过根据t-SNE算法绘制文档主题混合图,可以可视化相似文档的聚类。

项目主题混合在DocumentTopicProbabilties进入二维空间使用tsne函数。

XY = tsne (mdl.DocumentTopicProbabilities);

对于情节组,确定每个文档的顶部主题。

[~, topTopics] = max (mdl.DocumentTopicProbabilities [], 2);

对于情节标签,找到每个话题的前三个单词。

i = 1:numTopics top = topkwords(mdl,3,i);topWords (i) =加入(顶部。词,”、“);结束

绘制投影的主题混合使用gscatter函数。指定顶部主题作为分组变量,并显示一个图例,其中包含每个主题的顶部单词。

图gscatter (XY (: 1), XY (:, 2), topTopics)标题(“主题混合”)传说(topWords位置=“southoutside”,NumColumns = 2)

t-SNE图突出了在原始高维数据中出现的簇。

另请参阅

|||

相关的话题

Baidu
map