机器学习笔记--线性代数
2017-08-15 21:26
363 查看
谈到线性代数,只知道什么矩阵啊,向量啊,啥特征值,特征分解啊之类,也就知道些公式怎么用,概念也已经有些许模糊了。这里慢慢整理,吸收吧,毕竟线性代数对于后续的机器学习算法的理解还是非常重要的。
其中x1,x2,⋯,xn是未知数,a1,a2,⋯,an和b是实数或者复数
⎡⎣⎢⎢⎢⎢u1u2⋮un⎤⎦⎥⎥⎥⎥
y=c1ν1+c2ν2+⋯+cpνp
称为向量ν1,ν2,⋯,νp以c1,c2,⋯,cp为权的线性组合。
若A是m×n矩阵,它的各列为a1,a2,⋯,an,若x是Rn中的向量,则A和x的积,记为Ax,就是A的各列以x中对应元素为权的线性组合,即:
Ax=[a1a2⋯an]⎡⎣⎢⎢⎢⎢x1x2⋮xn⎤⎦⎥⎥⎥⎥=x1a1+x2a2+⋯+xnan
要判断向量b是否属于Span{ν1,ν2,⋯,νp},判断如下方程是否有解。x1ν1+x2ν2+⋯+xpνp=b
Span{ν} 和 Span{ν,u}的集合意义,若Rn是R3,那么前者是三维空间的一条直线,后者是三维空间一个平面。
矩阵也需要类似两个方程都成立,一般n×n矩阵A可逆,存在AC=I且CA=I
I=In是n×n的单位矩阵,若A可逆,逆是唯一的,于是有:
AA−1=I且A−1A=I
一个例子:
如下所示:
A=⎡⎣⎢⎢⎢⎢1∗∗∗01∗∗001∗0001⎤⎦⎥⎥⎥⎥⎡⎣⎢⎢⎢⎢◼000∗◼00∗∗00∗∗◼0∗∗∗0⎤⎦⎥⎥⎥⎥
A=LU,其中L是m×m下三角矩阵,U是一个等价的 m×n阶梯矩阵。
当A=LU时,方程Ax=b可写成L(Ux)=b,把Ux写成y,求解:
{Ly=bUx=y
LU分解算法
偷个懒,不想写矩阵的公式了,太多了,就直接截个例子图吧,那些定义看着头疼,例子比较清晰
求矩阵的LU分解:
看下例子,解如下方程组:
{3x1−2x2=6−5x1+4x2=8
按照Ax=b型,得如下:
A=[3−5−24],A1(b)=[68−24],A2(b)=[3−568]
由于A的行列式为detA=2,根据克拉默法则解得:
⎧⎩⎨⎪⎪x1=detA1(b)detA=24+162=20x2=detA2(b)detA=24+302=27
可以得出:
xi=detAi(b)detA,i=1,2,...,n
列空间:A的各列的线性组合的集合,记作:ColA
零子空间:都是零向量组成的集合,写成:{0}
随机矩阵:各列向量为概率向量的方阵
马尔科夫链:一个概率向量序列x0,x1,x2,⋯和一个随机矩阵P,使得x1=Px0,x2=Px1,x3=Px2,⋯可得一阶微分方程:xk+1=Pxk,k=0,1,2,⋯
Au=[1562][6−5]=[−2420]=−4[6−5]=−4u
故u是特征值为-4的特征向量。
A−λI=⎡⎣⎢⎢a1100a12a220a13a23a33⎤⎦⎥⎥−⎡⎣⎢⎢λ000λ000λ⎤⎦⎥⎥=⎡⎣⎢⎢a11−λ00a12a22−λ0a13a23a33−λ⎤⎦⎥⎥
(A−λI)=0有非平凡解,A的特征值为a11,a22,a33。
A=⎡⎣⎢⎢300600−862⎤⎦⎥⎥,B=⎡⎣⎢⎢4−25013004⎤⎦⎥⎥
由上述可知A的特征值为3,0,2;B的特征值为4,1。
知乎关于特征向量特征值的解释
内积就是:
u⋅v=uTv=[u1u2⋯un]⎡⎣⎢⎢⎢⎢v1v2⋮vn⎤⎦⎥⎥⎥⎥=u1v1+u2v2+⋯+unvn
∥v∥=v⋅v‾‾‾‾√=v21+v22+⋯+v2n‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾√且∥v∥2=v⋅v
假若v是R2中的向量,∥v∥的值和平面到内原点v的线段的长度一直。
L0范数:向量中非0的元素的个数
L1范数:向量中各个元素绝对值之和,也有个美称叫“稀疏规则算子” ∥x∥1=|x1|+|x2|+⋯+|xn|
L2范数:∥x∥2=(|x21|+|x22|+⋯+|x2n|)1/2
关于L0.L1.L2范数点击此更详细
距离的定义和欧几里得空间中点的距离公式一致,其中二维空间,dist(u,v)=∥u−v∥=(u1−v1)2+(u2−v2)2‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾√
三维空间:
dist(u,v)=∥u−v∥=(u1−v1)2+(u2−v2)2++(u3−v3)2‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾√
y=ŷ +z
此处ŷ 属于W且z属于W⊥,实际上,如果{u1,u2,⋯,up}是W的任意正交基,那么:ŷ =y⋅u1u1⋅u1u1+⋯+y⋅upup⋅upup
正交投影几何解释:
如下图R3空间,y的正交投影就是y1+y2的投影。
v1=x1
v2=x2−x2⋅v1v1⋅v1v1
⋮
vp=xp−xp⋅v1v1⋅v1v1−⋯xp⋅vp−1vp−1⋅vp−1vp−1
那么{v1,v2,⋯,vp}是W的一个正交基。
标准正交基:就是把正交基给单位化。
举个例子偷个懒,截个图:
∥∥b−Ax̂ ∥∥⩽∥b−Ax∥
看下知乎的解释:貌似还要结合概率的协方差,还没看到概率呢。
点击这里讲得很好
总算断断续续把线性代数看了下,不过还是看得有些似懂非懂,等以后遇到了再继续看吧,不能一个问题死磕,把学习机器学习的劲头都搞没了,是不?主要还是了解概念,后续反正也会用python的数学库,加上机器学习的一些框架来玩。
1 线性方程组
1.1 线性方程组
a1x1+a2x2+⋯+anxn=b其中x1,x2,⋯,xn是未知数,a1,a2,⋯,an和b是实数或者复数
1.2 向量
仅含一列的矩阵称为列向量,简称向量.若n是正整数,Rn表示所有n个实数数列的集合,通常写成nx1列矩阵的形式:⎡⎣⎢⎢⎢⎢u1u2⋮un⎤⎦⎥⎥⎥⎥
1.3 线性组合
给定Rn中向量ν1,ν2,⋯,νp和标量c1,c2,⋯,cp,向量y=c1ν1+c2ν2+⋯+cpνp
称为向量ν1,ν2,⋯,νp以c1,c2,⋯,cp为权的线性组合。
若A是m×n矩阵,它的各列为a1,a2,⋯,an,若x是Rn中的向量,则A和x的积,记为Ax,就是A的各列以x中对应元素为权的线性组合,即:
Ax=[a1a2⋯an]⎡⎣⎢⎢⎢⎢x1x2⋮xn⎤⎦⎥⎥⎥⎥=x1a1+x2a2+⋯+xnan
1.4 Span
若向量ν1,ν2,⋯,νp是Rn中的向量,则ν1,ν2,⋯,νp的所有线性组合所成的集合用记号Span{ν1,ν2,⋯,νp}表示,称为由ν1,ν2,⋯,νp所生成(张成)的Rn的子集。要判断向量b是否属于Span{ν1,ν2,⋯,νp},判断如下方程是否有解。x1ν1+x2ν2+⋯+xpνp=b
Span{ν} 和 Span{ν,u}的集合意义,若Rn是R3,那么前者是三维空间的一条直线,后者是三维空间一个平面。
1.5 线性变换
由Rn到Rm的一个变换(或称函数、映射)T是一个规则,它把Rn中每个向量x对应以Rm中的一个向量T(x).集Rn称为T的定义域,Rm称为T的余定义域(或取值空间)。对于Rn中的向量x,Rm中向量T(x)称为x(在T作用下)的像,所有像T(x)的集合称为T的值域。2 矩阵运算
2.1 矩阵乘法
看下例子比较容易理解2.2 矩阵的乘幂:
若A是n×n矩阵,k是正整数,则Ak表示k个A的乘积。其中A0是单位矩阵。2.3 矩阵的转置
用AT表示,它的列由A的对应的行构成的,2.4 矩阵的逆
实数3的乘法逆是3−1,满足方程3⋅3−1=1和3−1⋅3=1。矩阵也需要类似两个方程都成立,一般n×n矩阵A可逆,存在AC=I且CA=I
I=In是n×n的单位矩阵,若A可逆,逆是唯一的,于是有:
AA−1=I且A−1A=I
一个例子:
2.5 LU分解
定义如下所示:
A=⎡⎣⎢⎢⎢⎢1∗∗∗01∗∗001∗0001⎤⎦⎥⎥⎥⎥⎡⎣⎢⎢⎢⎢◼000∗◼00∗∗00∗∗◼0∗∗∗0⎤⎦⎥⎥⎥⎥
A=LU,其中L是m×m下三角矩阵,U是一个等价的 m×n阶梯矩阵。
当A=LU时,方程Ax=b可写成L(Ux)=b,把Ux写成y,求解:
{Ly=bUx=y
LU分解算法
偷个懒,不想写矩阵的公式了,太多了,就直接截个例子图吧,那些定义看着头疼,例子比较清晰
求矩阵的LU分解:
2.6 行列式
克拉默法则看下例子,解如下方程组:
{3x1−2x2=6−5x1+4x2=8
按照Ax=b型,得如下:
A=[3−5−24],A1(b)=[68−24],A2(b)=[3−568]
由于A的行列式为detA=2,根据克拉默法则解得:
⎧⎩⎨⎪⎪x1=detA1(b)detA=24+162=20x2=detA2(b)detA=24+302=27
可以得出:
xi=detAi(b)detA,i=1,2,...,n
3 向量空间
一个向量空间是由一些被称为向量的对象构成的非空集合V3.1 向量子空间
一个向量空间是由一个大的向量空间中适当的向量的子集所构成的。列空间:A的各列的线性组合的集合,记作:ColA
零子空间:都是零向量组成的集合,写成:{0}
3.2 子空间的基
生成子空间的一个最小的有限集合就是基,Rn中的子空间H的一组基是H中一个线性无关集。3.3向量的秩
矩阵A的秩是A的列向量的维数,记做rankA3.4 马尔科夫链
概率向量:一个具有非负分量且各分量的数值相加等于1的向量,如:x0=[0.20.8]随机矩阵:各列向量为概率向量的方阵
马尔科夫链:一个概率向量序列x0,x1,x2,⋯和一个随机矩阵P,使得x1=Px0,x2=Px1,x3=Px2,⋯可得一阶微分方程:xk+1=Pxk,k=0,1,2,⋯
4 特征向量与特征值
4.1 定义
A为n×n矩阵,x为非零向量,若存在数λ使Ax=λx成立,则称为λ为A的特征值,x称为对应于λ的特征向量。4.2 例子
若A=[1562],u=[6−5],则:Au=[1562][6−5]=[−2420]=−4[6−5]=−4u
故u是特征值为-4的特征向量。
4.3 三角矩阵特征值
三角矩阵的主对角线的元素是其特征值A−λI=⎡⎣⎢⎢a1100a12a220a13a23a33⎤⎦⎥⎥−⎡⎣⎢⎢λ000λ000λ⎤⎦⎥⎥=⎡⎣⎢⎢a11−λ00a12a22−λ0a13a23a33−λ⎤⎦⎥⎥
(A−λI)=0有非平凡解,A的特征值为a11,a22,a33。
A=⎡⎣⎢⎢300600−862⎤⎦⎥⎥,B=⎡⎣⎢⎢4−25013004⎤⎦⎥⎥
由上述可知A的特征值为3,0,2;B的特征值为4,1。
4.4 应用
图像处理中的PCA方法,选取特征值最高的k个特征向量来表示一个矩阵,从而达到降维分析以及特征显示的方法,还有图像压缩的K-L变换。再比如很多人脸识别,数据流模式挖掘分析等方面。知乎关于特征向量特征值的解释
5 正交性
5.1 内积
u=⎡⎣⎢⎢⎢⎢u1u2⋮un⎤⎦⎥⎥⎥⎥和v=⎡⎣⎢⎢⎢⎢v1v2⋮vn⎤⎦⎥⎥⎥⎥内积就是:
u⋅v=uTv=[u1u2⋯un]⎡⎣⎢⎢⎢⎢v1v2⋮vn⎤⎦⎥⎥⎥⎥=u1v1+u2v2+⋯+unvn
5.2 向量的长度(范数)
向量v的长度,也就是范数,是非负数∥v∥,定义为:∥v∥=v⋅v‾‾‾‾√=v21+v22+⋯+v2n‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾√且∥v∥2=v⋅v
假若v是R2中的向量,∥v∥的值和平面到内原点v的线段的长度一直。
L0范数:向量中非0的元素的个数
L1范数:向量中各个元素绝对值之和,也有个美称叫“稀疏规则算子” ∥x∥1=|x1|+|x2|+⋯+|xn|
L2范数:∥x∥2=(|x21|+|x22|+⋯+|x2n|)1/2
关于L0.L1.L2范数点击此更详细
5.3 Rn空间中的距离
向量u和v的距离,记作dist(u,v)=∥u−v∥距离的定义和欧几里得空间中点的距离公式一致,其中二维空间,dist(u,v)=∥u−v∥=(u1−v1)2+(u2−v2)2‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾√
三维空间:
dist(u,v)=∥u−v∥=(u1−v1)2+(u2−v2)2++(u3−v3)2‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾√
5.4 正交性
如果u⋅v=0,则两个向量u和v相互正交6 正交投影
若W是Rn的一个子空间,那么Rn中每一个向量y可以唯一表示y=ŷ +z
此处ŷ 属于W且z属于W⊥,实际上,如果{u1,u2,⋯,up}是W的任意正交基,那么:ŷ =y⋅u1u1⋅u1u1+⋯+y⋅upup⋅upup
正交投影几何解释:
如下图R3空间,y的正交投影就是y1+y2的投影。
7 格拉姆-施密特法则
对Rn中子空间的一个基{x1,x2,⋯,xp},定义v1=x1
v2=x2−x2⋅v1v1⋅v1v1
⋮
vp=xp−xp⋅v1v1⋅v1v1−⋯xp⋅vp−1vp−1⋅vp−1vp−1
那么{v1,v2,⋯,vp}是W的一个正交基。
标准正交基:就是把正交基给单位化。
8 矩阵的QR分解
如果m×n矩阵A的列线性无关,那么A可以分解为A=QR,其中Q是一个m×n矩阵,其列形成Col A的一个标准正交基,R是一个n×n上三角可逆矩阵且对角线上的元素为正数。举个例子偷个懒,截个图:
9 最小二乘
如果m×n矩阵A和向量b属于Rm,Ax=b的最小二乘解是Rn中的x̂ 使得∥∥b−Ax̂ ∥∥⩽∥b−Ax∥
看下知乎的解释:貌似还要结合概率的协方差,还没看到概率呢。
10 奇异值分解
通过一个例子来学习吧,偷懒截图了。求A=⎡⎣⎢⎢1−22−12−2⎤⎦⎥⎥的一个奇异值分解:点击这里讲得很好
总算断断续续把线性代数看了下,不过还是看得有些似懂非懂,等以后遇到了再继续看吧,不能一个问题死磕,把学习机器学习的劲头都搞没了,是不?主要还是了解概念,后续反正也会用python的数学库,加上机器学习的一些框架来玩。
相关文章推荐
- Andrew Ng 机器学习笔记 03 :线性代数之矩阵
- 机器学习笔记(三) 线性代数复习
- 机器学习笔记_数学基础_4-线性代数
- 线性代数,机器学习,笔记!!!
- Coursera 机器学习 -- Matrices and Vectors 笔记(线性代数复习课)【第一周】
- Machine Learning(Stanford)| 斯坦福大学机器学习笔记--第一周(6.线性代数复习)
- 线性代数笔记5:Gram-Schmidit正交化
- (斯坦福机器学习课程笔记)局部加权线性回归练习
- 人工智障学习笔记——机器学习(2)线性模型
- MIT18.06线性代数课程笔记11:矩阵空间、子空间的交和、秩一矩阵
- MIT线性代数笔记-第五讲
- 机器学习笔记—再谈广义线性模型
- MIT线性代数笔记-第九讲
- MIT线性代数笔记-第十七讲
- [机器学习入门] 李宏毅机器学习笔记-14 (Unsupervised Learning: Linear Dimension Reduction;无监督学习:线性降维)
- 线性代数学习笔记
- 线性代数学习笔记(十三)
- 【机器学习-斯坦福】学习笔记19——线性判别分析(Linear Discriminant Analysis)(二)
- MIT线性代数笔记-第二十四讲
- MIT_线性代数笔记_07_求解Ax=0:主变量、特解