作者:焦述銘
導(dǎo)讀
如今電子計(jì)算機(jī)盡管性能越來越強(qiáng)大,但處理某些復(fù)雜計(jì)算問題時(shí),仍然難于應(yīng)對(duì),無法發(fā)揮出最高的效率。比如當(dāng)一個(gè)線性方程組十分龐大時(shí),無論從輸入到輸出的正向向量矩陣相乘,還是從輸出到輸入的反向求解,都是一個(gè)挑戰(zhàn)。近年來,一些跳出思維定勢的新型計(jì)算模式被嘗試,不再依賴現(xiàn)有的計(jì)算機(jī)算法和芯片,而是另起爐灶,直接通過簡單的電路模擬方程組來快速求解,由于光與電之間的相似性,光學(xué)系統(tǒng)也可以通過類似方式去完成任務(wù),展示出異曲同工之妙。
現(xiàn)有電子計(jì)算機(jī)如何求解?
我們從一個(gè)很簡單的小學(xué)數(shù)學(xué)題說起:籠子里有10只雞和5只兔子,問籠子里一共有多少只動(dòng)物?很簡單,一共有15只。那籠子里的動(dòng)物一共有多少只腳呢?雞有2只腳,兔子有4只腳,一共有10×2+5×4=40只腳。如果反過來,已知籠子里雞和兔共15只,共有40只腳,問雞和兔各有幾只?這就是一個(gè)經(jīng)典的“雞兔同籠”問題。
有人的解法是假設(shè)雞和兔都訓(xùn)練有素,吹一聲哨,每只動(dòng)物就會(huì)抬起一只腳,一聲哨響后,籠子里落地的腳剩下40-15=25只,再吹一聲哨,剩下25-15=10只腳,此時(shí)所有雞的兩只腳都抬起來了,于是“一屁股坐下了”,雙腿站著的都是兔子,所以兔子有10/2=5只,雞有15-5=10只。
更廣義來說,上面兩個(gè)問題其實(shí)分別是正向和反向求解兩個(gè)二元一次方程組成的方程組,x1和x2分別是雞和兔的數(shù)量,y1和y2是動(dòng)物總數(shù)及腳總數(shù)。如果用2×2 矩陣表示,正向是向量矩陣相乘,反向則需要矩陣求逆。
![]()
圖1:雞兔同籠問題背后的線性方程組數(shù)學(xué)關(guān)系
如果改一下問題,有蜘蛛、蜻蜓、蟬三種動(dòng)物共9只,共有腿58條,翅膀10對(duì)(蜘蛛有8條腿,沒有翅膀;蜻蜓有6條腿,2對(duì)翅膀;蟬有6條腿,1對(duì)翅膀),問蜘蛛、蜻蜓和蟬各有多少只?(答案:2只、3只和4只。)還是同樣類型的問題,矩陣大小由2×2 擴(kuò)大為了3×3。
![]()
圖2:線性方程組中矩陣尺度由2×2 變成3×3
當(dāng)然你會(huì)說,計(jì)算一共有多少只腿,猜籠子里的雞兔數(shù)量,是比較無聊的問題,有什么意義和用處呢?這類假想的題目本身可能有些脫離實(shí)際,不過背后所代表的通用數(shù)學(xué)模型,線性方程組正向和反向求解,或者說向量矩陣相乘以及矩陣求逆,確是應(yīng)用非常廣泛。在人工智能與機(jī)器學(xué)習(xí)、圖像處理與計(jì)算機(jī)視覺、運(yùn)籌學(xué)和最優(yōu)化、機(jī)器人控制、信息與通信工程、數(shù)據(jù)挖掘、經(jīng)典及量子物理等領(lǐng)域都是不可或缺的。矩陣的尺度也可以不只2×2、3×3,可以是任意的正整數(shù)N×N ,成百上千上萬甚至更大都有可能。
![]()
圖3:更通用的正向向量矩陣相乘和反向矩陣求逆用于求解方程組(矩陣尺度為N×N)
相比較而言,正向向量矩陣相乘計(jì)算(由X獲得Y )比較直截了當(dāng),可以轉(zhuǎn)化為很多次的對(duì)應(yīng)元素之間乘法和加法。而反過來求解方程組(由Y獲得X),會(huì)更加繁瑣和復(fù)雜,像“吹哨抬腿法”那樣,可以使用高斯消元法、LU分解法、雅可比迭代法等算法,將計(jì)算分解為很多步驟,最終仍然是很多次的最基本加減乘除。
當(dāng)然在現(xiàn)有的電子計(jì)算機(jī)中,加減乘除還不是最基本的運(yùn)算形式,更底層的機(jī)制依賴于二進(jìn)制和邏輯門。每次要運(yùn)算的數(shù)字都使用二進(jìn)制表示,計(jì)算機(jī)的底層世界中只有很多個(gè)0和1,比如,每只雞有10(二進(jìn)制中的2)只腳,每只兔有100(二進(jìn)制中的4)只腳,然后利用與門、或門、異或門等各種邏輯門完成這些0和1比特之間的運(yùn)算。每一次簡單的乘法和加法,都需要相當(dāng)數(shù)量邏輯門齊心協(xié)力才能完成。不過不用擔(dān)心,邏輯門只是現(xiàn)代計(jì)算機(jī)或者芯片中最基本的單元,一塊芯片上或者一個(gè)處理器中有數(shù)以億計(jì)這樣的“基層員工”,動(dòng)用其中幾十幾百個(gè)都是很小的比例。
模擬電子計(jì)算:另辟蹊徑
以上介紹的是現(xiàn)有電子計(jì)算機(jī)正向和反向求解線性方程組的工作方式,當(dāng)矩陣的尺度非常大的時(shí)候,計(jì)算負(fù)擔(dān)不可小視,特別是反向求解的時(shí)候,計(jì)算機(jī)也往往需要較長運(yùn)算時(shí)間才能給出結(jié)果。而研究者也在另辟蹊徑,嘗試通過一些物理系統(tǒng)模擬計(jì)算過程,以自然的方式直接展現(xiàn)出答案[1],不必像現(xiàn)有計(jì)算機(jī)那樣,將求解過程在算法上分解為繁瑣復(fù)雜的步驟,再通過眾多數(shù)量的二進(jìn)制比特和邏輯門在底層實(shí)現(xiàn)。
兩個(gè)數(shù)字相乘或相加的數(shù)學(xué)關(guān)系隨處可見,比如電路里,兩個(gè)支路的電流匯合到一起,總的電流強(qiáng)度就會(huì)是支路電流之和,是一種天然的相加關(guān)系;再比如歐姆定律表示了電流、電壓和電阻(或電導(dǎo))三者之間的關(guān)系,是一種天然的相乘關(guān)系。隨著憶阻器等新型電子器件的發(fā)展,電阻的數(shù)值大小可以方便地調(diào)節(jié)和設(shè)定。這樣一來,比如要計(jì)算兩個(gè)數(shù)值相乘,只要將電壓值大小和電導(dǎo)值大小分別設(shè)定為這兩個(gè)輸入數(shù)值,測量一下輸出電流大小,就知道了相乘結(jié)果的答案。
![]()
圖4:電流定律與歐姆定律
對(duì)于正向的向量矩陣相乘,以輸入端口的電壓值模擬輸入向量,以各個(gè)電阻的電導(dǎo)值模擬要相乘的矩陣,然后測量輸出端口的電流值,就可以得到向量矩陣相乘后的結(jié)果。以下分別是2×2和3×3矩陣情況下的電路。
![]()
圖5:模擬電路用于向量矩陣相乘運(yùn)算(左:2×2 矩陣;右:3×3 矩陣)
而反向求解方程組,同樣可以通過類似的電路來模擬,需要額外使用運(yùn)算放大器(OPA)器件建立輸入和輸出之間的反饋連接。根據(jù)輸入的恒定電流,測量電路在穩(wěn)定狀態(tài)后的輸出電壓,即可以得到方程組的解。以2×2 矩陣對(duì)應(yīng)的“雞兔同籠”問題為例,兩個(gè)輸入電流I1=15,I2=40分別表示籠子里中共有15只動(dòng)物,共有40只腳,四個(gè)電阻的電導(dǎo)值還是對(duì)應(yīng)于矩陣中各個(gè)系數(shù),比如G21=2和G22=4分別表示雞有2只腳和兔有4只腳,最后測量得到的兩個(gè)電壓值V1=10和V2=5,就告訴了我們雞和兔各有10只和5只。整個(gè)過程不需要設(shè)計(jì)詳細(xì)的計(jì)算規(guī)則,電路直接給出了答案,這種稱為模擬電子計(jì)算的方式,相比于現(xiàn)有計(jì)算機(jī)利用二進(jìn)制和邏輯門的方式,具有高效率和低能耗的潛在優(yōu)勢。
![]()
圖6:包含反饋連接的模擬電路用于線性方程組反向求解(左:2×2 矩陣;右:3×3 矩陣)
光與電的異曲同工
由于光和電之間的諸多相似之處,模擬電路也可以變身為“光路”。在電的世界中,電流是在金屬導(dǎo)線中流動(dòng)的,而在光的世界中,一束光也可以在光波導(dǎo)中傳播,光纖就是一個(gè)常見的例子。光以振幅或強(qiáng)度大小,表示光的強(qiáng)弱明暗程度,對(duì)應(yīng)于不同的數(shù)值。
如同兩條河的支流,匯合到一條更加寬廣的干流,河水融為一體,在電的世界中,主干電流滿足分支電流相加的規(guī)律。在光的世界中,兩列光波導(dǎo)中光波相匯合,適當(dāng)條件下,也可以滿足疊加的關(guān)系,比如對(duì)于非相干光,匯合后的光強(qiáng)度是各分支光強(qiáng)度的相加。
對(duì)于電路世界中的歐姆定律,“光路”世界中也有相對(duì)應(yīng)的相乘關(guān)系。很多物體都是半透明的,既不會(huì)完全遮擋住光,也不會(huì)讓光完全透過,以一定的比例讓一部分光的能量透過,類似電路中的電阻器件,在光學(xué)系統(tǒng)中,利用相變(PCM)、鈮酸鋰薄膜、液晶等材料,可以加工出透光率可調(diào)節(jié)的器件,建立起一個(gè)類似于歐姆定律的出射光強(qiáng)、入射光強(qiáng)和透射率之間乘法的關(guān)系。
![]()
圖7:光的世界中與電的世界中歐姆定律相類似的乘法關(guān)系
更進(jìn)一步,利用以上提到的所有這些組件,可以參照用于計(jì)算向量矩陣相乘的電路,搭建一個(gè)具備類似功能的光學(xué)系統(tǒng)[2]。下圖8右側(cè)系統(tǒng)中,淺藍(lán)色為氮化硅光波導(dǎo),橘黃色為相變材料器件。
![]()
圖8:向量矩陣相乘的模擬運(yùn)算比較:電路方式(左)和光學(xué)方式(右)
可以看到,兩者之間非常相似,簡直異曲同工,不謀而合。事實(shí)上,光學(xué)中完成這種向量矩陣相乘的模擬計(jì)算,方式也不唯一,還有利用其它光學(xué)原理的方式,比如級(jí)聯(lián)馬赫·曾德爾干涉儀(MZI)網(wǎng)絡(luò),結(jié)構(gòu)編碼的光傳播介質(zhì),波分復(fù)用微環(huán)濾波,光衍射神經(jīng)網(wǎng)絡(luò)等[3]。最近,微軟研究院在Nature期刊上發(fā)表的一篇論文中[4],也以光學(xué)方式實(shí)現(xiàn)了向量矩陣相乘,并與電子計(jì)算相結(jié)合,可應(yīng)用于金融結(jié)算和醫(yī)療成像,其中所采用的方式簡單說是將不同空間位置的入射光強(qiáng)度進(jìn)行編碼,并根據(jù)反射光強(qiáng)度=入射光強(qiáng)度×反射率,也對(duì)空間光調(diào)制器上的反射率分布進(jìn)行編碼,并利用透鏡的光會(huì)聚過程進(jìn)行光強(qiáng)度疊加,最終完成所需的乘法和加法運(yùn)算。
與電路反饋的方式類似,向量矩陣相乘的光學(xué)系統(tǒng)也可以通過光波導(dǎo)的反饋連接,用于線性方程組的反向求解[5-7]。比如圖9右邊的光學(xué)系統(tǒng)中,如果要求解的方程組是AX=Y ,將要相乘的矩陣設(shè)置為(I-A) ,I為單元矩陣,首先在右側(cè)各端口注入向量Y 對(duì)應(yīng)的光強(qiáng)度信號(hào),最終系統(tǒng)穩(wěn)定后,只有左側(cè)各端口光強(qiáng)度等于要求解的
X向量時(shí),( I - A )X+Y=X,每條反饋光波導(dǎo)兩端才能平衡,從而獲得正確的解向量
X
![]()
圖9:反向求解線性方程組的模擬運(yùn)算比較:電路方式(左)和光學(xué)方式(右)
模擬電子計(jì)算和光計(jì)算都屬于現(xiàn)有主流計(jì)算機(jī)和芯片技術(shù)之外的新興技術(shù)模式,和量子計(jì)算、生物DNA計(jì)算等方向一起,近年來都得到了越來越多的關(guān)注,未來有望取得更多突破性進(jìn)展。
相關(guān)文獻(xiàn)
[1]Z. Sun, S. Kvatinsky, X. Si, A. Mehonic, Y. Cai, and R. Huang, A full spectrum of computing-in-memory technologies. Nat Electron 6, 823–835 (2023)
[2]J. Feldmann, N. Youngblood, M. Karpov, H. Gehring, X. Li, M. Stappers, M. Le Gallo, X. Fu, A. Lukashchuk, A. S. Raja, J. Liu, C. D. Wright, A. Sebastian, T. J. Kippenberg, W. H. P. Pernice, and H. Bhaskaran, Parallel convolutional processing using an integrated photonic tensor core. Nature 589, 52–58 (2021).
[3]H. Zhou, J. Dong, J. Cheng, W. Dong, C. Huang, Y. Shen, Q. Zhang, M. Gu, C. Qian, H. Chen, Z. Ruan, and X. Zhang, Photonic matrix multiplication lights up photonic accelerator and beyond, Light Sci Appl 11, 30 (2022)
[4]K. P. Kalinin, J. Gladrow, J. Chu et al. Analog optical computer for AI inference and combinatorial optimization, Nature 645, 354–361 (2025).
[5]K. Wu, C. Soci, P. P. Shum, N. I. Zheludev, Computing matrix inversion with optical networks. Opt. Express 22, 295–304 (2014).
[6]N. M. Estakhri, B. Edwards, and N. Engheta, Inverse-designed metastructures that solve equations, Science 363, 1333-1338 (2019).
[7]X. Liu, J. Cheng, H. Zhou, J. Dong, and X. Zhang, Chip-scale all-optical complex-valued matrix inverter, APL Photonics 9 (5), 056106 (2024).
本文轉(zhuǎn)載自《中國光學(xué)》微信公眾號(hào)
《物理》50年精選文章
特別聲明:以上內(nèi)容(如有圖片或視頻亦包括在內(nèi))為自媒體平臺(tái)“網(wǎng)易號(hào)”用戶上傳并發(fā)布,本平臺(tái)僅提供信息存儲(chǔ)服務(wù)。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.