我在非常大的矩阵上应用非负矩阵分解(NMF)。实质上,NMF方法执行以下操作:给定m乘n矩阵A,NMF分解为A = WH,其中W是m乘以d,H是d乘n。 ProjectedGradientNMF方法在Python包Sklearn中实现。我想要算法返回W和H.但它似乎只返回H,而不是W.再次应用该算法到AT(转置)可以给我W.但是,我想避免计算两次,因为矩阵ix非常大。Sklearn中的非负矩阵因式分解
如果你能告诉我如何同时得到W和H,那太棒了!下面是我的代码:
from sklearn.decomposition import ProjectedGradientNMF
import numpy
A = numpy.random.uniform(size = [40, 30])
nmf_model = ProjectedGradientNMF(n_components = 5, init='random', random_state=0)
nmf_model.fit(A)
H = nmf_model.components_.T
能否再次应用该算法A.T(转置)真的给W'我无法验证它。 – svural