如果点击有误:https://github.com/LeBron-Jian/MachineLearningNote
奇异值分解(Singular Value Decomposition,后面简称 SVD)是在线性代数中一种重要的矩阵分解,它不光可用在降维算法中(例如PCA算法)的特征分解,还可以用于推荐系统,以及自然语言处理等领域,在机器学习,信号处理,统计学等领域中有重要应用。
比如之前的学习的PCA,掌握了SVD原理后再去看PCA是非常简单的,因为我最近在整理学习线性代数基础,并温习了一遍特征值与特征向量,所以这里同时也温习一下SVD算法,如果想看我之前的PCA降维的文章,可以参考下面:
Python机器学习笔记:主成分分析(PCA)算法
Python机器学习笔记:使用scikit-learn工具进行PCA降维
好了,话不多说,这里再对SVD算法做一个总结(这里总结主线是参考刘建平大佬和老师的网课视频学习,首先在这里提出感谢)
1,基变换与特征值分解
1.1 向量的表示与基变换
首先看看向量,向量可以表示为(3, 2),实际上表示线性组合:
基表示:(1, 0) 和 (0, 1) 叫做二维空间中的一组基。
一组基就确定了对向量进行表示的空间,而向量的表示就是基于这组基进行坐标表示。选定的基不同,空间自然不同,那么向量表示的坐标自然也不同。一般情况下,我们会默认传统的正交坐标系为标准的基选择,但其实对传统