標量、向量、矩陣、張量之間的聯系
在深度學習中,大家肯定都知道這幾個詞:標量(Scalar),向量(Vector),矩陣(Matrix),張量(Tensor)。但是要是讓我們具體說下他們,可能一下子找不出頭緒。下面介紹一下他們之間的關系:
標量(scalar)
一個標量表示一個單獨的數,它不同於線性代數中研究的其他大部分對象(通常是多個數的數組)。我們用斜體表示標量。標量通常被賦予小寫的變量名稱。如:a
向量(vector)
一個向量表示一組有序排列的數。通過次序中的索引,我們可以確定每個單獨的數。通常我們賦予向量粗體的小寫變量名稱。當我們需要明確表示向量中的元素時,我們會將元素排列成一個方括號包圍的縱柱:如 a.
矩陣(matrix)
矩陣是一個二維數組,其中每一個元素由兩個索引所確定。一個有m行,n列,每個元素都屬於 RR 的矩陣記作 A∈Rm×n. 通常使用大寫變量名稱,如A
張量(tensor)
超過兩維的數組叫做張量。
在某些情況下,我們會討論坐標超過兩維的數組,一般的,一個數組中的元素分布在若干維坐標的規則網格中,我們稱之為張量。我們使用字體 A 來表示張量“A”。張量A中坐標為(i,j,k) 的元素記作 Ai,j,k .
四者之間關系
標量是0階張量,向量是一階張量。
舉例:
標量就是知道棍子的長度,但是你不會知道棍子指向哪兒。
向量就是不但知道棍子的長度,還知道棍子指向前面還是后面。
張量就是不但知道棍子的長度,也知道棍子指向前面還是后面,還能知道這棍子又向上/下和左/右偏轉了多少。
向量和矩陣的范數歸納
向量的范數(norm)
向量的1范數:
向量的2范數:
向量的負無窮范數:
向量的正無窮范數:
向量的p范數:
矩陣的范數
當向量取不同范數時, 相應得到了不同的矩陣范數。
矩陣的1范數(列范數):
矩陣的每一列上的元素絕對值先求和,再從中取個最大的,(列和最大);
矩陣的2范數:
矩陣的無窮范數(行范數):
矩陣的每一行上的元素絕對值先求和,再從中取個最大的,(行和最大).
上述矩陣A的行范數先得到[6;16] ,再取最大的最終結果就是:16。
矩陣的核范數:
矩陣的奇異值(將矩陣svd分解)之和,這個范數可以用來低秩表示(因為最小化核范數,相當於最小化矩陣的秩——低秩)
矩陣的L0范數:
矩陣的非0元素的個數,通常用它來表示稀疏,L0范數越小0元素越多,也就越稀疏.
上述矩陣A 最終結果就是:6
矩陣的L1范數:
矩陣中的每個元素絕對值之和,它是L0范數的最優凸近似,因此它也可以表示稀疏.
上述矩陣AAA最終結果就是:22。
矩陣的F范數:
矩陣的各個元素平方之和再開平方根,它通常也叫做矩陣的L2范數,它的有點在它是一個凸函數,可以求導求解,易於計算.
上述矩陣A最終結果就是:10.0995。
矩陣的 p范數:
其他線性代數的標量學習
行列式:(數學上定義為一個函數)
轉置(transpose)
![]()
注意:
向量可以看作只有一列的矩陣, 對應地,向量的轉置結果可以看作只有一行的矩陣。
標量的轉置等於自身。
矩陣運算
矩陣可以進行加法、乘法計算。
矩陣乘法(Matrix Product)
兩個矩陣的標准乘積不是兩個矩陣中對應元素的乘積。
向量的點積(dot Product):(可以理解成矩陣乘積Matrix Product)
注意:
向量點積結果必然是一個實數,即一個一行一列的矩陣。
矩陣乘法分配律
矩陣乘積結合律
注意:矩陣乘積並不滿足交換律,然而,兩個向量的點積滿足交換律
矩陣乘積的轉置有着簡單的形式
單位矩陣(identity matrix)
單位矩陣所有沿對角線的元素都是1, 而其它位置的所有元素都是0。
任意向量和單位矩陣相乘,都不會改變。
逆矩陣
endl;