1

我已经在 Sklearn 中成功实现了这个例子,我可以很好地看到主题,但是我如何恢复到形成这些主题的观察结果?我知道使用 SAS 企业矿工可以做到这一点,但我不知道如何在 sklearn 中做到这一点。任何帮助,将不胜感激!谢谢你。

4

3 回答 3

1

NMF (非负矩阵分解)将正矩阵分解为两个正矩阵的乘积,如下所示。

在此处输入图像描述

在您的情况下,V是从您的文本语料库中获得的 TF-IDF 矩阵。NMF 将其分解W为称为主题矩阵,因为每列代表一个主题(每一行是主题的代表词)和H称为激活矩阵(权重)。

因此,您的每个文本语料库都是您的主题的线性组合。所以你不能真正谈论主题成员 - 哪个文本属于哪个主题 - 因为它可以在一定程度上属于所有主题。

于 2016-11-04T16:44:00.713 回答
0

当您在处理数据之前加载数据时,该方法fetch_20newsgroups正是这样做的。

如果您想了解它是如何工作的,这里是该函数文档的链接。

基本上,当您使用sklearn 数据集时,您会导入模块datasets并调用一些函数,这些函数会从本地数据集目录中获取数据。

在这里您可以找到数据:

/sklearn/数据集/

它包含一个包含data一些 csv 文件的目录:

在此处输入图像描述

于 2016-11-04T09:41:20.657 回答
0

LDA 和NMF中的变换方法有助于给出属于主题的观察概率。

于 2016-11-07T16:47:15.513 回答