β

[数据挖掘算法]SVD-解析与R实现示例(批量梯度下降)

胡户主—《江南360》 182 阅读
SVD是奇异值分解方法,是一种矩阵分解算法,在推荐系统中用户物品矩阵较大,维度较多,将用户物品矩阵R中用户和物品都映射到低维特征空间,这样在不损失太多矩阵信息的情况下,利用低维空间隐式特征表示用户和物品。以上是在推荐系统的角度去描述SVD,其他相关的一些概念如:特征值分解,PCA主成分分析,数据压缩,在搜索领域里面的层次检索LSI,topic模型,隐语义模型plsa等等。 定义: 奇异值:假设矩阵A,的特征值的非负平方根是A的奇异值。 奇异值分解公式: U为的特征向量(标准正交基),V为的特征向量,S为对角矩阵,其中的值是和的非零平方根。 我们可以将上式进一步分解成,在梯度下降中将会用到。   R中计算示例 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091<blockquote>   x = matrix(c(5,5,0,5,5,0,3,4,3,4,0,3,0,0,5,3,5,4,4,5,5,4,5,5), nrow = 6, ncol = 4, byrow = TRUE)     x </blockquote> [,1] [,2] [,3] [,4] [1,]    5    5    0    5 [2,]    5    0    3    4 [3,]    3    4    0    3 [4,]    0    0    5    3 [5,]    5    4    4    5 ...

Continue reading ‘[数据挖掘算法]SVD-解析与R实现示例(批量梯度下降)’ »

发表评论