ML之DR之SVD:SVD算法相关论文、算法过程、代码实现、案例应用之详细攻略
ML之DR之SVD:SVD算法相关论文、算法过程、代码实现、案例应用之详细攻略
目录
SVD算法相关论文
SVD算法过程
1、公式的推导
2、SVD算法两步过程
SVD代码实现
SVD的案例应用
1、SVD的推荐案例
SVD算法相关论文
奇异值分解Singular Value Decomposition:简称SVD,特征分解的广义化,是一种提取特征信息的方法。
SVD算法过程
1、根据Andrew Gibiansky 写的关于 SVD 的文章中代码
http://andrew.gibiansky.com/blog/mathematics/cool-linear-algebra-singular-value-decomposition/
奇异值top不同个数的应用:可以发现,如果我们根据大小排序这些奇异值(矩阵 Σ 的值),那么前 50 个奇异值将包含整个矩阵 Σ 的大小的 85%。根据这个事实,我们可以丢弃后面的 250 个值(即将它们设为 0),仅保留这张小狗图像的「rank(秩)50」版本。值的数量差不多少了 5 倍,但质量却下降很少。上述计算的原因是当我们执行 UΣ'V 运算时,U 和 V 矩阵中的一部分因为乘 0 也被丢弃(其中 Σ' 是 Σ 的修改后版本,其中仅包含了前面的 30 个值)。
低秩矩阵的近似应用:图像压缩,其实80与原图相差不是很大。SVD中的奇异值的个数分别为1、10、80。
1、公式的推导
2、SVD算法两步过程
SVD代码实现
import numpy as np
def load_data():return [ [0,0,0,1,1],[0,0,0,2,2],[0,0,0,3,3],[4,4,4,0,0],[5,5,5,0,0],[6,6,6,0,0],[7,7,7,0,0]]
data = load_data()
u, sigma, vt = np.linalg.svd(data) #Sigma是个矩阵,Python内部的机制,为了节省空间,因为它除了对角线都是0
print(sigma)#前两个值比后三个值大的多,所以可以取这两个奇异值,把其余三个置0。[1.94422221e+01 5.29150262e+00 1.86910323e-15 4.48702001e-168.62587679e-18]
SVD的案例应用
1、SVD的推荐案例
假定Ben、Tom、John、Fred对6种产品进行了评价,评分越高,代表对该产品越喜欢。0表示未评价。
1、进行SVD分解并提取前2个特征
(1)、产品矩阵的压缩、用户矩阵的压缩
2、利用SVD进行新用户的个性化推荐
思路:对于新用户,如何对其做个性化推荐呢?将A扩展后重新计算SVD,然后聚类用户?
(1)、假设有个Bob的新用户,对6个产品的评分为(5,5,0,0,0,5)T,通过上边的公式计算出Bob的特征点坐标。
(2)、通过计算Bob和现有用户的距离进行聚类:计算余弦距离(一定意义下即相关系数),与其最近的是Ben,因此,可以给Bob推荐Ben喜欢的S5、S3。
ML之DR之SVD:SVD算法相关论文、算法过程、代码实现、案例应用之详细攻略相关推荐
- CV之ICG:计算机视觉之图像标题生成(Image Caption Generator)算法的简介、使用方法、案例应用之详细攻略
CV之ICG:计算机视觉之图像标题生成(Image Caption Generator)算法的简介.使用方法.案例应用之详细攻略 目录 图像标题生成ICG算法的简介 图像标题生成ICG算法的使用方法 ...
- NLP之WE之CBOWSkip-Gram:CBOWSkip-Gram算法概念相关论文、原理配图、关键步骤之详细攻略
NLP之WE之CBOW&Skip-Gram:CBOW&Skip-Gram算法概念相关论文.原理配图.关键步骤之详细攻略 目录 CBOW&Skip-Gram算法相关论文 CBOW ...
- ML之FE:数据处理—特征工程的简介、使用方法、案例应用之详细攻略
ML之FE:数据处理-特征工程的简介.使用方法.案例应用之详细攻略 目录 特征工程的引入 特征工程的简介 特征工程的思路 特征工程的关键步骤
- CV之IS:计算机视觉之图像分割(Image Segmentation)/语义分割算法的简介、使用方法、案例应用之详细攻略
CV之IS:计算机视觉之图像分割(Image Segmentation)/语义分割算法的简介.使用方法.案例应用之详细攻略 目录 图像分割算法的简介 1.常用的数据集 2.图像分割的评价指标
- ML之p-value:p-value/P值的简介、使用方法、案例应用之详细攻略
ML之p-value:p-value/P值的简介.使用方法.案例应用之详细攻略 目录 p-value/P值的简介 1.p-value/P值的概述
- DS之MDS:MDS(Multidimensional Scaling)多维尺度降维算法的简介、使用方法、案例应用之详细攻略
DS之MDS:MDS(Multidimensional Scaling)多维尺度降维算法的简介.使用方法.案例应用之详细攻略 目录 MDS的简介 MDS(Multidimensional Scalin ...
- ML之XGBoost:XGBoost算法模型(相关配图)的简介(XGBoost并行处理)、关键思路、代码实现(目标函数/评价函数)、安装、使用方法、案例应用之详细攻略
ML之XGBoost:XGBoost算法模型(相关配图)的简介.关键思路.代码实现(目标函数/评价函数).安装.使用方法.案例应用之详细攻略 目录 XGBoost算法模型(相关配图)的简介 1.XGB ...
- ML之GB:GB算法相关论文、相关思路、关键步骤、代码实现、配图集合、案例应用之详细攻略
ML之GB:GB算法相关论文.相关思路.关键步骤.代码实现.配图集合.案例应用之详细攻略 目录 GB算法相关文献.论文 GB算法关键步骤 GB算法代码实现 GB案例应用 1.GB用于回归 2.GB用于 ...
- ML之DT(树模型):DT(树模型算法)算法的简介、代码定义、案例应用之详细攻略
ML之DT(树模型):DT(树模型算法)算法的简介.代码定义.案例应用之详细攻略 目录 树模型 1.A brief history of forests 2.树模型的复杂度 3.树模型的目标函数
最新文章
- pythonwhile循环结束语句_Python while循环语句
- 阿里云CentOS7.3搭建多用户私有git服务器(从安装git开始)
- Eclipse基础设置
- “快准顺”而不是“信达雅”
- CF39C-Moon Craters【dp】
- 永不改变的PCB设计黄金法则
- Unity TUIO雷达入门
- 信度spss怎么做_怎么用spss处理信度和效度?
- html中黄色的代码是什么,HTML黄色欧美形式创意展示网页模板代码
- python圆形螺旋线_Python Turtle绘制漂亮彩色螺旋线及一闪而过的解决
- 【51CTO学院三周年】通往程序猿艰辛历程,幸好遇到51CTO学院
- “我的恩典是够你用的”(哥林多后书十二章9节)
- 笔试题6——幸福数字
- Minecraft 1.16.5模组开发(三十一) 自定义建筑生成(structure) (新)
- koa - 洋葱模型浅析
- python画趋势图_python 绘制走势图
- fp16与fp32简介与试验
- 图书馆座位预约系统,图书馆座位管理系统,图书馆座位预约毕业设计
- 千锋3G学院-iOS开发视频教程
- 工程流体力学笔记暂记3(流体运动的基本概念:流动的分类,迹线和流线+流线的计算例题)