實(shí)現(xiàn)100倍加速!谷歌開(kāi)源超強(qiáng)張量計(jì)算庫(kù)TensorNetwork
本文經(jīng)AI新媒體量子位(公眾號(hào)ID:QbitAI)授權(quán)轉(zhuǎn)載,轉(zhuǎn)載請(qǐng)聯(lián)系出處。
量子系統(tǒng)復(fù)雜,暴力計(jì)算無(wú)效,原有張量網(wǎng)絡(luò)(Tensor Network)難以廣泛規(guī)模使用,讓開(kāi)發(fā)高溫超導(dǎo)體等復(fù)雜問(wèn)題受限于此。
現(xiàn)在,谷歌出手了。
聯(lián)合Perimeter理論物理研究所和谷歌 X,開(kāi)發(fā)全新物理和機(jī)器學(xué)習(xí)庫(kù)TensorNetwork,用于提高張量計(jì)算的效率,現(xiàn)在已經(jīng)開(kāi)源。
這一計(jì)算庫(kù)使用TensorFlow作為后端,并針對(duì)GPU處理進(jìn)行了優(yōu)化,與CPU上相比,可以實(shí)現(xiàn)高達(dá)100倍的加速。
谷歌AI的研究工程師Chase Roberts和X的研究科學(xué)家Stefan Leichenauer表示,通過(guò)開(kāi)源社區(qū),他們會(huì)持續(xù)向TensorNetwork添加新功能。希望TensorNetwork成為科學(xué)家們和機(jī)器學(xué)習(xí)從業(yè)者的寶貴工具。
TensorNetwork的有效性
張量,是按照順序在層次結(jié)構(gòu)中分類(lèi)的多維數(shù)組,普通的數(shù)或者標(biāo)量,是零階張量,向量是一階張量,矩陣是二階張量。

張量網(wǎng)絡(luò),是圖形編碼的張量收縮模式(張量上的數(shù)學(xué)運(yùn)算類(lèi)型),由幾個(gè)張量組成,并共同構(gòu)成一個(gè)新的張量。
張量網(wǎng)絡(luò)并不直接存儲(chǔ)或者操縱張量,而是將張量表示為較小張量在較大張量網(wǎng)絡(luò)形狀中的收縮。

因此,張量網(wǎng)絡(luò)可以非常有效地表示幾個(gè)、幾十個(gè)、甚至幾百個(gè)張量,而且還不需要占用大量?jī)?nèi)存。
現(xiàn)在,張量網(wǎng)絡(luò)已經(jīng)廣泛應(yīng)用于量子物理學(xué)等領(lǐng)域之中。這些優(yōu)勢(shì),也使得其在圖像分類(lèi)、物體識(shí)別和其他人工智能任務(wù)中更加實(shí)用。
TensorNetwork,就是谷歌在這個(gè)方向上努力的成果。
作為一個(gè)通用的張量網(wǎng)絡(luò)算法庫(kù),效果如何?谷歌進(jìn)行了測(cè)試。
近似量子態(tài),是張量網(wǎng)絡(luò)在物理學(xué)中的一個(gè)典型用例,能夠直觀地說(shuō)明張量網(wǎng)絡(luò)庫(kù)的能力。
谷歌的研究人員用TensorNetwork實(shí)現(xiàn)了一個(gè)樹(shù)狀張量網(wǎng)絡(luò)(TTN)算法,用來(lái)逼近周期量子自旋鏈(1D)或薄環(huán)面(2D)上的點(diǎn)陣模型的基態(tài)。
在這個(gè)任務(wù)中,使用了TensorNetwork庫(kù)的GPU,與沒(méi)有使用TensorNetwork庫(kù)的CPU相比,計(jì)算速度顯著提高了100倍。

繼續(xù)擴(kuò)大TensorNetwork使用場(chǎng)景
現(xiàn)在, 谷歌已經(jīng)將TensorNetwork開(kāi)源,地址為:
https://github.com/google/tensornetwork
也放出了與TensorNetwork相關(guān)的兩篇論文。
***篇論文,對(duì)TensorNetwork進(jìn)行了概述,并介紹了這一開(kāi)源庫(kù)和API:
TensorNetwork: A Library for Physics and Machine Learning
https://arxiv.org/abs/1905.01330
第二篇論文,展示了TensorNetwork在物理學(xué)領(lǐng)域中的用例,以及計(jì)算性能上的表現(xiàn)。
TensorNetwork on TensorFlow: A Spin Chain Application Using Tree Tensor Networks
https://arxiv.org/abs/1905.01331
谷歌表示,接下來(lái)將使用TensorNetwork對(duì)MNIST和Fashion-MNIST數(shù)據(jù)集中的圖像進(jìn)行分類(lèi)。
此外,也將在探索其在時(shí)間序列分析上的應(yīng)用,以及量子電路仿真等用例。
谷歌AI博文地址:
https://ai.googleblog.com/2019/06/introducing-tensornetwork-open-source.html