1.基本介绍
就个人看来,其实SVD(singular valur decomposition)和PCA的功能是一样的,可以用来降低维度、去除噪声,经过PCA和SVD处理后的数据可以做各种处理,包括之前的各个分类和回归的经典算法等,可以说SVD和PCA是高级别的预处理(相对于均值归一化、属性范围调整等)。
2.SVD简要说明
一般地,获得sigma矩阵中,绝大多数对角元素为0;一般选择部分来简化数据,即sigma的维度变为m*k,U的维度变为m*k。
3.基于协同过滤的推荐
这里我们假设有m个用户,n个物品,原始的数据矩阵Data为m*n维度,矩阵中的元素是用户对物品的评分,如果用户没有对该物品进行评分,则评分为0。协同过滤较为经典的两个是基于物品相似度的和基于用户相似度的,在基于物品相似度计算时,物品的特征维度是用户,数据是评分;在基于用户相似度时,用户的特征维度是物品,数据是评分。可以看到用户和物品互相为特征,但是其中有很多杂质掺杂其中,用SVD可以很好的进行过滤,从而提升推荐结果。
具