导图社区 SVD简化数据矩阵分解学习笔记思维导图
SVD简化数据矩阵分解学习笔记梳理,SVD的应用,矩阵分解,基于协同过滤的推荐引擎,有需要的小伙伴可以看看哦~
网店详情页排版方法分享~包括中心页面组成,优质详情必备,详情页的排版参考方法。感兴趣的小伙伴可以看看哦~
喷绘色彩基础培训方案,内容涵盖色彩基础,喷绘写真。框架清晰,内容丰富,希望对小伙伴有所帮助哦~
酒窖营销计划方案,包括结果目标,过程目标。框架清晰,内容丰富,有需要的小伙伴可以看看哦~ 可供大家参考,借鉴,交流。
社区模板帮助中心,点此进入>>
论语孔子简单思维导图
《傅雷家书》思维导图
《童年》读书笔记
《茶馆》思维导图
《朝花夕拾》篇目思维导图
《昆虫记》思维导图
《安徒生童话》思维导图
《鲁滨逊漂流记》读书笔记
《这样读书就够了》读书笔记
妈妈必读:一张0-1岁孩子认知发展的精确时间表
SVD简化数据矩阵分解学习笔记思维导图
SVD的应用
优点
简化数据
去除噪声
提高算法的结果
缺点
数据的转换可能难以理解
适用数据类型
数值型
隐语义索引
利用SVD的方法
隐语义索引LSI
一个矩阵是由文档和词语组成的
当在矩阵上应用SVD使,会构建出多个奇异值
奇异值代表文档中的概念或主题
可用于更高效的文档搜索
隐语义分析LSA
应用
信息检索
同义词
推荐系统
过程
先利用SVD从数据中构建一个主题空间
再在该空间下计算相似度
矩阵分解
目的
把原始矩阵表示成新的易于处理的形式
两个/多个的乘积
SVD
将原始矩阵Data(m*n)分解成三个矩阵
U
m*m
m*n
只有对角元素,其余都是0
对角元素从大到小排列
这些对角元素称为奇异值,对应了Data的奇异值
奇异值是Data*DataT特征值的平方根
在某个奇异值的数目(r个)后,其他的奇异值为0
即仅有r个重要特征
n*n
利用Python实现SVD
NumPy的linalg工具箱
例
假设有3个奇异值,则可用该式近似
确定保留奇异值的数目
保留矩阵90%的能量信息
所有奇异值求平方和,累计达到总值90%
有上万个奇异值时,保留2-3k个
基于协同过滤的推荐引擎
相似度计算
欧式距离
皮尔逊相关系数
对用户评级的量级不敏感
corrcoef()
取值范围
-1到+1
通过0.5 + 0.5 * corrcoef()归一化
余弦相似度
需要归一化
范数:linalg.norm()
基于物品的相似度还是基于用户的相似度?
推荐引擎的评价
RMSE
示例:餐馆菜肴推荐引擎
推荐未尝过的菜肴
利用SVD提高推荐的效果
构建推荐引擎面临的挑战
SVD分解会降低程序的速度
每天或更久执行一次
实际系统0非常多
只存储非零元素节省内存和计算开销
相似度计算的浪费
相似度矩阵
冷启动
示例:基于SVD的图像压缩