Algorithm -- Data Mining

数据挖掘

[TOC]

奇异值分解SVD

1、特征值分解EVD

实对称矩阵

如果有n阶矩阵A,其矩阵的元素都为实数,且矩阵A的转置等于其本身($a_{ij}=a_{ji}$),(i,j为元素的脚标),则称A为实对称矩阵。

如果矩阵𝐴是一个$𝑚×𝑚$的实对称矩阵(即$𝐴=𝐴^T$),那么它可以被分解成如下的形式

$$
A = Q \sigma Q^T=
Q\left[
\begin{matrix}
\lambda_1 & \cdots & \cdots & \cdots\
\cdots & \lambda_2 & \cdots & \cdots\
\cdots & \cdots & \ddots & \cdots\
\cdots & \cdots & \cdots & \lambda_m\
\end{matrix}
\right]Q^T
\tag{1-1}
$$

其中𝑄为标准正交阵,即有$𝑄𝑄^𝑇=I$,$\sigma$为对角矩阵,且上面的矩阵的维度均为𝑚×𝑚。$𝜆_i$称为特征值,$𝑞_𝑖$是𝑄(特征矩阵)中的列向量,称为特征向量

一般矩阵

上面的特征值分解,对矩阵有着较高的要求,它需要被分解的矩阵𝐴

为实对称矩阵,但是现实中,我们所遇到的问题一般不是实对称矩阵。那么当我们碰到一般性的矩阵,即有一个𝑚×𝑛的矩阵𝐴,它是否能被分解成上面的式(1-1)的形式呢?当然是可以的,这就是我们下面要讨论的内容。

2、 奇异值分解

定义

有一个𝑚×𝑛的实数矩阵𝐴,我们想要把它分解成如下的形式
$$
A = U \sigma V^T
\tag{2-1}
$$
其中𝑈𝑉均为单位正交阵,即有$𝑈𝑈^𝑇=𝐼$和$𝑉𝑉^𝑇=𝐼$,$𝑈$称为左奇异矩阵,$𝑉$称为右奇异矩阵,$\sigma $ 仅在主对角线上有值,我们称它为奇异值,其它元素均为0。上面矩阵的维度分别为$𝑈 ∈ 𝑅^{𝑚×𝑚}$, $\sigma ∈𝑅^{𝑚×𝑛}$ , $𝑉∈𝑅^{𝑛×𝑛}$。

一般地$\sigma$ 有如下形式
$$
\sigma =
\left[
\begin{matrix}
\sigma_1 & 0 & 0 & 0 & 0\
0 & \sigma_2 & 0 & 0 & 0\
0 & 0 & \ddots & 0 & 0\
0 & 0 & 0 & \ddots & 0\
\end{matrix}
\right]_{m\times n}
$$
参考自:

https://www.cnblogs.com/endlesscoding/p/10033527.html