量子CNN對數據集的測試準確率高,但存在局限性
在10月4日公布的2022年諾貝爾獎中,Alain Aspect 、John F. Clause 和 Anton Zeilinger 三位科學家憑借量子糾纏獲得物理學獎項,引起了外界對量子研究領域的關注和討論。
其中,以量子計算為代表的研究投資近幾年迎來顯著增加,人們開始探索從安全、網絡通信等領域出發,用量子方法來顛覆現有的經典計算技術。
有研究人員認為,量子計算的核心在于“通過計算成本更低的技術解決經典難題”,而隨著近年來深度學習和量子計算的研究并行發展,不少研究者也開始關注到這兩個領域的交叉點:量子深度學習。
近日,Xbox 游戲工作室 Rare 洞察主管 Holly Emblem 在新的文章“Quantum Deep Learning: A Quick Guide to Quantum Convolutional Neural Networks”中,就量子深度學習的現有研究和應用進行介紹,并重點討論了量子卷積神經網絡 (QCNN)與經典計算方法相比存在的優勢和局限性。
1 經典計算和量子計算的區別
首先介紹一個關于經典計算和量子計算區別的重要概念。在經典計算機上執行程序時,編譯器會將程序語句轉換為二進制位;而在量子計算中,與經典計算機上的位在任何時候都代表 1 或 0 的狀態不同,量子位能夠在這兩種狀態間“懸停”,只有當它被測量時,量子比特才會崩潰到它的兩個基態之一,即 1 或 0。
這種屬性稱為疊加,在量子計算任務中有至關重要的作用。通過疊加,量子計算機可以并行執行任務,而不需要完全并行的架構或 GPU 來執行。其原因在于,當每個疊加狀態對應一個不同的值,如果對疊加狀態進行操作,則該操作同時在所有狀態上執行。
這里舉一個疊加量子態的例子:
量子態的疊加是指數的,a 和 b 指概率幅度,其給出了一旦執行測量就投射到一個狀態的概率。其中,疊加量子態是通過使用量子邏輯門來創建的。
圖注:Ragsxl 在芬蘭埃斯波的 IQM 量子計算機
2 糾纏和貝爾態
疊加在量子物理學中十分重要,而另一個關鍵的原理則是糾纏。
糾纏指在兩個或多個粒子之間、以某種方式產生或引起相互作用的行為,這意味著這些粒子的量子態不再能彼此獨立地描述,即使相隔很遠也是如此。當粒子被糾纏時,如果一個粒子被測量,與之糾纏的另一個粒子將立即測量為相反的狀態(這些粒子沒有局部狀態)。
隨著對量子比特和糾纏的理解的發展,繼而來討論貝爾態,下面展示了量子比特的最大糾纏態:
|00? → β → 1 √ 2 (|00? + |11?) = |β00?,
|01? → β → 1 √ 2 (|01? + |10?) = |β01?
|10? → β → 1 √ 2 (|00? - |11?) = |β10?
|11? → β → 1 √ 2 (|01? - |10?) = |β11?
使用量子電路創建貝爾態:
圖注:Perry 量子計算神殿的貝爾態電路
在所顯示的貝爾態電路中,其接受量子位輸入并應用 Hadamard 門和 CNOT 門創來建一個糾纏的貝爾態。
目前,貝爾態已被用于開發一系列量子計算應用程序;其中,Hegazy、Bahaa-Eldin 和 Dakroury 就提出了貝爾態和超密集編碼可用于實現“無條件安全”的理論。
3 卷積神經網絡和量子卷積神經網絡
Fran?ois Chollet 在 Python 深度學習中指出,卷積神經網絡 (CNN) 在圖像分類等任務中很受歡迎,其原因在于它們能構建模式層次結構,例如先表示線條、再表示這些線條的邊緣,這使得 CNN 能夠建立在層之間的信息上,并表示復雜的視覺數據。
CNN 具有卷積層,由過濾器組成,這些過濾器會在輸入中“滑動”并產生“特征圖”,允許檢測輸入中的模式。同時,CNN 可使用池化層來減小特征圖的大小,從而減少學習所需的資源。
圖注:Cecbur 展示的卷積神經網絡
定義了經典的 CNN 后,我們就可以探索量子 CNN (量子卷積神經網絡,QCNN)是如何利用這些傳統方法、并對其進行擴展。
Garg 和 Ramakrishnan 認為,開發量子神經網絡的一種常見方法,是開發一種“混合”方法,引入所謂的“量子卷積層”,這是一種基于隨機量子電路的變換,在經典 CNN 中作為附加組件出現。
下面展示了由 Yanxuan Lü 等研究人員開發、并在MNIST 手寫數字數據集上進行測試的混合 QCNN:
研究人員在論文“A Quantum Convolutional Neural Network for Image Classification”中,采用了量子電路和糾纏作為經典模型的一部分來獲取輸入圖像,并生成預測作為輸出。
在這種方法中,QCNN 將圖像數據作為輸入,并將其編碼為量子態 |x>,然后使用量子卷積和池化層對其進行轉換來提取特征;最后,使用強糾纏電路的全連接層進行分類,并通過測量得到預測。
其中,優化是通過隨機梯度下降(SGD)處理的,可用于減少訓練數據標簽與 QCNN 預測標簽之間的差異。聚焦于量子電路,量子卷積層中使用的門如下所示,其中包括了旋轉算子和 CNOT 門。
在池化層測量量子位的一個子集,所得出的結果會決定是否對其臨近的位應用單量子位門:
全連通層由“通用單量子位門”和產生糾纏態的CNOT門組成,為了將 QCNN 與其他方法進行比較,研究人員使用了帶有模擬 QCNN 的 MNIST 數據集。按照典型的方法,我們創建了一個訓練/測試數據集,并開發了一個由以下層組成的 QCNN:
- 2個量子卷積層
- 2 個量子池層
- 1個量子全連接層
該 QCNN 對數據集的測試集準確率達到了 96.65%,而根據 Papers with Code 的數據進行測試后,該數據集在經典 CNN 中的最高準確度得分可達到 99.91%。
要注意的是,該實驗只有兩類 MNIST 數據集被分類,這也就意味著將其與其他 MNIST 模型性能完全比較會存在局限性。
4 可行性評估和總結
雖然研究人員在 QCNN 開發了方法,但目前該領域的一個關鍵問題是,實現理論模型所需的硬件還不存在。此外,混合方法在經典 CNN 計算中同時引入量子演化層的測試方法,也面臨著挑戰。
如果我們考慮量子計算的優勢之一,是可以解決“通過計算成本更低的技術解決經典棘手的問題”,那么這些解決方案中的一個重要方面就在于“量子加速”。有研究人員認為,量子機器學習與經典實現相比,其優勢在于預計量子算法可具有多項式、甚至指數級的加速時間。
然而,上文中展示的 QCNN 方法存在一個局限性是,當我們需要對經典數據和測量進行一致解碼/編碼的算法(如 QCNN )時,“量子加速”增益是有限的;而目前,關于如何設計出最好的編碼/解碼和需要最小測量的協議、使其能夠受益于“量子加速”的信息并不多。
糾纏已被證明是量子機器學習的一個重要性質,本文所提到的關于 QCNN 利用強糾纏電路,可以產生糾纏態作為其全連通層的研究,使模型能夠進行預測。不僅如此,糾纏也在其他領域中被用于輔助深度學習模型,例如使用糾纏從圖像中提取重要特征,以及在數據集中使用糾纏、可能意味著模型能夠從比之前預期更小的訓練數據集中學習等等。
本文提供了經典深度學習方法和量子深度學習方法的比較,并討論了利用量子層(包括強糾纏電路)生成預測的 QCNN ,分析量子深度學習的好處和局限性,并介紹了糾纏在機器學習中更普遍的應用,這也意味著我們可以開始考慮量子深度學習的下一步,特別是 QCNN 在更多領域中的應用。除此之外,量子硬件也在不斷進步,PsiQuantum 等公司更是提出了開發百萬量子比特的量子處理器目標。
隨著深度學習和量子計算領域研究的繼續進行,我們可以期待看到量子深度學習的進一步發展。