问题标签 [matrix-factorization]
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.
matlab - 如何在 Matlab 中将矩阵(mxn)分解为两个因子(mxr,rxn)?
我想从一个 mxn 矩阵 A 开始,并将其分解为两个矩阵 mxr 和 rxn。r 可以大于矩阵 A 的维数。
nnmf 只允许r< min(size(A))
有没有办法可以将矩阵分解为两个矩阵?
r - 在 R 中执行非负矩阵分解
我在 R 中有一个稀疏矩阵
我现在希望对 R 执行非负矩阵分解
data.txt 是我使用 python 创建的一个文本文件,它由 3 列组成,其中第一列指定行号,第二列指定列号,第三列指定值
数据.txt
原始 data.txt 包含 164009 行,这是 250000x250000 稀疏矩阵的数据
我使用了 NMF 库,我正在做
它给了我一个错误:
函数错误(类、fdef、mtable):无法找到函数 nmf 的继承方法,用于签名“dgCMAtrix”、“missing”、“missing”
谁能帮我弄清楚我做错了什么?
math - 矩阵求逆 Cholesky 分解 -> 结果不准确
我正在通过 Cholesky 分解使用不同的库计算方阵的逆。然而,我的结果并不像我预期的那样。我不是数学专家,但我期待得到更接近的结果。
我正在使用 MLK、magma 和 CULA 库来计算 CPU 和 GPU 中矩阵的逆矩阵。在对这些库进行计算后,我注意到结果总是在一个元素上有所不同。假设我想计算 的倒数A= [0.237306,0.000458;0.000458,0.238497]
:
我得到的结果是:
但是,正确的结果应该是
如您所见,inv(A)[3]
虽然其他都很好,但它们是不同的。Cholesky Inversion 应该是这样工作的吗?这是一个正确/近似的结果还是我在这里做错了什么?
matlab - ichol 作为 cholinc 替代品:非正向枢轴
在 Matlab 2012 中,该cholinc
命令被标记为过时。警告消息说它将被替换为ichol
. 直到现在我都在使用cholinc(A,droptol)
,通常与droptol=1E-15
. 在我尝试使用的新版本中ichol(A,struct('droptol',droptol,'type','ict'))
,大部分时间都可以使用,但有时我会收到警告消息
这是一个基本问题(即一个问题cholinc
也有但没有报告)还是有办法让ichol
行为像cholinc
以前那样?
python - 是否有好的库可以快速进行非负矩阵分解(NMF)?
我有一个稀疏矩阵,其形状为570000*3000。我试过nima做 NMF(使用默认的 nmf 方法,并设置max_iter
为 65)。但是,我发现 nimfa 非常慢。有没有人使用更快的库来做 NMF?
matlab - 通过给定的 LU 分解和常数向量求解线性方程组
给定L
和U
LU 分解和常数向量b
这样LU*x=b
,是否有任何内置函数可以找到x
?意思是 -
请注意,在两者中L
,U
我们都在处理三角矩阵,它可以通过前向和后向替换直接求解,而无需使用高斯消元过程。
编辑 :
求解这个线性方程组应该按照以下步骤——
编辑 2:
我找到了 linalg::matlinsolveLU 但我没有尝试,因为我的版本太旧 ( R2010a
) 。它对任何人都有效吗?
c++ - 程序中的 LU 分解 (C++)
我需要在我的 C++ 程序中执行 LU 分解(分解,有什么区别?)的函数或类。我正在用作编译器 Dev-c 最新版本(在 Windows 上)。我想出了如何安装犰狳和 lapack,但它似乎真的很复杂,并且有一些问题http://icl.cs.utk.edu/lapack-for-windows/lapack/(如页面底部所说) . 所以我想要一个运行良好的库(在 C++ 中)并且安装起来并不复杂。我在示例中找到了一些关于 Eigen 的东西,怎么样?还有其他建议吗?
谢谢
PS 矩阵在对角线上和附近是密集的,在其余部分是稀疏的,并且靠近角 (NE) 的部分是空的。
python - 安装 nimfa(Python 矩阵分解库)时出现问题
我有一个大(~25000 x 1000)矩阵要分解。我基于 numpy 编写了自己的代码,但它效率低下并且不断抛出内存错误。
我一直在尝试安装和使用 nimfa ( http://nimfa.biolab.si/ ),并且安装过程(尝试过 easy_install、pip 以及下载和运行 git)没有显示任何错误。但是当我尝试使用它调用它时import nimfa
,出现以下错误。我检查了 nimfa 先决条件,除了 numpy 和 scipy 之外,它没有提及任何内容。
我在 Windows 8 上,并使用安装了 numpy 和 scipy 的 Python 2.7.5。我也尝试过安装(并随后卸载)minGW 并执行此操作。
有任何想法吗?
matlab - Matlab中使用随机梯度下降的矩阵分解
我必须将Matrix
R[m n] 分解为两个低秩矩阵(U[K m] 和 V[K*n]),我这样做是为了通过 U 和 V 预测 R 的缺失值。
问题是,对于分解R ,我不能使用Matlab
分解方法,所以我必须研究目标函数,以最小化sum-of-squared-errors
提高分解精度:
详细信息如下所示:
我在这篇文章中的问题是如何在使用随机梯度下降法将 R 分解为 U 和 V 矩阵中最小化函数 F。Matlab
谢谢你的帮助!
python - Scipy - 如何进一步优化随机梯度下降的稀疏矩阵代码
我正在使用带有 Scipy 的稀疏矩阵为推荐系统实现随机梯度下降算法。
这是第一个基本实现的样子:
不幸的是,我的代码仍然很慢,即使是一个小的 4x5 评级矩阵。我在想这可能是由于循环的稀疏矩阵。我尝试过使用花哨的索引来表达 q 和 p 的变化,但是由于我对 scipy 和 numpy 还是很陌生,所以我想不出更好的方法来做到这一点。
您对我如何避免显式迭代稀疏矩阵的行和列有任何指示吗?