![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
矩阵分解
wangxinRS
目前在研究所做图像算法~
展开
-
《推荐系统笔记(十四)》矩阵分解(MF)以及基于矩阵分解的topN推荐
前言用户评分矩阵往往十分稀疏,为了对这种稀疏矩阵进行补全,充分利用已有数据,我们可以采用矩阵分解办法。实际上,一旦矩阵补全,相当于预测出用户对未购买物品的评分,基于这些评分,我们就可以对任何用户进行推荐。本篇博客将对矩阵分解进行介绍,同时介绍两种常用的用来解决矩阵分解问题的算法SGD(随机梯度下降)和ALS(交叉最小二乘)。这两种优化方法还能用来解决两种简单的推荐算法。我们都将利用movielens数据集,对这些方法进行简单的实战演示。MF给定用户评分矩阵Rm×nR_{m\times n}Rm×n原创 2020-08-04 16:07:43 · 878 阅读 · 0 评论 -
《推荐系统笔记(六)》svd在推荐系统中的应用推广(FunkSVD,BiasSVD以及SVD++)及简单实战(surprise库)
前言奇异值分解(SVD)可以将任意矩阵分解成两个方阵和一个对角矩阵的乘积。借助于SVD,我们可以将推荐系统中的用户-评分矩阵进行分解,通过推广的SVD方法(FunkSVD,BiasSVD和SVD++),我们还可以进一步做评分矩阵的补全。根据补全的评分矩阵,我们将可以给用户推荐他没有购买过的产品。因此,SVD方法在推荐系统中具有重要的应用价值。下面,我们将逐个介绍 原始SVD,FunkSVD,BiasSVD以及SVD++。介绍完这些算法之后,我们将在movielens数据集上,用第三方库surprise进原创 2020-07-29 17:58:11 · 1773 阅读 · 5 评论 -
《推荐系统笔记(五)》svd降维 —— 以图片处理为例
理论部分任何一个m×nm\times nm×n矩阵AAA,通过svd分解,可以分解为三个矩阵相乘A=PΣQTA=P\Sigma Q^TA=PΣQT其中,Σ\SigmaΣ是一个m×nm\times nm×n对角矩阵,除了对角线上的元素之外,其余位置元素全部为0。我们假设 P=[P1,P2,...,Pm]P=[P_1, P_2, ..., P_m]P=[P1,P2,...,Pm],其中,PiP_iPi是mmm维列向量;Q=[Q1,Q2,...,Qn]Q=[Q_1, Q_2, ..., Q_n]Q原创 2020-07-28 18:19:39 · 725 阅读 · 0 评论 -
《推荐系统笔记(四)》svd的python计算实例
对于任意矩阵 Am×nA_{m\times n}Am×n,根据奇异值分解理论,我们有等式A=PΣQTA=P\Sigma Q^TA=PΣQT其中,PPP是对称矩阵AATAA^TAAT的特征向量组成的mmm阶方阵,QQQ是对称矩阵ATAA^TAATA的特征向量组成的nnn阶方阵,Σ\SigmaΣ是对角线上由AAA的特征值组成的m×nm\times nm×n对角矩阵。现在,我们用scipy的svd来做计算实例。# 导入第三方库import numpy as npfrom scipy.linalg i原创 2020-07-28 11:27:44 · 649 阅读 · 0 评论