深度学习的日记一:线性代数

来源:互联网 发布:php mysql 扩展 编辑:程序博客网 时间:2024/05/21 17:11

读书,记笔记,总结,回忆

一:标量,向量,矩阵和张量

        1:标量  一个标量就是一个单独的数    斜体  小写   类似于集合上的元素

        2:向量:一个向量是一列有序排列的数  通过索引确定每一个数   粗体小写  下标是索引

                          把向量看作空间中的点,每个元素都是不同坐标轴上的坐标(Wecan think ofvectors as identifyingpoints inspace, with eachelement giving the coordinatealong a differentaxis)

                          符号‘_’表示集合的补集中的索引。

       3:矩阵:矩阵是一个二维数组,其中的每个元素都被两个索引确定。   粗体大写

                       Ifa real-valuedmatrix A has a height of m and a widthof n , then wesay that ARm×n )上标  

                       用‘:’表示某一行或者某一列的全部元素

        4:张量: 一个数组中的元素分布在若干维坐标的规格网络中,为张量,多维数组,多个索引

       5:转置 : 矩阵的转置是以对角线为轴的镜像。

                   

                   向量的转置可以看作是只有一行的矩阵。将向量元素作为行矩阵写在文本行中,然后用转置操作将其转变为列向量。

                  标量是一个只有一个元素的矩阵,转置是它本身。

          6:矩阵相加:前提是矩阵的形状一样。对应位置的元素 相加。  

                标量与矩阵相乘或相加:将其与矩阵的每个元素相乘或者相加   

  二:矩阵向量相乘

             矩阵A的列数必须和矩阵B的行数相等。C=AB


       元素对应乘机:两个矩阵中元素的乘机 

       点积:两个相同维数的向量x和y的点积可以看作是x的转置和y的乘机

     矩阵的乘机服从分布律也服从结合律

       矩阵乘积不满足交换律,向量的点积满足

     

 线性方程组:Ax=b    A是一个已知矩阵,b属于一个向量,x是要求解的未知向量

       


三:单位矩阵和逆矩阵

任意向量和单位矩阵相乘都不会有什么改变。将保持n维向量不变的单位矩阵记作In   

单位矩阵的主对角线的元素都为1,其余都为0

            逆矩阵记作A^(-1)A=In

四:线性相关和生成子空间:

 如果逆矩阵A1存在,那么式Ax=b肯定对于每一个向量b恰好存在一个解。但是,对于方程组而言,对于向量b的某些值,有可能不存在解,或者存在无限多个解。存在多于一个解但是少于无限多个解的情况是不可能发生的;因为如果xy都是某方程组的解,则

z=ax+(1a)y


(其中a取任意实数)也是该方程组的解。



方程组的解:无解,一个,无穷

线性组合其实就是利用两个向量得到另一个向量的方式。

为了分析方程有多少个解,我们可以将A的列向量看作是从原点(origin)(元素都是零的向量)出发的不同方向,确定有多少种方法可以到达向量b。在这个观点下,向量x中的每个元素表示我们应该沿着这些方向走多远,即xi表示我们需要沿着第i个向量的方向走多远:

Ax=ixiA:,i.


  一般而言,这种操作被称为线性组合(linear combination)。

形式上,一组向量的线性组合,是指每个向量乘以对应标量系数之后的和,即: iciv(i).

生成子空间(span):向量生成了一个空间,意味着该空间由这些向量的全部线性组合组成。如:矩阵A的列向量生成了矩阵A的列空间

列空间:矩阵A中列向量的所有线性组合

零空间:满足Ax=0的所有解的集合

线性独立:若能找到一组非零系数,使一组向量的线性组合 ,则该组向量为线性相关,否则为线性独立。        这里可以引出一个线性相关性与矩阵零空间的关系:

         令 ,即矩阵A中的每一列看作一个列向量。那么,如果矩阵A的零空间仅包含零向量,则这三个向量是独立的;若包含非零向量,则这三个向量是相关的。

五:范数

 衡量向量大小的函数被称为范数(norm)

形式为:其中,p属于实数,大于等于1 

范数是指将向量映射到非负值的函数。直观上而言,向量x的范数衡量从原点到点x的距离。

范数是满足下列性质的任意函数:

L-P范数
与闵可夫斯基距离的定义一样,L-P范数不是一个范数,而是一组范数,其定义如下:


Lp=1nxpipx=(x1,x2,,xn)

根据P 的变化,范数也有着不同的变化,一个经典的有关P范数的变化图如下:
这里写图片描述
上图表示了p从无穷到0变化时,三维空间中到原点的距离(范数)为1的点构成的图形的变化情况。以常见的L-2范数(p=2)为例,此时的范数也即欧氏距离,空间中到原点的欧氏距离为1的点构成了一个球面。

实际上,在0p<1时,Lp并不满足三角不等式的性质,也就不是严格意义下的范数。以p=0.5,二维坐标(1,4)、(4,1)、(1,9)为例,(1+4)0.5+(4+1)0.5<(1+9)0.5。因此这里的L-P范数只是一个概念上的宽泛说法。

平方L^2范数:可以通过点积x^Tx计算    对x中的每个元素的导数只取决于对应的元素     在原点附近增长很慢

L^2范数对每个元素的导数却和整个向量相关。

L2范数
L2范数是我们最常见最常用的范数了,我们用的最多的度量距离欧氏距离就是一种L2范数,它的定义如下:


||x||2=ix2i

表示向量元素的平方和再开平方。
像L1范数一样,L2也可以度量两个向量间的差异,如平方差和(Sum of Squared Difference):

SSD(x1,x2)=i(x1ix2i)2

对于L2范数,它的优化问题如下:


min||x||2
s.t.Ax=b

L2范数通常会被用来做优化目标函数的正则化项,防止模型为了迎合训练集而过于复杂造成过拟合的情况,从而提高模型的泛化能力。

L1范数
L1范数是我们经常见到的一种范数,它的定义如下:


||x||1=i|xi|

表示向量x中非零元素的绝对值之和。

L1范数有很多的名字,例如我们熟悉的曼哈顿距离、最小绝对误差等。使用L1范数可以度量两个向量间的差异,如绝对误差和(Sum of Absolute Difference):


SAD(x1,x2)=i|x1ix2i|

对于L1范数,它的优化问题如下:


min||x||1
s.t.Ax=b



L0范数
当P=0时,也就是L0范数,由上面可知,L0范数并不是一个真正的范数,它主要被用来度量向量中非零元素的个数。用上面的L-P定义可以得到的L-0的定义为:

||x||=1nx0i0x=(x1,x2,,xn)

这里就有点问题了,我们知道非零元素的零次方为1,但零的零次方,非零数开零次方都是什么鬼,很不好说明L0的意义,所以在通常情况下,大家都用的是:

||x||0=#(i|xi0)

表示向量x中非零元素的个数。

对于L0范数,其优化问题为:


min||x||0
s.t. Ax=b



L-
当P=
时,也就是L-范数,它主要被用来度量向量元素的最大值。用上面的L-P定义可以得到的L的定义为:

||x||=1nxix=(x1,x2,,xn)

与L0一样,在通常情况下,大家都用的是:

||x||=max(|xi|)

来表示L


F范数:
衡量矩阵的大小

两个向量的点积可以用范数表示:  θ表示x和y之间的夹角


六:特殊类型的矩阵和向量
对角矩阵:只在对角线上含有非零元素,其他位置都为0
diag(v)x:将x中的每个元素xi放大vi倍。对角方阵的逆矩阵存在:主对角线的倒数
非方阵的对角矩阵没有逆矩阵
对称矩阵:矩阵是转置和自己相等的矩阵:A=A^T
单位向量是具有单位范数的向量:||x||2=1
正交:向量的点积为0   如果两个向量都有非零向量范数,那么这两个向量之间的夹角是90°。
如果向量不仅互相正交,并且范数都为1,则为标准正交。
正交矩阵:行向量和列向量是分别标准正交的方阵:A^TA=AA^T=I
A的逆等于A的转置











iciv(i).

原创粉丝点击