梅萬利, 徐 軍, 2
(1.華南農業大學 電子工程學院,廣州510642; 2.華南農業大學 基礎實驗與實踐訓練中心,廣州510642)
機器學習尤其是深度學習算法發展迅速,以其強大的特征提取和函數擬合能力廣泛應用于語音識別,機器視覺,圖像識別等工程領域. 深度學習算法的基本思想就是用大量的數據來訓練模型,用訓練后的模型處理新數據. 近年來,深度學習在物理、化學、生物、醫藥等自然科學研究中也有著重要的作用.
目前量子物理面臨的困難包含待處理系統的信息量會隨著系統尺寸呈指數增加,而機器學習在處理大量數據時表現優異. 研究人員將機器學習算法引入到解決量子物理問題中[1-10],如用深度神經網絡求解薛定諤方程[11],利用監督學習的卷積神經網絡代替虛時演化過程求解Gross-Pitaevskii (GP)方程生成BEC的基態[12]. 此外,深度學習也被用來研究量子相變. 量子相變是指系統在絕對零度下產生的一種相變,傳統識別相變的方法是通過分析系統的對稱性或者分析低能態的集體自由度來確定序參量,并利用它們來標記物質的相,而計算序參量來判斷相變需要較大的計算量,也需要研究者有先驗知識來構造一個合適的序參量. 在相變領域有用混淆標簽方案搭配前饋神經網絡識別伊辛模型相變點[13],利用無監督的機器學習算法揭示超固體和超流體之間的相分離區域[14],利用機器學習無監督學習與有監督學習相結合,識別J1-J2反鐵磁海森堡自旋系統的相變點[15]. 利用卷積神經網絡和有限尺寸標度來提取無序Hofstadter模型的臨界指數,展示了求解臨界指數時神經網絡新方法與傳統數值解析方法的差異性及可靠性[16].
上述研究表明深度學習可以有效的識別量子相變點,可以通過選擇序參量作為參數輸入網絡,以此找到相變點,這種方法較為直觀,缺點是仍需要大量計算得到序參量,對于未知系統也需要先知道哪些是相關的序參數. 人們也可以直接將哈密頓量的基態輸入到網絡中,并通過設定某個參數為作為量子相變點而混淆真實相,給輸入數據每次不同的混淆標簽方案,最后評估網絡的性能,通過大量的訓練,讓神經網絡自己提取特征并找到量子相變點. 由此可以在沒有任何先驗知識,無需的計算序參量的情況下,直接識別量子相變點.
本文的研究中,采用直接把兩分量BEC基態數據輸入到卷積神經網絡,來實現對量子相變點的識別. 文中第二部分介紹兩分量BEC的物理模型,得到解析及數值求解的基態和相變點,方便后面與深度學習的研究結果做比較. 第三部分詳細介紹了混淆標簽方案的深度學習方法研究兩分量BEC的量子相變. 第四部分得出了基于此方法的研究結果與分析,第五部分是結論與討論.
囚禁在諧振子勢阱中一維耦合兩分量BEC,在平均場近似下,其波函數滿足兩耦合的Gross-Pitaevkii(GP)方程如下:
g11|Ψ1(x,t)|2+g12|Ψ2(x,t)|2]
Ψ1(x,t)-ΩΨ2(x,t)
g12|Ψ1(x,t)|2+g22|Ψ2(x,t)|2]
Ψ2(x,t)-ΩΨ1(x,t)
(1)

圖1 兩種相的典型基態. (a)Ω=122>Ωcrit為易混合相,兩分量BEC波函數在同空間中共存;(b)Ω=100<Ωcrit為不易混合相,兩分量BEC波函數主要部分占據不同空間區域. 其他參數的取值為N=12100,L=100,g11=g22=1,g12=2.Fig. 1 Typical ground states for two phases. (a)When Ω=122>Ωcrit,it is miscible and the two components of BEC wave functions coexist in the same space;(b)When Ω=100<Ωcrit,it is immiscible and the two components of BEC wave function mainly occupy different spatial regions. The values of other parameters are N=12100,L=100,g11=g22=1,g12=2.
在制作數據集時采用混淆標簽方案來標記樣本,然后設計一個合適的卷積神經網絡,通過深度學習來識別兩分量BEC 中的量子相變,尋找量子相變的臨界點. 混淆標簽方案的深度學習是通過設定某個臨界點來標記不同的數據,在訓練集上對數據做特征提取并以此訓練網絡參數,直至損失函數收斂;以測試集的準確率對訓練完成的神經網絡模型性能進行評估,尋找準確率相對較高時對應的參數,從而實現對相變點的識別,下面我們來敘述其具體工作原理.

(2)
混淆標簽方案通過設定某個臨界點Ωi,對兩個相給出不同的標簽,從而可能混淆真實的兩個相PI和PII,可以通過計算網絡輸出結果的準確率來進行來判斷分類兩個相的好壞. 如果設定的臨界點正好是真實的臨界值Ωi=Ωcrit,那么網絡輸出在Ωi處應有最高的準確率. 網絡輸出層經過Softmax函數[19]運算后得到概率pi可區分易混合相或者不易混合相,其表達式為
(3)
其中xi表示第i個節點的輸出值,J為總的輸出節點個數(即類別個數). 它將多個分類的輸出值轉換為范圍在[0,1]的概率分布,且所有分類的概率之和為1. 對于兩分類情況,通過Softmax函數,PI和PII相的概率分別是p和1-p,網絡輸出結果Lic表示如下,
(4)
當p>1/2時,輸出結果Lic對應PI相;p<1/2,輸出結果Lic對應PII相.
下面我們來介紹網絡的訓練與測試. 在網絡訓練過程中的損失函數[19]被用來調整網絡的權重,我們在此系統中采用交叉熵損失函數. 二分類情況下,交叉熵損失函數定義如下
(5)
其中Li是輸入樣本i在當前設定的臨界點Ωi時對應的標記;pi表示樣本i在Ωi時,網絡預測某種相的概率. 不同Ωi取值時的數據集的標記都不同,將不同標記的數據集分別輸入網絡進行訓練. 在測試集評估時,將測試集內Ωi對應的數據Di輸入已訓練的網絡,經過網絡運算后,把網絡輸出的標簽Lic與測試集內數據本身的標簽Li進行對比,就可以評估訓練后網絡的性能[19](即準確率),它可以表示為
(6)
其中|X|表示兩種標簽滿足Lic=Li的數量,|Y|表示測試集內數據的數量. 當設定的臨界點Ωi=Ω1,此時Ω>Ωi,整個測試集內的數據標記為[Li=0],網絡訓練只存在一種數據輸出為[Lic=0],此時準確率為A=1. 同理Ωi=Ω2時,準確率也為A=1,所以不同Ωi所形成的網絡性能曲線在左右兩端有著最大值. 當Ωi的取值為真實的臨界值Ωcrit時,網絡提取數據特征后的輸出與給定標簽最符合,此時準確率所對應的網絡性能曲線在除邊界兩點外有著最大值. 除此三點外,在Ωi處于(Ω1,Ωcrit)和(Ωcrit,Ω2)范圍內,預期準確率相對較低. 因此,在理想情況下,網絡性能曲線將會是W型[13],如圖2所示. 準確率A與設定的臨界點Ωi的關系可表示為

圖2 網絡輸出的性能曲線為W型,中間峰值對應系統的臨界點.Fig. 2 Performance curve of the network output is W-shape,with the intermediate peak corresponding to the system's critical point.
(7)
通常情況下,卷積神經網絡(CNN)主要由輸入層、隱含層和輸出層組成,其中隱含層主要由兩部分構成,一部分用來做特征提取,包括了卷積層和池化層,另一部分是用來分類的全連接層. 具體工作流程如下,數據由輸入層進入網絡后,傳到卷積層,由多個卷積核提取輸入數據的不同特征;然后將提取的特征數據傳入池化層,對特征數據進行下采樣,將維度較大的特征處理得到維度較小的特征數據;最后將數據交給全連接層,通過對特征數據融合與分類后,輸出CNN的結果.
本文中,我們設計了一個混淆標簽方案生成樣本的卷積神經網絡,它的結構包含一個輸入層、三個卷積層、兩個全連接層和一個輸出層. 每個卷積層包含16個3×3卷積核,其卷積步長為1,每層卷積計算后都插入修正線性單元ReLU來引入非線性函數. 第三個卷積層經過ReLU輸出后展平成一個8192個節點的隱藏單元,通過全連接層連接到另一個256個節點的隱藏單元. 由于只有兩種相,故將第二個全連接層連接到包含2個節點的輸出層. 全連接層中加入Dropout函數,Dropout 率設為0.5,這一步是為了訓練時讓神經元以一定的概率不工作,防止參數更新過快而導致過擬合. CNN的最終輸出結果為輸出層經過Softmax函數激活后的結果,整個系統的網絡結構如圖3所示. 我們采用此CNN在訓練集上訓練2000次,CNN學習率設為10-3. CNN的最終損失函數為兩分類的交叉熵損失函數,與全連接層權重的L2正則化函數之和,其表達式如下

圖3 卷積神經網絡示意圖Fig. 3 Schematic diagram of convolutional neural network
(8)

我們數值模擬方程,求解系統的基態波函數. 這里各物理參數的取值分別為原子碰撞相互作用大小為g11=g22=1,g12=2,系統的尺寸大小為L=100,并采用了周期性邊界條件. 在拉曼耦合Ω∈[Ω1,Ω2]內均勻取1000個Ω值,每一個Ω的值可以得到耦合兩分量BEC的波函數Ψ1,Ψ2,將兩分量BEC的布居差Zk=|Ψ1|2-|Ψ2|2作為數據集內的數據,Lk為此條數據的標簽,此時數據集可表示為:
(9)
我們采用混淆標簽方案,運用TensorFlow框架來實現CNN網絡模型,并使用Adam算法優化訓練集的損失函數. 在Ω∈[Ω1,Ω2]內均勻取31個設定的臨界點Ωi,根據每個設定的臨界點Ωi將數據集內的1000條數據進行打標簽分類,可以得到31組數據相同而標簽不同的數據集. 每組數據都按4:1的比例隨機分為數據集和訓練集,每組數據集都包含800條訓練數據和200條測試數據. 將每組的800條訓練數據作為CNN的輸入,相應的標簽作為CNN的輸出,以此輸入和輸出訓練CNN的模型參數,通過調節控制參數,使交叉熵損失函數減小. 如果交叉熵損失函數收斂,則表示此網絡模型已訓練完成. 再以200條測試集數據作為網絡輸入,用已訓練好的模型參數處理測試集的數據,網絡的輸出與測試集的標簽對比得到準確率. 經過多組數據處理完畢得到系統的準確率曲線,即網絡模型在此數據集下的性能曲線,根據此性能曲線的特征來識別量子相變的臨界點,系統的整個流程如圖4所示.

圖4 深度學習識別相變點的流程示意圖Fig. 4 Schematic diagram of the process of deep learning to identify phase transition point
兩分量BEC耦合的取值范圍為Ω∈[100,130]和Ω∈[95,105],總粒子數的取值為N=12100和N=10000,通過深度學習,我們得到了此CNN模型對應的兩條性能曲線,如圖5(a)和(b)所示,由31個Ωi得到的準確率連接而成的兩條曲線都呈現W型. 圖中標注的虛線與準確率曲線的交點為W型曲線中間峰值,此時對應的Ωi是深度學習的相變點. 由圖5可知通過深度學習得到的相變點為Ωi=121和Ωi=100,與此兩組參數下真實的臨界點Ωcrit吻合度較高,深度學習的研究結果較好地符合了系統真實的量子相變點.

圖5 CNN模型對應的性能曲線. 每個點是10次運算后的平均值,誤差線是標準偏差,標注虛線所在處的Ωi為深度學習的量子相變點. (a)N=12100,Ωcrit=Ωi=121;(b)N=10000,Ωcrit=Ωi=100. 其他參數的取值為g11=g22=1,g12=2,L=100.Fig. 5 The performance curves corresponding of the CNN model. Each point is the average value after 10 operations,the error line is standard deviation,and Ωi where the dotted line is quantum phase transition point of deep learning. (a)N=12100,Ωcrit=Ωi=121;(b)N=10000,Ωcrit=Ωi=100. The values of other parameters are g11=g22=1,g12=2,L=100.
區別于用序參量來研究量子相變的傳統方法,我們采用深度學習的方法來識別兩分量BEC量子相變點,此研究中只求解了系統的基態波函數,而并不需要找到系統的序參量,進行復雜的計算與分析. 采用混淆標簽方案標記數據樣本,對訓練集進行特征提取后,訓練CNN模型參數,用測試集的準確率評估網絡性能并分析,此方法只需基態數據就能成功找到了量子相變的臨界點.
本文運用混淆標簽方案來標記數據集,設計CNN來尋找耦合兩分量BEC發生易混合-不易混合量子相變的臨界點. 對于只存在兩種相的系統,CNN的性能曲線呈現W型,其中間峰值對應著兩相的臨界點,深度學習的結果符合理論預期. 研究結果表明,深度學習的研究方法在無需已知序參量和其他物理條件時,僅通過系統的基態波函數就可以找到量子相變點. 我們通過以尋找耦合兩分量BEC中量子相變點為例,可以把運用混淆標簽方案的深度學習方法推廣到只存在兩種相的相變系統. 當然,在遇到一些未知的物理問題時,也可嘗試使用深度學習的方法來研究.