Neural-Networks
神經網絡文獻中的張量:最簡單的定義是什麼?
在神經網絡文獻中,我們經常會遇到“張量”這個詞。
它與向量不同嗎?從矩陣?你有任何具體的例子來闡明它的定義嗎?
我對它的定義有點困惑。Wikipedia 沒有幫助,有時我的印像是它的定義取決於所使用的特定機器學習環境(TensorFlow、Caffee、Theano)。
出於數據分析的目的,您可以有效地將它們視為數組,可能是多維的。因此它們包括標量、向量、矩陣和所有高階數組。
精確的數學定義更複雜。基本上這個想法是張量將多線性函數轉換為線性函數。見(1)或(2)。(多重線性函數是在其每個分量中都是線性的函數,例如將行列式視為列向量的函數。)
這種定義張量的數學屬性的一個結果是張量相對於雅可比變換很好,雅可比對從一個坐標系統到另一個坐標系統的變換進行編碼。這就是為什麼人們經常將張量的定義視為物理學中“在坐標變化下以某種方式變換的物體”。例如,請參閱此視頻或此視頻。
如果我們正在處理足夠“好”的對象(我們希望存在並明確定義的所有導數),那麼所有這些考慮張量的方式本質上是等價的。請注意,我提到的考慮張量的第一種方法(多維數組)忽略了協變張量和逆變張量之間的區別。(區別在於它們的係數在基礎向量空間的變化下如何變化,即基本上在行向量和列向量之間。)請參閱這些其他 StackExchange 問題:(1) (2) (3) (4)
對於研究張量在神經網絡中的應用的研究人員(例如在以色列的 Technion)使用的一本書,有 Wolfgang Hackbusch 的Tensor Spaces and Numerical Calculus。我自己還沒有讀過,雖然後面的一些章節似乎使用了高等數學。