1樓:
Mathematica 本身是不區分行向量和列向量的, 數學上來說都是一階張量, 資料結構上都是線性表, 那為什麼會出現分子布局和分母布局呢?
因為...這是矩陣求導啊, 裡面的向量其實是特殊的矩陣, 於是會有 1×n 和 n×1 的區別
最終的結果本來也應該是個高階張量, 但是被壓成了矩陣...這有點像克羅內克積, 非要把張量寫成矩陣...
一切從矩陣出發, 回歸矩陣, 所以才叫矩陣求導, 不然幹嘛不直接推廣到張量求導...
所以矩陣求導說白了就是把非矩陣擴充成矩陣, 然後用微分運算元求個外積, 最後壓回矩陣就行了!
舉個例子
標量對矩陣
那就把標量看成 1×1 矩陣然後求外積就行.Ys=
y;Xm=
,,};ArrayFlatten
[Outer[Dt
,},Xm],2]
//TraditionalForm
向量對向量
那就分別看成 n×1 和 1×m 然後求外積就行Yv=
Xv=ArrayFlatten
[Outer[Dt
,List
/@Yv
,List@Xv
],2]//
TraditionalForm
你也可以用別人造的輪子...
TD是我寫的包裡的函式, 你也可以用xTensor裡的VarD, 不過那個是張量求導, 你得自己壓...
這個硬要搞成矩陣會帶來很大的問題, 矩陣對矩陣還處於爭議狀態
本來是個(m,n)對偶的4階張量, 你硬要壓會導致鏈式法則衝突, 那就不能叫求導運算元了...
你要是個多重線性運算元那就不能壓
反正...就是為了計算方便唄, 對計算機來說, 壓成線性表也無所謂的...
因為要書寫美觀才搞出這麼多事來...
矩陣對矩陣求導的意義?矩陣對矩陣的導數y dy dx,難道不能寫成y x y ,這裡是近似等於。矩陣求導哪本書上有講?
顯示公式 http www.上面的解釋在最後說,在非標準分析下也可理解成商,這個你不用管,我們只在常規下理解。下面說矩陣 矩陣求導哪本書上有講?任何一本叫矩陣論的書,由於矩陣論我也不熟,書就不推廌了,你可以問別人。矩陣對矩陣的導數y dy dx,難道不能寫成y x y 我們矩陣求導的定義是 frac...
matlab中矩陣求逆,報錯說記憶體不足怎麼辦,128g的工作站都跑不下來?
Ruhr MATLAB裡矩陣求逆是很容易出現記憶體不足的。基本上10000x10000以上的矩陣求逆我都不會考慮在MATLAB直接用pinv 或者 去做了 考慮到我接觸的大部分問題都是病態欠定問題,這裡不考慮inv 的情況 大矩陣求逆最好還是從演算法上做出改進來入手吧,有很多matrix inver...
在python中如何對稀疏矩陣進行主成分分析?
聞鶯 可以試試用toarray 轉成陣列再pca。在做文字聚類的時候親測有效,我用了todens也記憶體溢位了,雖然在stackoverflow上搜到toarray和todense的區別也僅僅是返回值不同而已。 sklearn.decomposition.TruncatedSVD from skle...