最近,开始学习机器学习之旅。我的学习方式是:跟着斯坦福公开课Andrew Ng
的讲义和视屏开始学习。
下面,简单介绍一下线性回归下面的普通方程之矩阵求导。
对应英文章节:Linear Regression-->The normal equations-->Matrix derivatives
∇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|(A−1)T ∇ A | A | = | A | ( A − 1 ) T (4) ( 4 )
知识须知: 知 识 须 知 :
1、tr为矩阵的迹,即对角线元素之和。tr既然是对角线元素之和,那么矩阵为正方形矩阵。 1 、 t r 为 矩 阵 的 迹 , 即 对 角 线 元 素 之 和 。 t r 既 然 是 对 角 线 元 素 之 和 , 那 么 矩 阵 为 正 方 形 矩 阵 。
2、∇符号为求梯度,实际上就是求导。∇A就是对A矩阵求导。 2 、 ∇ 符 号 为 求 梯 度 , 实 际 上 就 是 求 导 。 ∇ A 就 是 对 A 矩 阵 求 导 。
设1A=(a11a21a12a22) 设 1 A = ( a 11 a 12 a 21 a 22 ) ,B=(b11b21b12b22) , B = ( b 11 b 12 b 21 b 22 )
根据矩阵的相乘,那么有: 根 据 矩 阵 的 相 乘 , 那 么 有 :
得证 得 证
设1A=(a11a21a12a22) 设 1 A = ( a 11 a 12 a 21 a 22 )
设1f(A)=2a11+3a12+4a21+5a22 设 1 f ( A ) = 2 a 11 + 3 a 12 + 4 a 21 + 5 a 22
则1∇Af(A)=(2435) 则 1 ∇ A f ( A ) = ( 2 3 4 5 )
转置后为1(∇Af(A))T=(2345) 转 置 后 为 1 ( ∇ A f ( A ) ) T = ( 2 4 3 5 )
而1∇ATf(A)=(2345)=(∇Af(A))T1得证 而 1 ∇ A T f ( A ) = ( 2 4 3 5 ) = ( ∇ A f ( A ) ) T 1 得 证
知识须知: 知 识 须 知 :
1、tr(A)=tr(AT) 1 、 t r ( A ) = t r ( A T )
2、∇Atr(AB)=BT 2 、 ∇ A t r ( A B ) = B T
3、(AB)T=BTAT 3 、 ( A B ) T = B T A T
令1X=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 )
10000000000=(BATC)T+∇Xtr(CABXT) 10000000000 = ( B A T C ) T + ∇ X t r ( C A B X T )
10000000000=BTACT+∇Xtr(X(CAB)T) 10000000000 = B T A C T + ∇ X t r ( X ( C A B ) T )
10000000000=BTACT+((CAB)T)T 10000000000 = B T A C T + ( ( C A B ) T ) T
10000000000=BTACT+∇Xtr(X(CAB)T) 10000000000 = B T A C T + ∇ X t r ( X ( C A B ) T )
10000000000=CTABT+CAB1得证 10000000000 = C T A B T + C A B 1 得 证
知识须知: 知 识 须 知 :
1、AA−1=E=11(单位矩阵) 1 、 A A − 1 = E = 1 1 ( 单 位 矩 阵 )
2、tra=a1(a为是实数) 2 、 t r a = a 1 ( a 为 是 实 数 )
3、traA=atrA 3 、 t r a A = a t r A
4、∇AtrAB=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|∇AtrAA−1 = | A | ∇ A t r A A − 1
=|A|(A−1)T = | A | ( A − 1 ) T
视屏网站:斯坦福公开课视频-机器学习
讲义网站:斯坦福公开课讲义-机器学习