探究谷歌用于構建量子機器學習模型的新框架:TensorFlow Quantum
譯文【51CTO.com快譯】量子計算和人工智能(AI)的交匯有望成為整個技術發展史上最引人入勝的潮流之一。量子計算的出現可能迫使我們重新構思幾乎所有現有的計算范式,AI也不例外。然而,量子計算機的計算能力還有望加快AI如今仍然不實用的許多方面。AI和量子計算相輔相成的第一步是,重新構思在量子架構上運行的機器學習模型。最近谷歌開源了用于構建量子機器學習模型的框架:TensorFlow Quantum。
TensorFlow Quantum的核心概念是將量子算法和機器學習程序交織在TensorFlow編程模型中。谷歌稱這種方法為量子機器學習,能夠利用其最近的一些量子計算框架(比如谷歌Cirq)來實現它。
量子機器學習
說到量子計算和AI,我們要回答的第一個問題是,后者如何得益于新興的量子架構。量子機器學習(QML)是個籠統的術語,指可以充分利用量子特性的機器學習模型。QML的第一個應用專注于重構傳統的機器學習模型,以便它們能夠在隨量子位數量急劇擴大的狀態空間上執行快速線性代數。然而,由于量子硬件的計算能力提高,量子硬件的發展拓寬了QML的前景,逐漸發展成為可以進行經驗研究的啟發式方法。這個過程類似于GPU的問世,如何使機器學習向深度學習范式發展。
在TensorFlow Quantum的上下文中,可以將QML定義為兩大部分:
a. 量子數據集
b. 混合量子模型
量子數據集
量子數據是出現在自然或人工量子系統中的任何數據源。這可能是來自量子力學實驗的經典數據,也可能是由量子設備直接生成,然后作為輸入饋入到算法中的數據。有一些證據表明,出于以下描述的原因,“量子數據”方面的混合量子經典機器學習應用可提供較之純經典機器學習的量子優勢。量子數據表現出疊加和糾纏現象,導致可能需要數量激增的經典計算資源來表示或存儲的聯合概率分布。
混合量子模型
就像機器學習可以從訓練數據集歸納模型一樣,QML也可以從量子數據集歸納量子模型。然而,由于量子處理器仍然很小且嘈雜,量子模型無法單單使用量子處理器來歸納量子數據。混合量子模型提出了一種方案,其中量子計算機作為硬件加速器將最有用,與傳統計算機共生。這種模型非常適合TensorFlow,因為它已經跨CPU、GPU和TPU支持異構計算。
Cirq
建立混合量子模型的第一步是能夠利用量子操作。為此,TensorFlow Quantum依靠Cirq,這種開源框架用于在近期設備上調用量子電路。Cirq包含指定量子計算所需要的基本結構,比如量子位、門、電路和測量運算符。Cirq背后的想法是提供一種簡單的編程模型,它對量子應用軟件的基本構建模塊進行抽象處理。最新版本包括以下關鍵構建模塊:
- 電路:在Cirq中,電路代表量子電路的最基本形式。Cirq電路表示為矩(Moment)的集合,這些矩包括在某個抽象時間間隔內對量子位執行的操作。
- 時間表和設備:時間表是量子電路的另一種形式,包括有關門的時機和持續時間的更詳細的信息。從概念上講,時間表由一組ScheduledOperations以及要在其上運行時間表的設備的描述組成。
- 門:在Cirq中,門對量子位集合的操作進行抽象處理。
- 模擬器:Cirq包括可用于運行電路和時間表的Python模擬器。模擬器架構可以跨多個線程和CPU擴展,從而使它可以運行相當復雜的電路。
TensorFlow Quantum
TensorFlow Quantum(TFQ)是用于構建QML應用程序的框架。TFQ使機器學習研究人員可以構建量子數據集、量子模型和經典控制參數,作為單單一張計算圖中的張量(tensor)。
從架構的角度來看,TFQ提供了一個模型,它對與TensorFlow、Cirq和計算硬件的交互進行抽象處理。堆棧的頂部是要處理的數據。經典數據直接由TensorFlow處理;TFQ增加了這一功能:處理由量子電路和量子運算符組成的量子數據。堆棧的下一級是TensorFlow中的Keras API。由于TFQ的核心原則是與核心TensorFlow(尤其是與Keras模型和優化器)進行原生集成,因此這一級橫跨堆棧的整個寬度。Keras模型抽象的下面是我們的量子層和微分器,與經典TensorFlow層連接起來后,它們可以實現混合量子-經典自動微分。在量子層和微分器的下面,TFQ依賴TensorFlow運算符,該運算符為數據流圖創建實例。
從執行的角度來看,TFQ遵循以下步驟來訓練和構建QML模型。
1. 準備量子數據集:量子數據作為張量而加載,被指定為用Cirq編寫的量子電路。張量由TensorFlow在量子計算機上執行,以生成量子數據集。
2. 評估量子神經網絡模型:在這一步,研究人員可以使用Cirq為量子神經網絡建立原型,然后將其嵌入到TensorFlow計算圖中。
3. 采樣或求平均:這一步利用了對涉及第1步和第2步的幾趟運行求平均值的方法。
4. 評估經典神經網絡模型:這一步使用經典深度神經網絡,以獲取前幾個步驟中提取的度量指標之間的這種關聯。
5. 評估成本函數:與傳統的機器學習模型類似,TFQ使用這一步評估成本函數。如果標記了量子數據,這可能基于模型執行分類任務有多準確;如果任務不是監督式,基于其他標準。
6. 評估梯度和更新參數:評估成本函數后,應沿著預期降低成本的方向,更新管道中的自由參數。
TensorFlow和Cirq的結合使TFQ擁有一系列豐富的功能,包括更簡單和熟悉的編程模型,以及同時訓練和執行許多量子電路的功能。
結合量子計算和機器學習的工作仍處于起步階段。當然,TFQ是這個領域最重要的里程碑之一,它利用了量子學習和機器學習中一些最好的IP。有關TFQ的更多詳細信息,請訪問項目官網(https://www.tensorflow.org/quantum)。
原文標題:Exploring TensorFlow Quantum, Google’s New Framework for Creating Quantum Machine Learning Models,作者:Jesus Rodriguez
【51CTO譯稿,合作站點轉載請注明原文譯者和出處為51CTO.com】