问题标签 [nmf]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
1771 浏览

python - 用于稀疏矩阵的 Scikit-learn 非负矩阵分解 (NMF)

我正在使用 Scikit-learn 的非负矩阵分解 (NMF) 在零条目缺失数据的稀疏矩阵上执行 NMF。我想知道 Scikit-learn 的 NMF 实现是否将零条目视为 0 或缺少数据。

谢谢!

0 投票
0 回答
543 浏览

python - 如何在新文本上测试经过训练的 NMF 主题模型

我在 python 中创建了一个 NMF 主题模型,其代码片段如下:

它创建了 20 个主题,如下所示:

现在我想在新文本上进行测试,以便根据这些类别对这些文本进行分类。我怎么做?

0 投票
1 回答
422 浏览

python - 如何使 Doc2Vec 文档向量全部为正?

我正在尝试对 Doc2Vec 的输出使用非负矩阵分解。然而,有一个限制是不能有负输入。我如何在不做绝对值之类的事情来解释结果的情况下让它变得积极?如果有帮助,我将加载一个新段落并计算相似性,但我认为使用 Doc2Vec 会捕获更多含义。

0 投票
1 回答
1802 浏览

python - 使用 scikit-learn NMF 和一组预先计算的基向量 (Python)

我想使用 scikit-learn NMF(从这里开始)(或者任何其他 NMF,如果它确实可以完成这项工作)。

具体来说,我有一个输入矩阵(这是一个音频幅度谱图),我想分解它。

我已经预先计算了 W 矩阵。如何使用固定的 W in sklearn.decompose.NMF?我还没有发现任何其他问题问这个。

我看到这个方法在fit参数中也提到了类似的东西:“如果为 False,则假定组件已预先计算并存储在转换器中,并且不会更改。”。但是,我不确定如何制作该变压器对象。

0 投票
0 回答
308 浏览

scikit-learn - 当我使用 sklearn 并行模块“来自 cdnmf_fast import _update_cdnmf_fast”时,它的并行化不起作用

(这是我第一次提问,如果您觉得标签或描述有问题,请告诉我,谢谢!)

我正在做一个工作Matrix Factorization并使用模块sklearn.decomposition.nmf 该模块使用另一个模块 from sklearn.decomposition.cdnmf_fast import _update_cdnmf_fast 这个模块来自文件cdnmf_fast.so 你可以在这个网站上查看它的源代码 /sklearn/decomposition/cdnmf_fast.pyx 我们可以看到它使用C语言和“ with nogil:",所以我认为它必须使用并行化。所以我写了一个类似的代码来测试它,如下所示:

预期结果是 X=X+VW*U=0+V-0=V。但是,结果很奇怪,而且比 np.dot() 慢得多。然后我把这段代码改成普通的python代码,而不是并行化代码。结果和以前一样。所以我确信它的并行化不起作用。因为它在改变 X 的同时使用了 X,所以结果当然是错误的。我不知道为什么它的并行化不起作用。是由于模块的错误还是我导入方式的方法?

实际上,当我使用 sklearn.decomposition.nmf 模块时,这让我很担心,我不确定我什么时候使用这个模块,它的并行化是否也不起作用。所以我想知道它是如何使并行化工作的。

谢谢您的帮助!

0 投票
1 回答
1874 浏览

python - python中对单个图像的非负矩阵分解

我正在尝试将 NMF 应用于以灰度模式加载的特定图像。我尝试了几个链接,但应用 NMF 后的图像几乎保持不变,无法与最初加载的灰度图像区分开来。

然而,当我遇到 scikit-learn 关于在数据集上实现分解的代码时,我看到那里的面孔已经变成了鬼脸。链接在这里:

http://scikit-learn.org/stable/auto_examples/decomposition/plot_faces_decomposition.html#sphx-glr-auto-examples-decomposition-plot-faces-decomposition-py

这是我正在使用的代码:

我对矩阵上的 NMF 技术很陌生,尤其是如此大的图像 numpy 数组。
我的图像是 test1.jpeg,即 225 * 224 .jpeg 图像。

有人可以帮我实现单个图像的代码吗?提前非常感谢。

0 投票
0 回答
493 浏览

python - Scikit-learn NMF 去除重复词

我正在使用 scikit-learn 的 nmf 算法从一些博客中提取趋势词。例如,我有“游戏王座”(虽然“的”被删除为停用词,但这很好),但我也有“游戏”和“王座”。我有“marcus hutchins”(好),但我也有“marcus”和“hutchins”,这很糟糕。如何防止重复?这是我所拥有的(变量“文档”是一个包含博客文章的列表):

0 投票
0 回答
417 浏览

apache-spark - 将列表列转换为 Pyspark 中的一列值

我已经运行了一个 ALS 模型,并且正在处理输出建议。它们目前采用这种格式:

每行在“item_ids”列中包含一个列表,在“ratings”列中包含一个列表。

我想做的是“取消透视”“item_ids”和“ratings”中的每个列表,使其看起来像这样:

我发现这样做的唯一方法是通过过滤一个 user_id 一次一个用户,将列表转换为 Pandas 数据帧中的列,然后将其往返返回到 Spark 数据帧。正如您可能想象的那样,使用几百万个 user_id 需要很长时间才能完成。我也考虑过使用此处描述的“堆​​栈”功能,但所需的手动输入也需要很长时间。我还考虑了此处找到的代码,但在涉及列表时它不起作用。

有没有更有效的方法来做到这一点而不必依赖 Pandas?我在 Databricks 上运行 Pyspark (Spark 2.2.0)。

0 投票
0 回答
363 浏览

python - 需要执行主题建模并将结果输出到 csv 表

我有以下用于主题建模的代码,我需要从 CSV 文件中获取文本数据,并将它们分组为名为 Topic 0 和 Topic 1 的 2 个主题:



例子:

输入:

输出:

0 投票
1 回答
1944 浏览

scikit-learn - scikit-learn 中 NMF(又名 NNMF)测试集的重建错误

我正在使用来自 scikit-learn 的 NMF(又名 NNMF)对自然语言数据进行主题提取。我正在尝试优化集群(又名组件)的数量。为此,我需要计算重建误差。然而,使用 scikit-learn 我只看到了一种在训练集上计算这个指标的方法。但我有兴趣为测试集获取这些指标。有什么建议么?