机器学习实战-SVD与特征值分解的理论推导及SVD在推荐系统中的应用

参考文献:

[1] [机器学习笔记]奇异值分解SVD简介及其在推荐系统中的简单应用

     本文基于参考文章[1]的理解上,先对特征值分解进行简单介绍,然后引入奇异值分解(SVD)的理论推导,最后对SVD在推荐系统中的应用进行说明。

1、特征值分解

      机器学习实战-SVD与特征值分解的理论推导及SVD在推荐系统中的应用机器学习实战-SVD与特征值分解的理论推导及SVD在推荐系统中的应用

2、奇异值分解(SVD,Singular Value Decomposition)

       SVD是一种强大的降维工具,可以利用SVD逼近矩阵并从中提取重要特征。通过保留矩阵80%-90%的能量,就可以得到重要的特征并去掉噪声。SVD已经运用到多个应用中,其中一个成功的应用案例就是推荐引擎。推荐系统是给用户推荐物品,协同过滤算法是基于用户的喜好或行为数据的推荐方法。通过低维空间下的相似度计算,SVD提高了推荐引擎的效果。

       优点:简化数据,去除噪声,提高算法的结果

       缺点:数据的转换可能难于理解

       适用数据类型:数值型数据

       应用场景:信息检索、推荐系统、图像压缩等

SVD推导过程:

    机器学习实战-SVD与特征值分解的理论推导及SVD在推荐系统中的应用机器学习实战-SVD与特征值分解的理论推导及SVD在推荐系统中的应用

  SVD性质1:

机器学习实战-SVD与特征值分解的理论推导及SVD在推荐系统中的应用         机器学习实战-SVD与特征值分解的理论推导及SVD在推荐系统中的应用

         性质2:

机器学习实战-SVD与特征值分解的理论推导及SVD在推荐系统中的应用         机器学习实战-SVD与特征值分解的理论推导及SVD在推荐系统中的应用

3、特征值分解和奇异值分解(SVD)的区别

     1)特征值分解是针对可对角化的方阵而言,SVD可对任意形状的矩阵进行分解;

     2)矩阵乘法对应了一个变换。矩阵乘以向量得到一个新向量,相当于将该向量变成另一个方向或者长度都不相同的新向量。对于特征值分解来说:该向量只发生了长度缩放变化,并未产生旋转的效果,称该向量为特征向量,伸缩的比例就是特征值;对于SVD来说:矩阵M右乘以向量V,相当于从V这组单位正交基旋转到U这组单位正交基,不仅发生旋转,且有相应的缩放,缩放因子就是求和号的对角线元素,也就是奇异值。