量子力學(xué)曾是一門富有爭議的學(xué)說。早期的批判者(如愛因斯坦)曾在量子力學(xué)領(lǐng)域留下一句名言,即“上帝不會擲骰子”(指的是量子測量的概率特性),尼爾斯·玻爾對此評論道:“愛因斯坦,不要對上帝指手畫腳?!比欢蠹叶纪鈵垡蛩固沟挠^點(diǎn),引用約翰·惠勒的一句話就是,“如果你不曾為量子力學(xué)困惑不已,則將無法領(lǐng)略其中的真諦”。
隨著對量子力學(xué)的認(rèn)識不斷深入,我們不僅從中收獲到許多重要的物理發(fā)現(xiàn),同時(shí)也通過量子力學(xué)催生了量子計(jì)算領(lǐng)域。量子計(jì)算是一門與傳統(tǒng)計(jì)算不同的計(jì)算范式。此領(lǐng)域以量子力學(xué)原理為基礎(chǔ),并不斷加以開發(fā),從而可獲得比使用傳統(tǒng)計(jì)算機(jī)更快的速度(在某些情況下可實(shí)現(xiàn)超多項(xiàng)式時(shí)間)。
在這篇文章中,我會聊聊自己在開始研究量子機(jī)器學(xué)習(xí) (QML) 時(shí)面臨到的一些挑戰(zhàn),以及我通過 TensowFlow Quantum(TFQ) 和 Cirq 受益并幫助其他研究人員探索量子計(jì)算和 QML 領(lǐng)域的方法。因?yàn)槲抑敖佑|過 TensorFlow,所以使用 TensorFlow Quantum 對我來說也是輕車熟路。事實(shí)證明,TFQ 對我完成工作很有幫助,然后終于在第 16 屆 AIIDE 會議上,我在量子強(qiáng)化學(xué)習(xí)領(lǐng)域用 TFQ 發(fā)表了我的首個(gè)作品,而那則是我最輝煌的時(shí)刻。我希望這篇文章可以幫助和激勵(lì)其他研究人員、新手和專家,使其通過 TFQ 進(jìn)一步推動(dòng) QML 領(lǐng)域的發(fā)展。
QML 背景
QML 和機(jī)器學(xué)習(xí)在傳統(tǒng)神經(jīng)網(wǎng)絡(luò)/深度學(xué)習(xí)方法方面有著重要的相似性和不同點(diǎn)。這兩種方法均可看做是使用了轉(zhuǎn)換的“堆疊層”,而這正是較大模型的構(gòu)成要素。在這兩種情況下,我們通常會為了最小化某些損失函數(shù),將數(shù)據(jù)用于通知模型參數(shù)更新(大多情況下是這樣,但不完全都是通過基于梯度的方法)。這兩種方法的不同之處在于,QML 模型可以利用量子力學(xué)的力量,而深度神經(jīng)網(wǎng)絡(luò)則不能。我們會將一種由 TFQ 提供技術(shù)支持的重要 QML 稱作變分量子電路 (QVC)。QVC 也可稱作量子神經(jīng)網(wǎng)絡(luò) (QNN)。
QVC 如下圖所示(來自 TFQ 白皮書)。圖表閱讀順序?yàn)閺淖笸?,其中量子位由水平橫線表示。QVC 可分為三個(gè)重要而又不同的部分:編碼器電路、變分電路和測量運(yùn)算符。編碼器電路可以接收自然量子數(shù)據(jù)(如非參數(shù)化量子電路),或?qū)鹘y(tǒng)數(shù)據(jù)轉(zhuǎn)化為量子數(shù)據(jù)。編碼器電路連接到變分電路,后者由其可學(xué)習(xí)參數(shù)定義。在學(xué)習(xí)過程中更新的部分即為電路的參數(shù)化部分。QVC 最后的組成部分為測量運(yùn)算符。如要從 QVC 中提取信息,必須應(yīng)用某種量子測量方法(如 Pauli X、Y 或 Z 基的測量)。通過使用提取自這些測量方法中的信息,我們得以在傳統(tǒng)計(jì)算機(jī)上計(jì)算損失函數(shù)(以及梯度)并更新參數(shù)。同時(shí),可通過類似傳統(tǒng)神經(jīng)網(wǎng)絡(luò)(如 Adam 或 RMSProp)的優(yōu)化器來優(yōu)化這些梯度。QVC 也可與傳統(tǒng)神經(jīng)網(wǎng)絡(luò)相結(jié)合(如圖所示),因?yàn)榱孔与娐肪邆淇晌⒎中?,因此梯度可以反向進(jìn)行傳播。
TFQ 白皮書
https://arxiv.org/abs/2003.02989
然而圍繞 QVC 的直觀模型和數(shù)學(xué)框架與傳統(tǒng)神經(jīng)網(wǎng)絡(luò)有一些重要區(qū)別,而在這些差異中存在著量子加速的潛能。量子計(jì)算和 QML 可以對量子現(xiàn)象加以利用,如疊加和糾纏。疊加源自于波函數(shù),而波函數(shù)是多個(gè)狀態(tài)的線性組合,可讓量子位同時(shí)呈現(xiàn)出兩種不同的狀態(tài)(以概率的方式)。能夠在此類疊加上采取操作(即同時(shí)對多個(gè)狀態(tài)進(jìn)行操作)是量子力學(xué)計(jì)算不可或缺的一部分。糾纏是一種通過多量子位門生成的復(fù)雜現(xiàn)象。對這些概念和量子計(jì)算具有基本的了解是使用 QML 的重要前提。這里有關(guān)于上述內(nèi)容的大量可用資源,如 Preskill 的量子計(jì)算課程和 de Wolf 的講義。
Preskill 的量子計(jì)算課程
http://theory.caltech.edu/~preskill/ph219/ph219_2018-19
de Wolf 的講義
https://arxiv.org/pdf/1907.09415.pdf
不過目前想要使用真正的量子硬件,條件極為有限,因此很多量子計(jì)算研究人員都在模擬的量子計(jì)算機(jī)上進(jìn)行工作。近期和當(dāng)前的量子設(shè)備都具備 10 到 100 個(gè)量子位 (qubit),如 Google Sycamore 處理器。因其外觀尺寸和產(chǎn)生的噪音,這種硬件通常又被稱為嘈雜中型量子 (NISQ) 技術(shù)。TFQ 和 Cirq 即是為這些近期的 NISQ 設(shè)備量身打造而成。鑒于當(dāng)前的糾錯(cuò)技術(shù),這些設(shè)備要比某些通過著名量子算法實(shí)現(xiàn)量子加速的設(shè)備小得多;例如,秀爾算法需要上千個(gè)量子位,而量子近似優(yōu)化算法 (QAOA) 可能至少需要 420 個(gè)量子位才能獲得量子優(yōu)勢。然而 NISQ 設(shè)備在實(shí)現(xiàn)量子加速方面仍有巨大潛能(如 Google 通過 53 個(gè)量子位進(jìn)行驗(yàn)證地那樣)。
Google Sycamore 處理器
https://ai.googleblog.com/2019/10/quantum-supremacy-using-programmable.html
TFQ 和我的工作
TFQ 于今年(2020 年)3 月中旬發(fā)布,發(fā)布后不久我便開始使用。自那時(shí)起,我就已開始研究 QML,并格外關(guān)注了用于強(qiáng)化學(xué)習(xí) (RL) 的 QML。盡管我已經(jīng)在量子電路模擬器的無障礙功能方面取得了巨大進(jìn)步,但是仍然很難踏入 QML 這一領(lǐng)域。除了在數(shù)學(xué)和物理方面遇到的困難,根本困難則是位實(shí)現(xiàn)成果所投入的時(shí)間。對于那些從事傳統(tǒng)機(jī)器學(xué)習(xí)的研究人員來說,從頭開始編寫 QVC 所需的時(shí)間,以及正確測試和調(diào)試 QVC 花費(fèi)的時(shí)間(更不用說優(yōu)化)都是一種挑戰(zhàn)?;ㄙM(fèi)大量時(shí)間去構(gòu)建一個(gè)可能會失敗的試驗(yàn)品,對我來說風(fēng)險(xiǎn)巨大,尤其我當(dāng)時(shí)還是一個(gè)即將畢業(yè)的大學(xué)生!幸運(yùn)的是,我不用冒這個(gè)險(xiǎn)。隨著 TFQ 的發(fā)布,我可以在其中輕松即時(shí)地將我的想法轉(zhuǎn)變?yōu)楝F(xiàn)實(shí)。實(shí)際上,如果 TFQ 不曾發(fā)布,那我可能永遠(yuǎn)也無法完成這項(xiàng)工作。受先前工作的啟發(fā),我們擴(kuò)展性地在 RL 任務(wù)中應(yīng)用了 QML。
強(qiáng)化學(xué)習(xí)
http://www.incompleteideas.net/book/RLbook2020.pdf
先前工作
https://ieeexplore.ieee.org/abstract/document/9144562
通過這一做法,我們證明了在當(dāng)代 RL 算法中使用 QVC 代替神經(jīng)網(wǎng)絡(luò)的潛力(特別是 DQN 和 DDQN)。同時(shí)我們也展示了使用多類 QVC 模型的潛力,通過使用具有密集層或量子池層(分別表示混合動(dòng)力和純動(dòng)力)的 QVC 來減少正確輸出空間中量子位的數(shù)量。
DQN
https://www.cs.toronto.edu/~vmnih/docs/dqn.pdf
DDQN
https://arxiv.org/pdf/1509.06461.pdf
量子池層
https://arxiv.org/abs/1810.03787
QVC 所具有的代表性效力也得以呈現(xiàn);通過使用具備約 50 個(gè)參數(shù)的 QVC,我們能夠收獲等同于在神經(jīng)網(wǎng)絡(luò)上使用更多數(shù)量級參數(shù)所呈現(xiàn)的性能。從圖上我們可以對比得出,在典型 CartPole 環(huán)境(讓小車上的一個(gè)倒立擺保持平衡)中達(dá)成的性能,左圖包括所有的神經(jīng)網(wǎng)絡(luò),而右圖只顯示了最大的神經(jīng)網(wǎng)絡(luò)。NN 前面的數(shù)字代表參數(shù)空間的大小。
我們會繼續(xù)在 RL 中應(yīng)用 QML,并為大家呈現(xiàn)更多稿件。這項(xiàng)工作現(xiàn)已納入 2020 NeurIPS 研討會:“預(yù)注冊實(shí)驗(yàn):用于機(jī)器學(xué)習(xí)研究的可替換發(fā)布模型。”
TFQ 使用建議
無論您的背景如何,只要您對 QML 研究感興趣,那 TFQ 對您來說都將是一個(gè)極佳的工具。在科學(xué)界,擁有“發(fā)表或者滅亡”的心態(tài)早已習(xí)以為常,不過這可能會扼殺創(chuàng)新工作并抑制思維的發(fā)散,對于那些需要采取大量實(shí)操工作的實(shí)驗(yàn)而言更是如此。TFQ 不僅可以幫助您加速實(shí)驗(yàn),還可以助您輕松實(shí)現(xiàn)那些可能永遠(yuǎn)難以試驗(yàn)的想法。付諸實(shí)踐是實(shí)現(xiàn)很多新鮮有趣想法的常見阻礙,到目前為止由于將想法轉(zhuǎn)化為現(xiàn)實(shí)異常困難,很多想法依然停留在構(gòu)想階段,而 TFQ 則可以輕松做到這一點(diǎn)。
扼殺創(chuàng)新工作
https://www.theguardian.com/science/2013/dec/06/peter-higgs-boson-academic-system
對于初學(xué)者而言,TFQ 是出色的入門工具,即使您沒有大量的時(shí)間來研究編碼,您依然能從中收獲大量知識。無需從頭開始構(gòu)建,即可借助 QVC 進(jìn)行嘗試和實(shí)驗(yàn)。不得不說,這的確是一款令人難以置信的工具。對于有 TensorFlow 使用經(jīng)驗(yàn)的傳統(tǒng) ML 研究人員來說,其可通過 TFQ,輕松完成對 QML 的小規(guī)?;虼笠?guī)模的過渡和轉(zhuǎn)換。TFQ 的 API 和其提供的模塊(如 Keras-esque 層和微分器)與 TF 的設(shè)計(jì)原則一致,而這一相似性則更有利于輕松完成編程轉(zhuǎn)換。對于身處 QML 領(lǐng)域的研究人員來說,TFQ 當(dāng)然也能有所助力。
大規(guī)模
https://arxiv.org/abs/2011.01938
如想上手使用 TFQ,則必須要熟悉量子計(jì)算的基礎(chǔ)知識。您可以參閱上述參考資料或是除此之外的其他資源。還有另一個(gè)經(jīng)常遭到忽視的重要步驟,那就是閱讀 TFQ 白皮書。白皮書可供 QML 初學(xué)者使用,其中介紹了大量有關(guān) QML 的理論知識,以及 TFQ 的基礎(chǔ)和高級用法。閱讀白皮書和使用 TFQ 同樣重要。試著嘗試不同的事物,如實(shí)驗(yàn);通過開展實(shí)驗(yàn),您不僅可以進(jìn)一步了解軟件,還可以加深對理論和數(shù)學(xué)的理解。通過閱讀其他當(dāng)代論文及引用了 TFQ 的論文,亦可讓自己沉浸于該領(lǐng)域正在進(jìn)行的研究之中。
責(zé)任編輯:lq
-
機(jī)器學(xué)習(xí)
+關(guān)注
關(guān)注
66文章
8353瀏覽量
132315 -
量子計(jì)算
+關(guān)注
關(guān)注
4文章
1072瀏覽量
34865 -
tensorflow
+關(guān)注
關(guān)注
13文章
328瀏覽量
60474
原文標(biāo)題:TensorFlow Quantum 使用心得
文章出處:【微信號:tensorflowers,微信公眾號:Tensorflowers】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
評論