2018-11-08
author: zhangyifeng
title: some background need for ml(还会更新)
Matrix
notation
: transpose of
,
where is all set of
permutation. par(
) can be
-1 or +1.
also,
Frobenius norm of :
it can be regarded as norm when metrix was extended to vectors
函数空间的集合表示:如果是集合,则令
表示所有从
到
的函数的集合。这里,
是有限笛卡尔积(Cartesian power)
的推广。例如,
可定义为所有从
到
的函数集合
,更多内容可参看:http://faculty.bard.edu/belk/math351/FunctionSpaces.pdf
Basic calculate
误差
测量误差主要分为系统误差和偶然误差
系统误差成规律性分布,有明显的倾向性,如仪器本身的误差,人的误差,不服从正态分布。
偶然误差(又称随机误差)成正态分布,可能是观测的误差。
common distribution
gamma distribution
gamma function {#gamma-function .unnumbered}
, where
Matrix Differentiation
Matrix Differentiation-from functional analysis points
假设和
为赋范向量空间,
是一个映射,那么
在
可导的意思是说存在一个有界线性算子
,使得对于任意的
都存在
,对于满足
的
都有
.我们称
为
在
点的微分。
以上定义有一个等价的表述,往往计算起来更方便:对于距离足够近的点
,即
,
有.
(注:此处应该理解为线性算子
在
这个点的值,而不是
乘以
。不过在有限维空间所有线性算子都可以用矩阵表述,
在
,这个值便正好可以表述为矩阵与向量的乘积(Riesz表示定理))
例子1:假设是一个
的映射,其中
为
维对称阵的空间。
所以我们有,这个就是
在
点的微分。
例子2:最小二乘问题是一个
的映射。
所以我们有,这个就是
在
点的微分。在这种情况下,
这个有界线性算子(梯度)可以用矩阵来表述(Riesz表示定理):
,
所以梯度
总结:在有限维的情况下,我们可以先求的微分
,利用Riesz表示定理,得
,可求得对应的gradient
vector或者jacobi矩阵,也就是导数,显然,
这里可以看出,导数和微分差一个转置。
标量
对矩阵
的导数
核心思想 {#核心思想 .unnumbered}
函数的微分 = 函数的导数 和 自变量的微分 的内积
矩阵微分运算法则
加减法:
矩阵乘法:
转置:
迹:
逆:。此式可在
两侧求微分来证明
行列式:
,其中表示X的伴随矩阵,在X可逆时又可以写作
。此式可用Laplace展开来证明,详见张贤达《矩阵分析与应用》第279页
逐元素乘法:表示尺寸相同的矩阵X,Y逐元素相乘
逐元素函数:
,是逐元素标量函数运算,
是逐元素求导数。
举个例子, 。
迹技巧(trace trick)
标量套上迹:
转置:
线性:
矩阵乘法交换:,其中
与
尺寸相同。两侧都等于
矩阵乘法/逐元素乘法交换:,其中
,
,
尺寸相同。两侧都等于
复合法则
假设已求得,而
是
的函数,如何求
呢?在微积分中有标量求导的链式法则
,但这里我们不能沿用链式法则,因为矩阵对矩阵的导数
截至目前仍是未定义的。于是我们继续追本溯源,链式法则是从何而来?源头仍然是微分。我们直接从微分入手建立复合法则:先写出
,再将
用
表示出来代入(这个是矩阵对矩阵的导数,在下一节我们会了解到),并使用迹技巧将其他项交换至dX左侧,即可得到
。
标量对矩阵的一般求导步骤
1.对标量函数两端作微分,利用微分运算法则化简
2.对两端作迹运算,利用迹运算法则化简,将移到最右端
3.利用微分和矩阵的联系,求
一些例子
例1:,求
。其中
是
列向量,
是
矩阵,
是
列向量,
是标量。
解:
1.作微分:这里的是常量,
,
,得:
2.作迹运算:,注意这里我们根据
3.对照导数与微分的联系,得到
。
例2:,求
。其中
是
列向量,
是
矩阵,
是
列向量,
表示逐元素求指数,
是标量。
解:
1.作微分:
2.作迹运算:
3.对照导数与微分的联系,得到
。
例3【线性回归】:,
求的最小二乘估计,即求
的零点。其中
是
列向量,
是
矩阵,
是
列向量,
是标量。
解:严格来说这是标量对向量的导数,不过可以把向量看做矩阵的特例(此时可以省略第二步:作迹运算)。
先将向量模平方改写成向量与自身的内积:
1.求微分:。
2.对照导数与微分的联系,得到
。
的零点即
的最小二乘估计为
。
例4【方差的最大似然估计】:样本,求方差
的最大似然估计。写成数学式是:
,求
的零点。其中
是
列向量,
是样本均值,
是
对称正定矩阵,
是标量。
解:
1.作微分:第一项是,第二项是
。
2.作迹运算:
,定义为样本方差矩阵。得到
。
3.对照导数与微分的联系,有,其零点即
的最大似然估计为
。
矩阵
对矩阵
的导数 {#矩阵f对矩阵x的导数 .unnumbered}
一般而言,标量就是的矩阵,如果我们能推导出矩阵对矩阵的导数,标量对矩阵的导数不是自然的么,不应该可以统一进来么,那为啥还要大费周章地先写标量对矩阵的导数。原因是这两者不完全相同,并不能很简单地统一起来。
应该怎么定义矩阵对矩阵的导数。回答这个问题不是随意的,为了满足两个要求,我们对矩阵对矩阵的定义有严格的要求。我们的两个要求是:
1.矩阵对矩阵
的导数应包含所有
个偏导数
,从而不损失信息。
2.在标量对矩阵求导的地方,我们发现导数与微分有简明的联系。这里我们仍希望他们之间存在某种联系。
为此,我们先定义向量对向量
的导数
此时,可以证明,,这个定义满足我们的两个要求,所以我们现在作好了了向量对向量的导数。
再定义矩阵的(按列优先)向量化:
并定义矩阵F对矩阵X的导数=
。
此时,可以证明,导数与微分有联系 =
,这样,我们作好了满足要求的矩阵关于矩阵的导数。
列向量化运算法则
1.线性:。
2.[
矩阵乘法]{}:,其中
表示Kronecker积,
的Kronecker积是
。此式证明见张贤达《矩阵分析与应用》第107-108页。
3.转置:,
是
矩阵,其中
是换位矩阵(commutation
matrix)(就是一些初等换位矩阵的乘积)。
4.逐元素乘法:,其中
是用
的元素(按列优先)排成的对角阵。
一些Kronecker积和交换矩阵相关的恒等式
1.。
2.。
3.。可以对
求导来证明,一方面,直接求导得到
;另一方面,引入
,有
,
,用链式法则得到
。
4.,所以换位矩阵是正交矩阵。
5.,
是
矩阵,
是
矩阵。可以对
做向量化来证明,一方面,
;另一方面,
。
复合法则
假设已求得,而
是
的函数,如何求
呢?从导数与微分的联系入手,
,可以推出链式法则
矩阵对矩阵的一般求导步骤
1.对矩阵值函数两端作微分,利用微分运算法则化简
2.对两端作列向量化运算,利用列向量化法则化简,注意看列向量里面是什么形式,就用什么公式,如列向量里面是两个矩阵相乘,就想办法凑进去一个单位矩阵,并使得在中间,然后利用vec的矩阵乘法公式
3.利用微分和矩阵的联系 =
,求
一些例子
例1:,
是
矩阵,求
。
解: 1.作微分:
2.列向量化,使用矩阵乘法的技巧,注意在右侧添加单位阵:
3.对照导数与微分的联系得到。
特例:如果退化为向量,即
,则根据向量的导数与微分的关系d
,得到
例2: ,X是n×n矩阵,求
。
解: 1.求微分:
2.列向量化,,
3.对照导数与微分的联系,得到,注意它是对称矩阵。
例3:是
矩阵,
是
矩阵,
是
矩阵,
为逐元素函数,求
。
解: 1.求微分:
2.列向量化:。
3.对照导数与微分的联系得到。
注解
1.一般而言,这套方法就是为了矩阵对矩阵求导而引入的,由于这里是利用列向量定义的导数,所以直接应用在标量对矩阵的导数上,会得到一个
的列向量,这与我们一般定义的标量对矩阵的导数相悖,所以一般标量对矩阵的导数,我们还是利用上一节的方法。当然,若将上一节定义的标量
对矩阵
的导数用记号
来表示,则这里定义的
,在牢记这一条的情况下,我们可以用本节的方法来解决标量对矩阵求导,只是没有上一节的方法方便。为了满足读者的好奇心,我们给出标量对矩阵求导的一个例子,并且用两种方法来解决。
2.标量对矩阵的二阶导数,又称Hessian矩阵,定义为是对称矩阵,这个二阶导数分两次进行,第一次是标量对矩阵求导,第二次是矩阵对矩阵求导。
3.如何理解,它是一个换位矩阵,根据
,它的作用是使的
和
的若干行对换位置。由
,
这里,所以
就是单位矩阵(mn×mn)交换
和
行得到的一个矩阵。
对两节内容的总结
我们发展了从整体出发的矩阵求导的技术,导数与微分的联系是计算的枢纽。
上一节中,我们了解了,标量对矩阵的导数与微分的联系是,先对
求微分,再使用迹技巧可求得导数,特别地,标量对向量的导数与微分的联系是
下一节中,我们了解了,矩阵对矩阵的导数与微分的联系是,先对
求微分,再使用列向量化的技巧可求得导数,特别地,向量对向量的导数与微分的联系是
。
reference
Lagrange duality
application
applied on:\
- 最大熵模型\
- SVM(support vector machine)
primal problem
Set are continuously differentiable
function over , consider optimization problem with constraints
generalized Lagrange function
where,
,
are Lagrange multiplier,
After introduced generalized Lagrange function, primal problem is equal
to
dual problem
KKT(Karush-Kuhn-Tucker)condition
if and
are convex function,
are
affine function[^1], and inequation constrains strictly
hold, that is, exist , s.t. for any
, hold
,
then, there must be are the
optimal solution of primal problem as well as dual problem and satisfy
KKT condition at .
Remark: so, when the prerequisites are satisfied, we can use KKT
condition to find the optimal solution
.
is called affine function, when it holds that