Upgrade to Pro — share decks privately, control downloads, hide ads and more …

淺談量子機器學習 - 當機器學習遇見量子計算

Yi-Feng Tzeng
March 27, 2019
510

淺談量子機器學習 - 當機器學習遇見量子計算

量子機器學習 (Quantum Machine Learning) 旨在融和量子計算及機器學習方法,為跨越兩領域的新興研究學科。量子計算與機器學習各為很深的研究領域,在探索量子機器學習之前,必須對此兩者有基本的瞭解。在此領域,我仍是一名持續學習的實習生,在本次演講將與大家一同交流,探討量子機器學習會如何影響資料科學及經典機器學習。

Yi-Feng Tzeng

March 27, 2019
Tweet

Transcript

  1. 2/122 曾義峰 (ant) 13 年網際網路研發經驗 , 4 年顧問資歷。 時而編程 ,

    時而沉浸於法律領域、倘洋於資訊安全世界中。 → TGO Networks 台北分會會籍委員 → 台灣資安社群 CHROOT 成員 → 書亞集成股份有限公司 CTO → 香港商帕格數碼媒體股份有限公司 CTO → 希幔科技股份有限公司 CTO → 台灣駭客年會 (HITCON) 2008/2009 講師 → 開源人年會 (COSCUP) 2009/2012 講師 → 台灣 Modern Web 2015/2016/2017/2018 講師 → 中國開源年會 (COSCon) 2018 講師
  2. 7/122 雙縫實驗 (double-slit experiment) 我們要知道: 1. 條紋與每個電子的能量如何傳遞沒有關係,每個擊發點都是完全不相關的。 2. 每個電子都不知道上個電子的落點。 3.

    每個電子最終到達所形成的點,都是全部的能量傾注。 4. 電子是已知最小不可分割的粒子。 但當每次只擊發一個電子,隨機選擇左或右縫時,現象也一樣嗎? Ref: The Secrets of Quantum Physics - BBC documentary
  3. 17/122 胡扯 ( 旁白 ) ! ( 愛因斯坦對此解釋極度厭惡 ) Does

    the moon cease to exit when I don’t look at it? ( 我不看月亮的時候它就不存在嗎? ) ~ Albert Einstein ( 阿爾伯特 · 愛因斯坦 ) ~ Ref: https://en.wikipedia.org/wiki/Albert_Einstein
  4. 20/122 Bohr was inconsistent, unclear, wilfully obscure and right. Einstein

    was consistent, clear, down-to-earth and wrong. ( 波爾的理論前後矛盾,不甚明晰,任意晦澀但卻正確無疑 ) ( 愛因斯坦的理論前後一致,非常明晰,具體務實但卻全然錯誤 ) ~ John Bell ( 約翰 · 貝爾 ) ~ Ref: https://en.wikipedia.org/wiki/John_Stewart_Bell
  5. 21/122 Anyone who is not shocked by quantum theory has

    not understood it. ( 如果誰不對量子理論感到困惑,他就沒有理解它 ) ~ Niels Bohr ( 尼爾斯 · 波耳 ) ~ Ref: https://en.wikipedia.org/wiki/Niels_Bohr
  6. 22/122 I think I can safely say that nobody understands

    quantum mechanics. ( 我想我可以很確定的說,沒有人理解量子力學 ) ~ Richard Feynman ( 理察 · 費曼 ) ~ Ref: https://en.wikipedia.org/wiki/Richard_Feynman
  7. 34/122 C Input Black White C Black White Black 0%

    White 100% 電子實驗 H Input Hard Soft H Hard Soft Hard 0% Soft 100% 每次單一電子輸入 ( 擊發 ) ,經過一個硬度篩選盒子,可輸出為 Hard( 硬 ) 或 Soft( 軟 ) 。
  8. 35/122 C Input Black White H Hard Soft Hard 50%

    Soft 50% 電子實驗 H Input Hard Soft C Black White Black 50% White 50% 即使知道硬度,也無法推測顏色,反之亦然。
  9. 37/122 電子實驗 H H Hard Soft Hard Soft White Hard

    50% Soft 50% I II IV III C H Hard Soft Black White Hard Black 50% White 50% C H Hard Soft Black White White Black 0% White 100% C H Hard Soft Black White White Baffle Black 50% White 50%
  10. 38/122 電子實驗 C H Hard Soft Black White White Baffle

    Black 50% White 50% Path : Hard path No ! Soft path No ! Both path No ! Neither No ! 如果加 Baffle 放在 Hard path 上,最後測量時是什麼電子也沒有
  11. 39/122 電子實驗 C H Hard Soft Black White White Baffle

    Black 50% White 50% Path : Hard path No ! Soft path No ! Both path No ! Neither No ! Superposition ( 壘加態 ) 如果加 Baffle 放在 Hard path 上,最後測量時是什麼電子也沒有
  12. 41/122 量子技術 (Quantum Technology) 量子計算 (Quantum Computation) 量子通訊 (Quantum Communications)

    量子元件 (Quantum Components) 量子電腦 (Quantum Computer) 量子演算法 (Quantum Algorithms) 量子機器學習 (Quantum Machine Learning) 量子傳輸 (Quantum Teleportation) 量子密鑰 (Quantum Cryptography) 量子感測 (Quantum Sensors)
  13. 42/122 量子年表 1900 卜朗克發現卜朗克常數 1905 愛因斯坦發表光量子說、特殊相對論、布朗運動 1906 愛因斯坦發表量子假說 1910 卜朗克接受量子假說

    1911 拉塞福散射實驗 1913 波爾原子模型 1914 密立根實驗證實光電效應 1925 海森堡的矩陣力學 1926 薛丁格的波動力學 1927 海森堡的測不準原理
  14. 47/122 量子退火 (Quantum Annealer) D-Wave (Quantum Machine Instruction) 富士通數位退火晶片 DAU

    離散量子閘 (Discrete gate-based) IBM (IBM Q / QASM, Python) Google (Bristlecone) Rigetti (Quantum Virtual Machine / Quil) 連續量子閘 (Continuous gate-based) Xanadu 量子計算的類型 (3 types of Quantum computing)
  15. 54/122 量子疊加態 (Superposition) 量子能同時處在兩個狀態, |0> (ground state/spin down) 及 |1>

    (excited state/spin up) 表示。 |0> 為低能量態 ( 基態 ) ,可用 Pulse( 脈衝 ) 轉為 |1> 高能量態。 量子位元可以被強制依此兩狀態所組成之向量轉為疊加態, |ψ> = α|0> + β|1> 且 |α|2 + |β|2 = 1 (|ψ> 表示疊加態 ) Ref: How Does a Quantum Computer Work by Veritasium
  16. 55/122 量子疊加態 (Superposition) 在測量前,量子會處在所謂的「量子疊加態 (Superposition) 」。 測量後才會潰縮 (collapse) 成精確態,且各精確態有不同的機率。每次測量的結果可能不同。 如

    |ψ> = α|0> + β|1> 且 |α|2 + |β|2 = 1 即 |ψ>= ACE|000>+ACF|001>+ADE|010>+ADF|011>+BCE|100>+BCF|101>+BDE|110>+BDF|111⟩ |ACE|2 + |ACF|2 + |ADE|2 + |ADF|2 + |BCE|2 + |BCF|2 + |BDE|2 + |BDF|2 = 1
  17. 60/122 量子糾纏 (Entanglement) 電子與所有基本粒子都一樣都有一種自旋的特性,在你未測量它之前,它的旋轉方向都是模糊及不確定 的,但當它一被觀察,你就會知道它是向上旋還是向下旋;如果一粒電子與另一粒電子處於「糾纏」狀 態,當其中一粒電子被測出是向上旋,那麼另一粒電子必然是向下旋,無論兩粒電子相距多遠,結果都會 一樣。 中國的墨子號擁有精密的光學設備,可以將一雙一雙糾纏狀態的光子發射到地球表面,分別由兩座相隔 1200 公里的接收器接收。

    這些光子訊號可成為通訊內容,而當有黑客嘗試截取或觀察這些處於糾纏狀態的光子,就會瞬即影響與它 們各自連結的光子,系統馬上就會發現黑客,因此,整個通訊系統可謂無漏洞可言。另外,由衛星發出糾 纏光子的好處是,太空處於真空狀態,只有大氣層中長約 10 公里的部分會影響光子,地面傳輸則會受到 光纖及大氣限制。
  18. 61/122 量子糾纏 (Entanglement) 電子與所有基本粒子都一樣都有一種自旋的特性,在你未測量它之前,它的旋轉方向都是模糊及不確定 的,但當它一被觀察,你就會知道它是向上旋還是向下旋;如果一粒電子與另一粒電子處於「糾纏」狀 態,當其中一粒電子被測出是向上旋,那麼另一粒電子必然是向下旋,無論兩粒電子相距多遠,結果都會 一樣。 中國的墨子號擁有精密的光學設備,可以將一雙一雙糾纏狀態的光子發射到地球表面,分別由兩座相隔 1200 公里的接收器接收。

    這些光子訊號可成為通訊內容,而當有黑客嘗試截取或觀察這些處於糾纏狀態的光子,就會瞬即影響與它 們各自連結的光子,系統馬上就會發現黑客,因此,整個通訊系統可謂無漏洞可言。另外,由衛星發出糾 纏光子的好處是,太空處於真空狀態,只有大氣層中長約 10 公里的部分會影響光子,地面傳輸則會受到 光纖及大氣限制。 量子通訊
  19. 65/122 量子狀態變化 (Transformation) 量子狀態依照么正變化 (Unitary transformation) 法則 , 由體系的漢彌爾頓算子 (Hamiltonian)

    決定其 變化。因為體系的各個狀態按么正變換同時變化 , 故一次量子計算作用在多個數據上 。
  20. 66/122 量子狀態變化 (Transformation) 量子狀態依照夭正變化 (Unitary transformation) 法則 , 由體系的漢彌爾頓算子 (Hamiltonian)

    決定其 變化。因為體系的各個狀態按夭正變換同時變化 , 故一次量子計算作用在多個數據上 。 Linear algebra ( 線性代數 )
  21. 72/122 量子疊加態 (Superposition) 量子干涉 (Interference) 量子糾纏 (Entanglement) 不可複製 (Nonclonability) 狀態變化

    (Transformation) 【量子平行計算】要件 = 疊加態 + 狀態變化 + 量子干涉 ( 量子糾纏為前提 )
  22. 75/122 在量子化學領域,若要模擬一個氨 (ammonia) 分子,溶解於水時產生的能力 (energy) 時,必須將氨所有 的原子 (atom) 納入模擬中。 在古典電腦中,我們需要

    1032 古典位元。 計算 (Computing) Ref: The World of Quantum Computing (https://www.youtube.com/watch?v=RcDNVnLvqjc) 猜在量子電腦中我們需要多少量子位元?
  23. 76/122 計算 (Computing) Ref: The World of Quantum Computing (https://www.youtube.com/watch?v=RcDNVnLvqjc)

    2N > 1032, when N>107 Quantum computing need extra 1 qubits, 107 + 1 = 108
  24. 79/122 假設要模擬整個宇宙的粒子,就必須需所有粒子對應到每個位元。 粒子:原子得到或失去電子( ex: 氧離子 O +2 )。 計算 (Computing)

    整個宇宙約有 2^300 個粒子 ( 另一說法 2^305) 古典電腦需要個 2^300 古典位元,而量子電腦只要 301 個量子位元
  25. 80/122 古典電腦原則上相同的輸入,都會獲得一定的結果,但量子電腦未必有相同結果。 1 Qubit Q 0 = (A|0>+B|1>) |ψ>= A|0>+B|1>

    舉例某個脈衝 (Pulse) 下可以得到, A|0> = 0.8, B|1> = -0.6 則 |0.8|2 + |-0.6|2 = 1 → |0> 的機率為 64% , |1> 的機率為 36% 。 所以我們知道量子電腦算出的結果,即使在相同條件 ( 如脈衝 ) 下,都未必有相同結果。 計算 (Computing)
  26. 85/122 Ref: Quantum Programming A New Approach to Solve Complex

    Problems (2017-10-17).pdf IBM 提供的 Gates Set 。
  27. 90/122 Ref: https://www.youtube.com/watch?v=JhHMJCUmq28 4 個古典位元,每個位元各自表示兩種狀態中的一種。 例如 0000, 0001, 0010, 0011,

    … 共包括了 16 種不同的組合。但只能使用其中一組做為計算或儲存。 計算 (Computing) 古典電腦
  28. 93/122 計算 (Computing) U 輸入 3 量子位元 轉換 疊加態 只經由一次

    U 轉換 得出 8 個疊加態的機率 ( 平行計算 ) 在古典計算中要算 8 次 Qubits Bits 1 2 2 4 3 8 4 16 ... ... N 2N Ref: https://www.quantiki.org/wiki/basic-concepts-quantum-computation
  29. 94/122 計算 (Computing) U 輸入 3 量子位元 轉換 疊加態 只經由一次

    U 轉換 得出 8 個疊加態的機率 ( 平行計算 ) 在古典計算中要算 8 次 Qubits Bits 1 2 2 4 3 8 4 16 ... ... N 2N Ref: https://www.quantiki.org/wiki/basic-concepts-quantum-computation 換個角度, 3 個量子位元 ( 理論 ) 可同時儲存 8 種結果 古典電腦要儲存 8 種結果,需要 24 個古典位元
  30. 97/122 質因數分解 (Prime Factorization) 橢圓曲線離散對數 (Elliptic-curve Discrete Logarithm) 弱化對稱演算法 (Weakens

    Symmetric-key Cryptography) 量子密鑰分配 (Quantum Key Distribution) 量子機器學習 (Quantum Machine Learning) 旅行推銷員問題 (Traveling Salesman Problem) 量子數位貨幣 (Quantum Cryptocurrency)
  31. 102/122 2007-02-13 , D-Wave 演示 16 個量子位元的電腦。 2007-11-02 , D-Wave

    演示 28 個量子位元的電腦。 2011-05-11 , D-Wave 推出 D-Wave One , 128 個量子位元電腦,第一個商用量子電腦 ( 有爭議 ) 。 2013-05-16 , D-Wave 推出 D-Wave Two , 512 個量子位元的電腦。 2015-08-20 , D-Wave 推出 D-Wave 2X , 1000+ 個量子位元的電腦。 2017-01-14 , D-Wave 推出 D-Wave 2000Q , 2048 個量子位元的電腦。 2020-??-??, , D-Wave 預計推出 5000 個量子位元的電腦。 單價 1000-1500 萬美元 量子霸權 (Quantum Supremacy) 量子退火 (Quantum Annealer)
  32. 103/122 2017-05-17 , IBM 宣布 16 及 17 個量子位元的量子電腦。 2017-10-10

    , Intel 宣布 17 個量子位元的測試晶片。 2017-11-10 , IBM 宣布 50 個量子位元的量子電腦。 2017-12-18 , Rigetti 宣布 19 個量子位元的晶片。 2018-01-09 , Intel 宣布 49 個量子位元的 Tangle Lake 測試晶片。 2018-03-05 , Google 宣布 72 個量子位元的 Bristlecone 晶片。 2018-03-28 , Microsoft 的 Topological Quantum Computer 。 2019-01-08 , IBM 宣布世界第一台 20 位的商用量子電腦 IBM Q 。 7 17 49 Ref: https://en.wikipedia.org/wiki/List_of_quantum_processors 量子霸權 (Quantum Supremacy) 通用量子 (Universal Quantum)
  33. 104/122 量子霸權 (Quantum Supremacy) 2007-02-13 , D-Wave 演示 16 個量子位元的電腦。

    2007-11-02 , D-Wave 演示 28 個量子位元的電腦。 2011-05-11 , D-Wave 推出 D-Wave One , 128 個量子位元電腦,第一個商用量子電腦 ( 有爭議 ) 。 2013-05-16 , D-Wave 推出 D-Wave Two , 512 個量子位元的電腦。 2015-08-20 , D-Wave 推出 D-Wave 2X , 1000+ 個量子位元的電腦。 2017-01-14 , D-Wave 推出 D-Wave 2000Q , 2048 個量子位元的電腦。 2017-05-17 , IBM 宣布 16 及 17 個量子位元的量子電腦。 2017-10-10 , Intel 宣布 17 個量子位元的測試晶片。 2017-11-10 , IBM 宣布 50 個量子位元的量子電腦。 2017-12-18 , Rigetti 宣布 19 個量子位元的晶片。 2018-01-09 , Intel 宣布 49 個量子位元的 Tangle Lake 測試晶片。 2018-03-05 , Google 宣布 72 個量子位元的 Bristlecone 晶片。 2018-03-28 , Microsoft 的 Topological Quantum Computer 。 2019-01-08 , IBM 在 CES 大會宣布世界第一台 20 個量子位的商用量子電腦 IBM Q System One 。 2020-??-?? , D-Wave 預計推出 5000 個量子位元的電腦。
  34. 105/122 量子霸權 (Quantum Supremacy) 2007-02-13 , D-Wave 演示 16 個量子位元的電腦。

    2007-11-02 , D-Wave 演示 28 個量子位元的電腦。 2011-05-11 , D-Wave 推出 D-Wave One , 128 個量子位元電腦,第一個商用量子電腦 ( 有爭議 ) 。 2013-05-16 , D-Wave 推出 D-Wave Two , 512 個量子位元的電腦。 2015-08-20 , D-Wave 推出 D-Wave 2X , 1000+ 個量子位元的電腦。 2017-01-14 , D-Wave 推出 D-Wave 2000Q , 2048 個量子位元的電腦。 2017-05-17 , IBM 宣布 16 及 17 個量子位元的量子電腦。 2017-10-10 , Intel 宣布 17 個量子位元的測試晶片。 2017-11-10 , IBM 宣布 50 個量子位元的量子電腦。 2017-12-18 , Rigetti 宣布 19 個量子位元的晶片。 2018-01-09 , Intel 宣布 49 個量子位元的 Tangle Lake 測試晶片。 2018-03-05 , Google 宣布 72 個量子位元的 Bristlecone 晶片。 2018-03-28 , Microsoft 的 Topological Quantum Computer 。 2019-01-08 , IBM 在 CES 大會宣布世界第一台 20 個量子位的商用量子電腦 IBM Q System One 。 2020-??-?? , D-Wave 預計推出 5000 個量子位元的電腦。 量子退火量子位元遠比量子閘量子位元高! ( 技術比較好?計算比較快? )
  35. 106/122 量子電腦的工作環境 D-Wave 需要在 20mk( 零下 273.13 度 ) 工作。

    IBM 也是用超導晶片,工作溫度 15mk( 零下 273.135 度,比絕對零度 -273.15 高 0.015 度 ) 。
  36. 108/122 ( 量子 ) 機器學習的分類 簡稱 算法類型 數據類型 應用 C-C

    經典 經典 傳統機器學習 C-Q 經典 量子 用傳統機器學習解量子問題; 量子最佳化控制 Q-C 量子 經典 量子支持向量機 (QSVM) ; 量子退火 (QA) 等 Q-Q 量子 量子 量子回饋控制等
  37. 112/122 量子機器學習的基本流程 經典數據 ( 樣本 ) 量子數據 ( 輸入 )

    量子數據 ( 輸出 ) 經典數據 ( 結果 ) 量子態 制備 量子 算法 量子 量測
  38. 118/122 量子模擬退火 (Quantum Annealing) 棋盤為例 Ref: When open source meets

    quantum computing (2019-02-02).pdf (p18) 0 1 2 3 1 1 1 1