特征向量:若A为n阶方阵,如果存在一个非零向量x使得 Ax=λx ,则称标量 λ 为特征值(eigenvalue),称x为属于 λ 的特征向量(eigenvector)。
特征向量与零度空间:方程 Ax=λx 可以写为 (A−λI)x=0 ,因此 λ 为特征值的充要条件是方程有一非平凡解,也即零度空间 N(A−λI) 中不仅只有零解,其中任意非零向量均为属于 λ 的特征向量。子空间 N(A−λI) 称为对应于 λ 的特征空间。
特征方程 (A−λI)x=0 有非零解的充要条件是矩阵 A−λI 为奇异的,即 det(A−λI)=0 ,称此方程为特征方程。特征方程的根即A的特征值。如果方程有重根,且重根也计数,则特征方程恰有n个根,其中可能会有重复,也可能会是复数。
特征值的性质:
相似矩阵的特征值:若方阵A和B相似,则这两个矩阵有相同的特征多项式,且它们有相同的特征值。
使用numpy计算矩阵的特征值与特征向量:
import numpy as np
A=np.array([[3,2],[3,-2]])
w,v = np.linalg.eig(A)
print w #4,-3 特征值
print v #对应的特征向量[[ 0.89442719, -0.31622777],
[ 0.4472136 , 0.9486833 ]]
定理:若 λ1,λ2,...,λk 为n阶矩阵A的不同特征值,相应的特征向量为 x1,x2,...,xk ,则 x1,x2,...,xk 线性无关。
可对角化:若存在一个非奇异的矩阵X和一个对角矩阵D,使用n阶方阵A满足
定理:方阵A是可对角化的,当且仅当A有n个线性无关的特征向量。
退化矩阵:若n阶方阵A有少于n个线性无关的特征向量,则A是退化的(defective),退化矩阵不可对角化。
马尔可夫过程:对一个试验,若其每一步的输出都取决于概率,则称为一个随机过程(stochastic process)。马尔可夫过程(Markov process)是随机过程,它有如下性质:
马尔可夫链
状态之间的迁移概率可以表示为迁移矩阵A,其第i列表示由第i个状态向其他状态变迁的概率,A的每一列元素均为非负的,且和为1。
若初始状态集记为 x0 ,并记后续各次状态集为 xi ,则后续状态集可通过矩阵乘法计算得到: xi=Aix0 ,并称 xi 的序列是马尔可夫链。
定理:若一个马尔可夫链的转移矩阵为A,且其收敛到一个稳态向量x,则x为一个概率向量, λ=1 为其一个特征值,且x为属于这个特征值的特征向量。
定理:若马尔可夫链的转移矩阵A的其他特征值均不大于1,且存在 λ=1 ,称其主特征值(dominant eiganvalue),此时转移矩阵A可使用得马尔可夫链收敛到稳定向量。
马尔可夫过程的应用
PageRank算法将网页浏览过程看成马尔可夫过程,其转移矩阵A为n*n的,目前n超过200亿。
A的(i,j)元素表示从网站j到i的跳转概率(可由浏览历史统计出来),可证迁移矩阵存在稳态向量,随着浏览的进行最终可以达到惟一的稳态向量x,即到达某个站点k,向量中的元素 xk 的确定了网站k的整体分级。
进行网页搜索时,首先寻找所有和关键字匹配的网页,然后将这些网页按照它们的网页分级递减的顺序列出来。
由实数的泰勒级数展开式:
若对任何的n*n矩阵A,可定义矩阵指数:
在对角矩阵的情况下,容易计算
对一般的矩阵A,计算比较困难,但若A是可对角化的,则: eA=XeDX−1
记 Cn 表示所有n元复数构成的向量空间,若 α=a+bi 为标量,则其长度为 |α|=a2+b2‾‾‾‾‾‾‾√ 。 Cn 中的向量 z=(z1,z2,...,zn) 的长度为
定义:令V为一复数域上的向量空间,V上的内积定义为关联一对向量z和w的复数
令M为复矩阵, M⎯⎯⎯⎯ 为其共轭矩阵, MH 为 M⎯⎯⎯⎯ 的转置,若 M=MH ,则称它为埃尔米特矩阵(Hermitian)。实对称矩阵均为埃尔米特矩阵。
埃尔米特矩阵与特征向量:埃尔米特矩阵的特征值均为实的,且属于不同特征值的特征向量为正交的。
酉矩阵:若方阵U的列向量构成 Cn 中的一个规范正交基,则称其为酉矩阵(unitary matrix)。U为酉矩阵的充要条件是 UHU=I ,实酉矩阵为正交矩阵。
若埃尔米特的对角化:若埃尔米特矩阵A的特征值互不相同,则存在一个酉矩阵U对角化A。
舒尔(schur)定理:对每一个方阵A,存在一个酉矩阵U,使得 UHAU 为上三角矩阵。将A分解 UHTU 称为舒尔分解。当A为埃尔米特矩阵时,T为对角矩阵。
谱定理:若A为埃尔米特矩阵,则存在一个酉矩阵U对角化A。
定理:若A为实对称矩阵,则存在一个正交矩阵Q对角化A,即 QTAQ=D ,其中D是对角的。
正规矩阵:矩阵A若满足 AAH=AHA ,则称A为正规矩阵。
定理:矩阵A是正规矩阵,当且仅当A有一个完备的规范正交特征向量集。
SVD定理:若A为任意m*n矩阵,则A有一个奇异值分解
奇异值(SVD)分解:将m*n的矩阵A分解为乘积 USVT ,其中U是m*m的正交矩阵,V是一个n*n正交矩阵,S是一个m*n矩阵,其对角线下的元素均为0,且对角线元素满足: s1≥s2≥...≥sn≥0 ,通过分解可得惟一一组 si ,称其为A的奇异值。
若A为一m*n矩阵,且Q为一m*m的正交矩阵,则 ||QA||F=||A||F
下面的代码显示了使用numpy对矩阵进行SVD分解的方法
import numpy as np
a = np.array([[1,1],[1,1],[0,0]])
s,v,d = np.linalg.svd(a)
print v.astype(int) # [2,0] 奇异值向量
print s,d
'''
[[-0.70710678 -0.70710678 0. ]
[-0.70710678 0.70710678 0. ]
[ 0. 0. 1. ]]
[[-0.70710678 -0.70710678]
[ 0.70710678 -0.70710678]]
'''
SVD分解可以应用在数字图像压缩,主成分分析等领域,用于数据的压缩或降维。
数值秩:一个m*n的矩阵的数值秩(numberical rank)为矩阵的奇异值中大于 s1∗max(m,n)∗ϵ 的个数。其中s1为A最大的奇异值,且 ϵ 为计算机的单位舍入误差。在matlab或numpy中rank都计算的是数值秩。
定义:一个二次(quadratic)方程为两个变量x和y的方程
上面的二次方程对应的图形为圆锥曲线(conic section)。圆,椭圆,双曲线,抛物线均可由其表示。
主轴定理:若A为一实对称的n*n矩阵,则存在一个变量变换 u=QTx 使得 xTAx=uTDu ,其中D为一对角矩阵。
定义:一个实对称矩阵A称
定理:若A为n阶实对称矩阵,A是正定的,当且仅当其特征值均为正
前主子矩阵:给定n*n的矩阵A,令 Ar 表示将A的最后n-r行和列删去后得到的矩阵,称其为A的r阶前主子矩阵(leading principal submatrix)。
对称正定矩阵的性质:
下面的代码演示了使用numpy对矩阵进行cholesky分解的方法
a = np.array([[4,2],[2,10]])
l = np.linalg.cholesky(a)
print l #[[2,0],[1,3]]