|
“張量”還是蠻復(fù)雜的,所以這里挖一個坑,開一個專題來講解。 根據(jù)維基百科的介紹,“張量”一詞最初由威廉·羅恩·哈密頓在1846年引入。對,就是那個發(fā)明四元數(shù)的哈密頓: 1890年格雷戈里奧·里奇-庫爾巴斯托羅的《絕對微分幾何》、1900年列維-奇維塔的《絕對微分》進(jìn)一步在數(shù)學(xué)上發(fā)展了“張量”的概念。 偉大的物理學(xué)家,愛因斯坦為了描述他的天才想法,惡補(bǔ)了黎曼幾何和張量分析,終于在這兩大數(shù)學(xué)工具的幫助下,創(chuàng)立了他最為得意的彎曲時空的物理理論:廣義相對論。至此張量在物理上大放光彩。如果想學(xué)習(xí)廣義相對論,張量肯定是需要學(xué)習(xí)的。 廣義相對論中最核心的思想就是質(zhì)量會帶來時空彎曲,就好像保齡球滾過長絨地毯: 可以想象,時空彎曲中有大量的幾何關(guān)系,為了描述復(fù)雜的幾何關(guān)系,愛因斯坦引入了“張量”,比如著名的愛因斯坦場方程 : 上面式子中, 可以先有一個直觀印象,“張量”就是用來描述幾何的,這里幾何指的是什么?后面很快就會解釋。 1 關(guān)于張量的四種定義 “張量”在不同的運(yùn)用場景下有不同的定義。 第一個定義,張量是多維數(shù)組,這個定義常見于各種人工智能軟件。聽起來還好理解。 第二個定義,張量是某種幾何對象,不會隨著坐標(biāo)系的改變而改變。 第三個定義,張量是向量和余向量(covector)通過張量積(tensor product)組合而成的。 第四個定義,張量是多重線性映射,即: 其中, ![]() 好了,不鬧了,后面的文章會嘗試逐一解釋這四種定義,并且可以看到這四種定義是不斷認(rèn)知升級的結(jié)果。 2 多維數(shù)組 從第一個定義:張量是多維數(shù)組開始。 現(xiàn)在機(jī)器學(xué)習(xí)很火,知名開源框架tensor-flow是這么定義tensor(張量)的: 也就是說,張量(tensor)是多維數(shù)組,目的是把向量、矩陣推向更高的維度。 更具體點(diǎn),也即是說: ![]() 把三維張量畫成一個立方體: ![]() 我們就可以進(jìn)一步畫出更高維的張量: ![]() 從數(shù)據(jù)結(jié)構(gòu)上來看,張量就是多維數(shù)組。 這個定義本身沒有錯,但是沒有真正反映張量的核心。 我們來看下第二個定義:張量是某種幾何對象,不會隨著坐標(biāo)系的改變而改變。 3.1 二維平面 最簡單的幾何對象就是二維平面,在線性代數(shù)中稱為 ![]() 這個 ![]() 也可以由別的坐標(biāo)系來描述(別的基來張成),當(dāng)然 ![]() 上面的圖有幾點(diǎn)值得注意:
那這樣一個幾何對象, 3.2 二維平面中的向量
![]() 當(dāng) ![]() 如果基發(fā)生了變換,坐標(biāo)值也會不斷的變化: ![]() 從而可以得到如下的結(jié)論:
所以,向量這個幾何對象也可以用張量來描述。 3.3 二維平面之間的線性映射 假設(shè)有如下線性映射:
其實(shí)它也是一個幾何對象,可以圖示如下:
上圖表示左邊 當(dāng)用單位正交基來描述左右兩個 ![]() 不同的基,會獲得不同的矩陣(也就是所謂的等價矩陣),比如說 ![]() 進(jìn)而得到如下的結(jié)論:
所以, 可見,張量可以表達(dá)非常多的線性代數(shù)的研究對象。 借用線性代數(shù)中“張成”這個詞,或許“張量”這個名字的意思就是“可以張成很多線性代數(shù)研究對象的量”。 下一節(jié),我們會仔細(xì)研究下,張量是怎么去表示向量空間、矢量、線性映射的,以及不同基下的轉(zhuǎn)換規(guī)則是什么。 |
|
|