机器学习实战系列14——奇异值分解SVD

  • Post author:
  • Post category:其他




奇异值分解



1. 概念

将一个复杂的矩阵分解为3个小的简单的矩阵,

在这里插入图片描述

其中sigma矩阵只包含对角元素且对角元素降序排列,该对角线元素为奇异值,为原始数据最重要的特征值。奇异值的取舍遵守两种启发式规则:

  • 取总量信息的90%,总量信息的计算为:所有奇异值的平方求和
  • 对上千万的奇异值,只取前2000到3000的奇异值



2. 应用

  1. 隐性语义分析
  2. 推荐系统
  3. 数据降维(特征缩减)



3.python实现



4.推荐系统

  1. 推荐的过程

    给定一个用户,系统会为此用户返回N个最好的推荐菜:

    1).寻找用户没有评级的菜,即用户-物品矩阵中的0值

    2).在用户没有评级的所有物品中,对每个物品预计一个可能的评级分数。-相似度计算

    3).对物品的评分从高到低进行排序,返回前N个商品
  2. 相似度的计算

    包括基于用户与基于物品的相似度计算,取决于用户与物品的数量。
  3. 推荐结果的评价

    1).交叉测试:将已知的评分去掉,然后对他们预测,最后计算预测值与真实值之间的差异,

    2). 最小均方根误差(RMSE),首先计算均方误差的平均值然后取其平方根。
  4. 推荐的方法

    协同过滤:考虑用户对物品的意见,包括评分,评论等

    基于内容的推荐:考虑商品的属性标签



版权声明:本文为sinat_37386947原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。