前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >机器学习 学习笔记(1)矩阵 导数 SVD

机器学习 学习笔记(1)矩阵 导数 SVD

作者头像
发布2018-09-03 18:11:52
1.4K0
发布2018-09-03 18:11:52
举报
文章被收录于专栏:WD学习记录

矩阵

A^T
A^T

为转置

(A+B)^T=A^T+B^T
(A+B)^T=A^T+B^T
(AB)^T=B^TA^T
(AB)^T=B^TA^T
I$_{n}$
I$_{n}$

表示n阶单位阵

(A^T)^{-1}=(A^{-1})^T
(A^T)^{-1}=(A^{-1})^T
(AB)^{-1}=B^{-1}A^{-1}
(AB)^{-1}=B^{-1}A^{-1}
det(A^T)=det(A)
det(A^T)=det(A)

对于n阶方阵A,它的迹是主对角线上的元素之和,即

tr(A)=\sum A_{ii}
tr(A)=\sum A_{ii}

,有如下性质:

tr(A^T)=tr(A)
tr(A^T)=tr(A)
tr(A+B)=tr(A)+tr(B)
tr(A+B)=tr(A)+tr(B)
tr(AB)=tr(BA)
tr(AB)=tr(BA)

n阶方阵行列式定义为:

det(A)=\sum_{\sigma \in S_n}par(\sigma )A_{1\sigma _1}A_{2\sigma _2}...A_{n\sigma _n}
det(A)=\sum_{\sigma \in S_n}par(\sigma )A_{1\sigma _1}A_{2\sigma _2}...A_{n\sigma _n}

,其中Sn为所有n阶排列的集合,

par(\sigma )
par(\sigma )

的值为-1或+1取决于

\sigma =(\sigma _1,\sigma _2,...,\sigma _n)
\sigma =(\sigma _1,\sigma _2,...,\sigma _n)

为奇排列或者偶排列,即其中出现的降序的次数为奇数或者偶数,例如(1,3,2)中降序次数为1,(3,1,2)中降序次数为2。

n阶方阵的行列式有如下性质:

det(cA)=c^n det(A)
det(cA)=c^n det(A)
det(A^T)=det(A)
det(A^T)=det(A)
det(AB)=det(A)det(B)
det(AB)=det(A)det(B)
det(A^{-1})=det(A)^{-1}
det(A^{-1})=det(A)^{-1}
det(A^n)=det(A)^n
det(A^n)=det(A)^n

矩阵A的Frobenius范数定义为:

||A||_F=(tr(A^TA))^{1/2}=(\sum_{i=1}^m\sum_{j=1}^nA^{2}_{ij})^{1/2}
||A||_F=(tr(A^TA))^{1/2}=(\sum_{i=1}^m\sum_{j=1}^nA^{2}_{ij})^{1/2}

可以看出,矩阵的Frobenius范数就是将矩阵扩张成向量后的L2范数。

导数

向量a,对于标量x的导数,以及x相对于a的导数都是向量,第i个分量分别为:

(\frac{\partial \bold a}{ \partial x})_i=\frac{\partial a_i}{\partial x}
(\frac{\partial \bold a}{ \partial x})_i=\frac{\partial a_i}{\partial x}
(\frac{\partial x}{\partial \bold a})_i=\frac{\partial x}{\partial a_i}
(\frac{\partial x}{\partial \bold a})_i=\frac{\partial x}{\partial a_i}

类似的,矩阵A对于标量x的导数,以及x对于A的导数都是矩阵,其第i行j列的元素为:

(\frac{\partial \bold A}{\partial x})_{ij}=\frac {\partial A_{ij}}{\partial x}
(\frac{\partial \bold A}{\partial x})_{ij}=\frac {\partial A_{ij}}{\partial x}
(\frac{\partial x}{\partial \bold A})_{ij}=\frac{\partial x}{\partial A_{ij}}
(\frac{\partial x}{\partial \bold A})_{ij}=\frac{\partial x}{\partial A_{ij}}

对于函数f(x),假定其对向量的元素可到,则f(x)关于x的一阶导数是一个向量,其第i个分量为:

(\nabla f(\bold x))_i= \frac{\partial f(\bold x)}{\partial x_i}
(\nabla f(\bold x))_i= \frac{\partial f(\bold x)}{\partial x_i}

f(x)关于x的二阶导数是称为海森矩阵(Hessian matrix)的一个方阵,其第i行第j列上的元素为:

(\nabla^2f(\bold x))_{ij}=\frac{\partial^2 f(\bold x)}{\partial x_i \partial x_j}
(\nabla^2f(\bold x))_{ij}=\frac{\partial^2 f(\bold x)}{\partial x_i \partial x_j}

向量和矩阵的导数满足乘法法则

\frac{\partial \bold x^T \bold a}{\partial \bold x}=\frac{\partial \bold a^T \bold x}{\partial \bold x}=\bold a
\frac{\partial \bold x^T \bold a}{\partial \bold x}=\frac{\partial \bold a^T \bold x}{\partial \bold x}=\bold a
\frac{\partial \bold{AB}}{\partial \bold x}=\frac{\partial \bold A}{\partial \bold x}\bold B+\bold A \frac{\partial \bold B}{\partial \bold x}
\frac{\partial \bold{AB}}{\partial \bold x}=\frac{\partial \bold A}{\partial \bold x}\bold B+\bold A \frac{\partial \bold B}{\partial \bold x}

\bold A^{-1}\bold A= \bold I
\bold A^{-1}\bold A= \bold I

和上式可知:

\frac{\partial \bold A^{-1}}{\partial x}=- \bold A ^{-1} \frac{\partial \bold A}{\partial x} \bold A^{-1}
\frac{\partial \bold A^{-1}}{\partial x}=- \bold A ^{-1} \frac{\partial \bold A}{\partial x} \bold A^{-1}

证明过程见:逆矩阵求导

若求导的标量是矩阵A的元素,则有

\frac {\partial tr(\bold{AB})}{\partial A_{ij}}=B_{ji}
\frac {\partial tr(\bold{AB})}{\partial A_{ij}}=B_{ji}
\frac{\partial tr(\bold {AB})}{\partial \bold A}=\bold B^T
\frac{\partial tr(\bold {AB})}{\partial \bold A}=\bold B^T
\frac{\partial tr(\bold{A^TB})}{\partial \bold A}=\bold B
\frac{\partial tr(\bold{A^TB})}{\partial \bold A}=\bold B
\frac{\partial tr(\bold A)}{\partial \bold A}=\bold I
\frac{\partial tr(\bold A)}{\partial \bold A}=\bold I
\frac{\partial tr(\bold {ABA^T})}{\partial \bold A}=\bold {A(B+B^T)}
\frac{\partial tr(\bold {ABA^T})}{\partial \bold A}=\bold {A(B+B^T)}

,证明过程如下:参考:方阵的迹(trace)及其微分(导数)

\frac{||\bold A||^2_F}{\partial \bold A}=\frac {\partial tr( \bold{AA}^T)}{\partial \bold A}=2\bold A
\frac{||\bold A||^2_F}{\partial \bold A}=\frac {\partial tr( \bold{AA}^T)}{\partial \bold A}=2\bold A

SVD

任意实矩阵A都可以分解为:

\bold A=\bold U \bold \Sigma \bold V^T
\bold A=\bold U \bold \Sigma \bold V^T

U和V 分别满足

U^TU=I
U^TU=I

V^TV=I
V^TV=I

(\Sigma)_{ij}=\sigma _i
(\Sigma)_{ij}=\sigma _i

,且其他位置元素均为0,

\sigma_1\geqslant \sigma_2 \geqslant ... \geqslant 0
\sigma_1\geqslant \sigma_2 \geqslant ... \geqslant 0

U中的列向量称为A的左奇异向量,V中的列向量称为A的右奇异向量,

\sigma _i
\sigma _i

 是奇异值,矩阵A的秩等于非0奇异值的个数。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2018年08月09日,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 矩阵
  • 导数
  • SVD
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档