日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

张量基本概念

發(fā)布時間:2024/8/1 编程问答 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 张量基本概念 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

張量是一種表示物理量的方式,這個方式就是用基向量與分量組合表示物理量(Combinationof basis vector and component)。

由于基向量可以有豐富的組合,張量可以表示非常豐富的物理量。此外,張量所描述的物理量是不隨觀察者或者說參照系而變化的,當(dāng)參照系變化時(其實就是基向量變化),其分量也會相應(yīng)變化,最后結(jié)果就是基向量與分量的組合(也就是張量)保持不變。這一點對于我們構(gòu)造數(shù)據(jù)對象,進(jìn)而展開分析建模,有著至關(guān)重要的意義。

回顧過去我們對“量”的認(rèn)識過程,我們都懂得用“一個數(shù)”來表示數(shù)量(標(biāo)量),用“一個數(shù)組”(列矩陣或行矩陣)來表示一個向量,這都屬于代數(shù)手法。如果采用幾何手法,標(biāo)量中的實數(shù)可以表示為一維坐標(biāo)系(如數(shù)軸)上的一個點,復(fù)數(shù)可以表示為二維坐標(biāo)系(如復(fù)平面)上的一個點。向量通常可以表示為二維、三維或更高維坐標(biāo)系中的一個空間點或有向線段。如果我們把代數(shù)手法和幾何手法結(jié)合起來即采用解析幾何的手法,向量又可以表示為某種坐標(biāo)基向量和坐標(biāo)分量的線性組合。

那么現(xiàn)在,我們接觸的張量該如何表示呢?讓我們逐“階”而上,看看張量的數(shù)據(jù)結(jié)構(gòu)形象

1、一階張量(向量)

不妨首先假定在三維空間中,則一個一階張量(向量)有3個分量,可以表示為一個有序3元數(shù)組或1×3階的行矩陣

Tj = [T1 T2 T3]

在n維空間中,一個一階張量(向量)有n個分量,可以表示為一個有序n元數(shù)組,或表示為一個1×n階行矩陣

Tj = [T1 T2 ...... Tn]

也就是說,一個一階張量(向量)可以用一個行矩陣表示,似乎構(gòu)成“一條直線”。

2、二階張量

在三維空間中,一個二階張量則有9個分量,可以表示為一個有序9元數(shù)組或3×3階的矩陣

一般地,在n維空間中,一個二階張量有n2個分量,可以表示為一個有序n2元數(shù)組,或表示為一個n×n階矩陣

也就是說,一個二階張量可以用一個矩陣表示,似乎構(gòu)成“一張平面”。如下圖所示: 圖:二階張量矩陣平面

3、三階張量

在三維空間中一個三階張量

有27個分量,似乎可以構(gòu)成一組3個矩陣,每個矩陣都是3×3個元素。設(shè)想“三張平面”構(gòu)成一個“立方體”。如下圖所示:

圖1:三階張量數(shù)據(jù)

如果在n維空間,一個三階張量

有n^3個分量,也可以構(gòu)成n個矩陣,每個矩陣都是n×n個元素。設(shè)想“n張平面”構(gòu)成一個“立方體”,好像一塊積木。如下圖所示:

圖2:三階張量立方體積木

4、四階張量

繼續(xù)探討我們的“積木游戲”。在三維空間中一個四階張量

有81個分量,似乎可以構(gòu)成一組9個矩陣,每個矩陣都是3×3個元素。設(shè)想每“三張平面”構(gòu)成一個“立方體”,共有3個“立方體”或曰3塊“積木”。3塊“積木”排成一列,好像由矩陣構(gòu)成的“陣列”。

如果在n維空間,一個四階張量

有n^4個分量,也可以構(gòu)成n^2個矩陣,每個矩陣都是n×n個元素。設(shè)想每“n張平面”構(gòu)成一個“立方體”(一塊積木),n塊積木排成一列。我們把這樣相互關(guān)聯(lián)的一組矩陣叫做“陣列”。如下圖所示:

圖3:四階張量數(shù)據(jù)陣列

5、五階張量

如果是n維空間中的一個五階張量

,共有n^5個分量,則可以構(gòu)成n^3個矩陣。設(shè)想每n張平面(矩陣)構(gòu)成一塊積木,每n塊積木構(gòu)成一條陣列,共有n條陣列,可以壘成“一堵墻”。假如以元素(張量的分量)為單位,這堵“墻”的高和長都是n^2,厚度是n。以3維空間為例,如下圖所示:

圖4:五階張量陣列墻(設(shè)n=3)

6、六階張量

對于6階張量,n^6個分量可以組成n^4張矩陣平面,構(gòu)成n^3塊積木,再排成n^2條陣列,壘成n堵墻,最后拼成一個方垛。以3維空間為例,如下圖所示:

圖5:六階張量數(shù)據(jù)方垛(設(shè)n=3)

7、M階張量

一般地,在n維空間中的一個M階張量共有個分量,可以組成 張矩陣平面,構(gòu)成 塊積木,再排成 條陣列,壘成 堵墻,最后拼成 個方垛,再排成 條方垛陣列,......依此類推。

我的天啊!太恐怖啦!不要怕,計算機最擅長作這類數(shù)據(jù)結(jié)構(gòu)的運算和處理。這就是在計算機時代的今天為什么要研究和普及張量算法的原因。

?

1.張量的四種定義
1.張量是多維數(shù)組,這個定義常見于各種人工智能軟件。
2.張量是某種幾何對象,不會隨著坐標(biāo)系的改變而改變
3.張量是向量和余向量(covector)通過張量積(tensor product)組合而成的。
4.張量是多重線性映射,即:


除零階張量外,張量的具體表示還與坐標(biāo)系的選擇有關(guān),選擇不同的坐標(biāo)系,意味著選擇不同的基矢(basis)進(jìn)行展開。以矢量為例,在給定坐標(biāo)系,矢量由多個數(shù)構(gòu)成,這些數(shù)實際上為當(dāng)前基矢下的展開系數(shù),如果坐標(biāo)軸變化了,即基矢變化了,那么自然而然,對應(yīng)的展開系數(shù)也就變化了。

2.張量表示形式
一階張量可以理解為一個向量,二階張量可以理解為矩陣,三階張量可以理解成立方體,四階張量可以理解成立方體組成的一個向量,五階張量可以理解成立方體組成的矩陣,依次類推。
把三維張量畫成一個立方體:

3.現(xiàn)實世界中的數(shù)據(jù)張量
1)向量數(shù)據(jù)
2D張量,形狀為(samples,features)

2)時間序列數(shù)據(jù)或序列數(shù)據(jù)
3D張量,形狀為(sampels,timesteps,features)

當(dāng)時間(或序列順序)對于數(shù)據(jù)很重要時,應(yīng)該將數(shù)據(jù)存儲在帶有時間軸的3D張量中。每個樣本可以被編碼為一個向量序列(即2D張量),因此一個數(shù)據(jù)批量就被編碼為一個3D張量。


圖像通常具有三個維度:高度,寬度和顏色深度。雖然灰度圖像(比如MNIST數(shù)字圖像)只有一個顏色通道,因此可以保存在2D張量中,但按照慣例,圖像張量始終是3D張量,灰度圖像的彩色通道只有一維。因此,如果圖像大小為 256 × 256 256\times256256×256 ,那么128張灰度圖像組成的批量可以保存在一個形狀為(128,256,256,1)的張量中,而128張彩色圖像組成的批量則可以保存在一個形狀為(128,256,256,3)的張量中。

圖像張量的形狀有兩種約定:通道在后(channels-last)的約定(在 TensorFlow 中使用)和 通道在前(channels-first)的約定(在 Theano 中使用)。Google 的 TensorFlow 機器學(xué)習(xí)框架將 顏色深度軸放在最后:(samples, height, width, color_depth)。與此相反,Theano 將圖像深度軸放在批量軸之后:(samples, color_depth, height, width)。如果采 用 Theano 約定,前面的兩個例子將變成 (128, 1, 256, 256) 和 (128, 3, 256, 256)。 Keras 框架同時支持這兩種格式。

3)圖像
4D張量,形狀為(samples,height,width,channels)或(samples,channels,height,width)

4)視頻
5D張量,形狀為(samples,frames,height,width,channels)或(samples,frames,channels,height,width)

視頻數(shù)據(jù)是現(xiàn)實生活中需要用到 5D 張量的少數(shù)數(shù)據(jù)類型之一。視頻可以看作一系列幀, 每一幀都是一張彩色圖像。由于每一幀都可以保存在一個形狀為 (height, width, color_ depth) 的 3D 張量中,因此一系列幀可以保存在一個形狀為 (frames, height, width, color_depth) 的 4D 張量中,而不同視頻組成的批量則可以保存在一個 5D 張量中,其形狀為 (samples, frames, height, width, color_depth)。

4)階(order/ways/modes/rank)
階:張成所屬張量空間的向量空間的個數(shù)
一階張量(向量):[5,10,15,30,25]
二階張量(矩陣):([[5,10,15,30,25],[20,30,65,70,90],[7,80,95,20,30]])
三階張量:([[[5,10,15,30,25],[20,30,65,70,90],[7,80,95,20,30]],[[3,1,1,0,2],[2,3,5,7,9],[7,8,5,2,3]],[[15,0,5,0,5],[0,0,5,0,0],[7,0,5,0,0]]])

在實際的操作中,秩可以理解為[的深度。例如:
rank = 1:[0,1,2]
rank = 2:[[0,1],[2,3]]
rank = 3:[[[0,1],[2,3]],[[4,5],[6,7]]]

一階張量(向量):
二階張量(矩陣):

三階或更高階張量:
零階張量(數(shù)量):

以三階張量為例:

?

總結(jié)

以上是生活随笔為你收集整理的张量基本概念的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。