使用 NMF 生成建议



在使用非负矩阵分解生成推荐时,如何为新用户重建数据?

我遵循这个等式data.dot(H.T.dot(np.linalg.pinv(H.dot(H.T))).dot(H))进行重建,其中H表示潜在组件,data由包含缺失条目的新数据组成。

但是似乎在某处出错了,因为我没有得到预期的结果(来自其他方法,例如sklearn NMF,特别是inverse_transform方法的结果(。

请参阅 https://cambridgespark.com/content/tutorials/implementing-your-own-recommender-systems-in-Python/index.html

对于pyothn scikit-learn,您可以使用:http://scikit-learn.org/stable/modules/generated/sklearn.decomposition.NMF.html

from sklearn.decomposition import NMF
model = NMF(n_components=2, init='random', random_state=0)
W = model.fit_transform(data)
H = model.components_

其中data是您要解散的矩阵。 WH是非负因素

您可以通过以下方式预测新的推荐或调用的已完成data矩阵WH'

相关内容

  • 没有找到相关文章

最新更新