博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
【机器学习篇】--SVD从初始到应用
阅读量:7194 次
发布时间:2019-06-29

本文共 516 字,大约阅读时间需要 1 分钟。

SVD一般应用场景--推荐系统,图像压缩。

1、直观感受。

SVD其实就是将矩阵分界,直观感受如图。就是将A矩阵分界成U,S,V三个矩阵相乘。一般推荐系统中用的多。S是对角阵,里面的特征值是从大到小排列的。

2、前述知识。

一个矩阵乘以一个向量结果还是一个向量,并且等于原始向量的倍,相当于对原始向量进行一个某个方向上的拉伸。

 

 3、矩阵压缩

                                    图1

                                 图2

 对图1,图2来说,假设m表示是样本个数,n表示特征个数,则抽取S特征中比较重要的特征值,(因为特征值是从大到小排列的,所以假如抽取前几个特征值作为保留的特征值),则S维度减少,变成r*r,则原始m*n矩阵分解成U ---m*r(比较瘦),S--r*r(方阵),V--r*n(比较长)三个矩阵相乘。

4、原理剖析

抓住主要变换方向,所以保留特征值比较大的方向。

 

 5、实例讲解一

SVD可解释性比较差,需要去猜。

6、实例讲解二(推荐系统)

U :6*2(6代表是Item个数)

V:4*2(4代表是用户个数)

S:取前两个比较重要的值

 

 

映射到二维图中:找出最相似的用户。

 

转载于:https://www.cnblogs.com/LHWorldBlog/p/9170716.html

你可能感兴趣的文章
连接池
查看>>
Retrofit 2.0使用
查看>>
win8 解析json数据模板 XMl解析数据
查看>>
Spring AOP来自定义注解实现审计或日志记录
查看>>
[K/3Cloud] 如何从被调用的动态表单界面返回数据
查看>>
实现超链接在本页面的跳转
查看>>
httpClient模拟浏览器发请求
查看>>
spark学习6(Centos下Scala2.11.4安装)
查看>>
利用reduce对数组中的对象进行去重
查看>>
ahjesus 单词单数-复数相互转换C#
查看>>
聚集索引和非聚集索引
查看>>
PYTHON1.day05
查看>>
Spring快速入门
查看>>
AIX 5.3下创建逻辑卷、添加文件系统并挂载
查看>>
使用plsql执行计划进行sql调优(转载)
查看>>
nginx配置总结
查看>>
div+css与table布局
查看>>
spring可以get到bean,注入却为空
查看>>
CGAffineTransform相关函数
查看>>
Macaca命令行
查看>>