矩陣的跡:對於n階方陣a,a的跡(trace)是主對角線上的元素之和,即tr(a)=σi∈[1,n]aii。跡的性質:
(1)tr(at)=tr(a);
(2)tr(a+b)=tr(a)+tr(b);
(3)tr(ab)=tr(ba);
(4)tr(abc)=tr(bca)=tr(cab)。
行列式的性質:設a、b是n階方陣,c為常數,行列式的性質如下:
(1)|c·a|=cn|a|;
(2)|at|=|a|;
(3)|a·b|=|a|·|b|;
(4)若a是可逆矩陣,則|a-1|=1/|a|;
(5)|an|=|a|n。
向量相對於標量的導數與標量相對於向量的導數:向量α相對於標量x的導數、標量x相對於向量α的導數都是向量,其第i個分量分別為:
(1)(∂α/∂x)i=∂αi/∂x;
(2)(∂x/∂α)i=∂x/∂αi。
矩陣相對於標量的導數與標量相對於矩陣的導數:矩陣a對於標量x的導數、標量x對於矩陣a的導數都是矩陣,其第i行第j列上的元素分別為:
(1)(∂a/∂x)ij=∂aij/∂x;
(2)(∂x/∂a)ij=∂x/∂aij。
函式f(x)對向量x的導數:假定函式f(x)對向量x的元素可導,則:
(1)f(x)關於向量x的一階導數是乙個向量,其第i個分量為:(▽f(x))i=∂f(x)/∂xi;
(2)f(x)關於向量x的二階導數是稱為海森矩陣的乙個方陣,其第i行第j列上的元素為:(▽2f(x))ij=∂2f(x)/∂xi∂xj。
向量和矩陣的導數滿足乘法法則:
(1)∂xtα/∂x=∂αtx/∂x=α;
(2)∂ab/∂x=(∂a/∂x)·b+a·(∂b/∂x)。
逆矩陣的導數:∂a-1/∂x=-a-1·∂a/∂x·a-1。
關於矩陣的跡的求導公式:
(1)∂tr(ab)/∂aij=bji;
(2)∂tr(ab)/∂a=bt;
(3)∂tr(atb)/∂a=b;
(4)∂tr(a)/∂a=ⅰ,其中ⅰ是單位陣;
(5)∂tr(abat)/∂a=a·(b+bt);
求導鏈式法則:鏈式法則是計算複雜導數時的重要工具,若f(x)=g(h(x)),則有:
矩陣最常用求導公式:
(1)∂xtax/∂x=(a+at)x;
(2)上面的公式應該是下面的特例,這樣看的話下面的公式好像不對…只有當w是對稱矩陣,即wt=w時,下式才是正確的:
機器學習中的矩陣向量求導 一 求導定義與求導布局
在之前寫的上百篇機器學習部落格中,不時會使用矩陣向量求導的方法來簡化公式推演,但是並沒有系統性的進行過講解,因此讓很多朋友迷惑矩陣向量求導的具體過程為什麼會是這樣的。這裡準備用幾篇博文來討論下機器學習中的矩陣向量求導,今天是第一篇。本系列主要參考文獻為維基百科的matrix caculas和張賢達的...
機器學習矩陣求導
矩陣求導好像讀書的時候都沒學過,因為講矩陣的課程上不講求導,講求導的課又不提矩陣。如果從事機器學習方面的工作,那就一定會遇到矩陣求導的東西。維基百科上 根據y與x的不同型別 實值,向量,矩陣 給出了具體的求導公式,以及一堆相關的公式,查起來都費勁。其實在實際的機器學習工作中,最常用到的就是實值函式y...
向量轉置的怎麼求導 機器學習入門之矩陣求導(一)
矩陣求導可以說是機器學習的門檻了,阻擋了很多人,另外不知道為啥矩陣求導屬於科目的三不管地帶,每科老師都預設你已經會矩陣求導了,都不會專門教你。很多人看不懂西瓜書就是因為看不懂裡面的矩陣求導部分,用西瓜書來入門機器學習可以說是乙個坑了,讓很多人無法對機器學習產生興趣,這其實違背了教育的初衷。雖然有南瓜...