正规方程之矩阵求导(Matrix derivatives)

1、背景

最近,开始学习机器学习之旅。我的学习方式是:跟着斯坦福公开课Andrew Ng的讲义和视屏开始学习。

下面,简单介绍一下线性回归下面的普通方程之矩阵求导。
对应英文章节:Linear Regression-->The normal equations-->Matrix derivatives


2、矩阵求导公式

AtrAB=BT ∇ A t r A B = B T                                        (1) ( 1 )

ATf(A)=(Af(A))T ∇ A T f ( A ) = ( ∇ A f ( A ) ) T                          (2) ( 2 )

AtrABATC=CAB+CTABT ∇ A t r A B A T C = C A B + C T A B T         (3) ( 3 )

A|A|=|A|(A1)T ∇ A | A | = | A | ( A − 1 ) T                               (4) ( 4 )


3、公式推导

3.1 公式(1)的推导


: 知 识 须 知 :
1tr线tr线 1 、 t r 为 矩 阵 的 迹 , 即 对 角 线 元 素 之 和 。 t r 既 然 是 对 角 线 元 素 之 和 , 那 么 矩 阵 为 正 方 形 矩 阵 。
2AA 2 、 ∇ 符 号 为 求 梯 度 , 实 际 上 就 是 求 导 。 ∇ A 就 是 对 A 矩 阵 求 导 。

A=(a11a21a12a22) 设 1 A = ( a 11 a 12 a 21 a 22 ) ,B=(b11b21b12b22) , B = ( b 11 b 12 b 21 b 22 )

: 根 据 矩 阵 的 相 乘 , 那 么 有 :

AB=(a11b11+a12b21a21b11+a22b21a11b12+a12b22a21b12+a22b22) A B = ( a 11 b 11 + a 12 b 21 a 11 b 12 + a 12 b 22 a 21 b 11 + a 22 b 21 a 21 b 12 + a 22 b 22 )


F=trAB 设 1 F = t r A B
trAB=a11b11+a12b21+a21b12+a22b22 而 1 t r A B = a 11 b 11 + a 12 b 21 + a 21 b 12 + a 22 b 22

AtrAB=(Fa11Fa21Fa12Fa22)=(b11b12b21b22)=BT 则 有 1 ∇ A t r A B = ( ∂ F ∂ a 11 ∂ F ∂ a 12 ∂ F ∂ a 21 ∂ F ∂ a 22 ) = ( b 11 b 21 b 12 b 22 ) = B T

得 证


3.2 公式(2)的推导

A=(a11a21a12a22) 设 1 A = ( a 11 a 12 a 21 a 22 )

f(A)=2a11+3a12+4a21+5a22 设 1 f ( A ) = 2 a 11 + 3 a 12 + 4 a 21 + 5 a 22

Af(A)=(2435) 则 1 ∇ A f ( A ) = ( 2 3 4 5 )

(Af(A))T=(2345) 转 置 后 为 1 ( ∇ A f ( A ) ) T = ( 2 4 3 5 )

ATf(A)=(2345)=(Af(A))T 而 1 ∇ A T f ( A ) = ( 2 4 3 5 ) = ( ∇ A f ( A ) ) T 1 得 证


3.3 公式(3)的推导


: 知 识 须 知 :
1tr(A)=tr(AT) 1 、 t r ( A ) = t r ( A T )
2Atr(AB)=BT 2 、 ∇ A t r ( A B ) = B T
3(AB)T=BTAT 3 、 ( A B ) T = B T A T

X=A 令 1 X = A

Atr(ABATC)=Xtr(XBATC)+Xtr(ABXTC) ∇ A t r ( A B A T C ) = ∇ X t r ( X B A T C ) + ∇ X t r ( A B X T C )
=(BATC)T+Xtr(CABXT) 10000000000 = ( B A T C ) T + ∇ X t r ( C A B X T )
=BTACT+Xtr(X(CAB)T) 10000000000 = B T A C T + ∇ X t r ( X ( C A B ) T )
=BTACT+((CAB)T)T 10000000000 = B T A C T + ( ( C A B ) T ) T
=BTACT+Xtr(X(CAB)T) 10000000000 = B T A C T + ∇ X t r ( X ( C A B ) T )
=CTABT+CAB 10000000000 = C T A B T + C A B 1 得 证


3.4 公式(4)的推导


: 知 识 须 知 :
1AA1=E=1() 1 、 A A − 1 = E = 1 1 ( 单 位 矩 阵 )
2tra=a(a) 2 、 t r a = a 1 ( a 为 是 实 数 )
3traA=atrA 3 、 t r a A = a t r A
4AtrAB=BT 4 、 ∇ A t r A B = B T
5|A||A| 5 、 | A | 为 行 列 式 , 既 然 是 行 列 式 就 能 求 出 一 个 实 数 , 则 | A | 为 一 个 实 数

A|A|=|A|Atr1 ∇ A | A | = | A | ∇ A t r 1
=|A|AtrE = | A | ∇ A t r E
=|A|AtrAA1 = | A | ∇ A t r A A − 1
=|A|(A1)T = | A | ( A − 1 ) T


4、相关资料

视屏网站:斯坦福公开课视频-机器学习
讲义网站:斯坦福公开课讲义-机器学习

这里写图片描述

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值