2019獨角獸企業重金招聘Python工程師標準>>>
Moore-Penrose偽逆(pseudoinverse)。
非方矩陣,逆矩陣沒有定義。矩陣A的左逆B求解線性方程Ax=y。兩邊左乘左逆B,x=By。可能無法設計唯一映射將A映射到B。矩陣A行數大于列數,方程無解。矩陣A行數小于列數,矩陣有多個解。
矩陣A的偽逆A + =lim a->0 (A T A+aI) -1 A T。計算偽逆公式,A + =VD + U T。矩陣U、D、V是矩陣A奇異值分解得到矩陣。對角矩陣D偽逆D + 是非零元素取倒數后再轉置。矩陣A列數多于行數,偽逆求解線性方程是可能解法。x=A + y是方程所有可行解中歐幾里得范數||x|| 2 最小。矩陣A行數多于列數,沒有解。偽逆得到x使得Ax和y的歐幾里得距離||Ax-y|| 2 最小。
跡運算。
返回矩陣對角元素和,Tr(A)=Sum i A i,i 。通過矩陣乘法和跡運算符號清楚表示矩陣運算。描述矩陣Frobenius范數,||A|| F =SQRT(Tr(AA T ))。跡運算在轉置運算下不變,Tr(A)=Tr(A T )。多個矩陣相乘方陣跡,矩陣最后一個挪到最前面相乘跡相同。需考慮挪動后矩陣乘積定義良好,Tr(ABC)=Tr(CAB)=Tr(BCA),Tr(PRODUCT(n,i=1,F (i) ))=Tr(F (n) PRODUCT(n-1,i=1,F (i) ))。循環置換后矩陣乘積矩陣形狀變了,跡運算結果依然不變。矩陣A ELEMENT(R mn ),矩陣B ELEMENT(R nm ),得到 Tr(AB)=Tr(BA)。AB ELEMENT(R mm ),BA ELEMENT(R nn )。標量在跡運算后仍是自己,a=Tr(a)。
行列式。
det(A),方陣A映射到實數函數。行列式等于矩陣特征值的乘積。行列式絕對值衡量矩陣參與矩陣乘法后空間擴大或縮小多少。行列式是0,空間沿著某一維完全收縮,失去所有體積。行列式是1,轉換保持空間體積不變。
主成分分析(principal components analysis,PCA)。
簡單機器學習算法,基礎線性代數知識推導。R n 空間有m個點{x (1) ,…,x (m) },有損壓縮,用更少內存,損失精度存儲。希望損失精度盡可能少。低維表示,每個點x (i) ELEMENT(R n ),一個對應編碼向量c (i) ,按比例放大D :,i ,保持結果不變。為問題有唯一解,限制D所有列向量有單位范數。計算解碼器最優編碼困難。PCA限制D列向量彼此正交(除非l=n,嚴格意義D不是正交矩陣)。
想法變算法。明確每一個輸入x得到一個最優編碼c * 。
最小化原始輸入向量x和重構向量g(c * )間距離。范數衡量距離。PCA算法,用L 2 范數,c * =argmin c ||x-g(c)|| 2 。用平方L 2 范數替代L 2 范數。相同值c上取得最小值。L 2 范數非負。平方運算在非負值上單調遞增。c * =argmin c ||x-g(c)|| 2 2 。最小化函數簡化,(x-g(c)) T (x-g(c))。L 2 范數定義,=x T x-x T g(c)-g(c) T x +g(c) T g(c)。分配律,=x T x-2x T g(c)+g(c) T g(c)。標量g(c) T x轉置等于自己。第一項x T x 不依賴c,忽略,優化目標,c * =argmin c -2x T g(c)+g(c) T g(c)。代入g(c),c * =argmin c -2x T Dc+c T D T Dc=argmin c -2x T Dc+c T I l c。矩陣D正交性和單位范數約束,=argmin c -2x T Dc+c T c。
向量微積分求解最優化,NABLA(c, (-2x T Dc+c T c))=0,-2D T x+2c=0,c=D T x。算法高效。最優編碼x只需要一個矩陣-向量乘法操作。編碼向量,編碼函數,f(x)=D T x。矩陣乘法,定義PCA重構操作,r(x)=g(f(x))=DD T x。挑選編碼矩陣D。相同矩陣D對所有點解碼,不能孤立看待每個點。最小化所有維數和所有點上的誤差矩陣Frobenius范數。D * =argmin D SQRT(SUM(i,j,(x (i) j -r(x (i)) j )) 2 )subject to D T D=Il。推導尋求D * 算法,l=1,D是單一向量d。簡化D為d,問題簡化。d * =argmin d SUM(i,||x (i) -dd T x (i) || 2 2 )subject to ||d|| 2 =1。最美觀方式。標量d T x (i) 放在向量d右邊。標量放在左邊寫法更傳統。d * =argmin d SUM(i,||x (i) -d T x (i) d|| 2 2 )subject to ||d|| 2 =1。標量轉置和自身相等。d * =argmin d SUM(i,||x (i) -x (i) T dd|| 2 2 )subject to ||d|| 2 =1。重排寫法。
單一矩陣重述問題。更緊湊符號。表示各點向量堆疊成矩陣。記X ELEMENT(R m*n )。X i,: =x (i) T 。重新表述,d * =argmin d ||X-Xdd T || 2 F subject to d T d=1。不考慮約束,Frobenius范數簡化。argmin d ||X-Xdd T || 2 F 。=argmin d Tr((X-Xdd T ) T (X-Xdd T ))。=argmin d Tr(X T X-X T Xdd T -dd T X T X+dd T X T Xdd T )。=argmin d Tr(X T X)-Tr(X T Xdd T )-Tr(dd T X T X)+Tr(dd T X T Xdd T )。=argmin d -Tr(X T Xdd T )-Tr(dd T X T X)+Tr(dd T X T Xdd T )。與d無關項不影響argmin,=argmin d -2Tr(X T Xdd T )+Tr(dd T X T Xdd T )。循環改變跡運算相乘矩陣順序不影響結果,=argmin d -2Tr(X T Xdd T )+Tr(X T X T Xdd T dd T )。考慮約束條件。argmin d -2Tr(X T Xdd T )+Tr(X T X T Xdd T dd T )subject to d T d=1。=argmin d -2Tr(X T Xdd T )+Tr(X T X T Xdd T )subject to d T d=1。=argmin d -Tr(X T X T Xdd T )subject to d T d=1。=argmax d Tr(X T X T Xdd T )subject to d T d=1。=argmax d Tr(d T X T X T Xd)subject to d T d=1。優化問題,特征分解求解。最優d是X T X最大特征值對應特征向量。
以上推導特定于l=1情況,僅得到第一個主成分。得到主成分的基時,矩陣D由前l個最大特征值對應特征向量組成。歸納法證明。
參考資料:
《深度學習》
歡迎推薦上海機器學習工作機會,我的微信:qingxingfengzi
我有一個微信群,歡迎一起學深度學習。