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

量子コンピューターでデータサイエンス / Data Science with Quantum Computers

量子コンピューターでデータサイエンス / Data Science with Quantum Computers

2021年6月4日開催 Women in Data Science Tokyo @ IBM
QUANTUM COMPUTING TALK #2資料
Speaker: 沼田 祈史
Qiskit Advocate
東京基礎研究所
日本アイ・ビー・エム株式会社

https://widstokyoibm2021.splashthat.com/

wids-tky-i

June 04, 2021
Tweet

More Decks by wids-tky-i

Other Decks in Technology

Transcript

  1. 量⼦とは︖ 同じ⽐率 原⼦ ビー⽟ 直径1万3000km 直径1cm 直径7cm 直径0.1nm ナノメートル あらゆるものは、「原⼦」からできています。

    ミクロな世界 原⼦や原⼦より⼩さい物質を量⼦と呼びます。 このミクロな物質は、私たちの常識では説明できない、 不思議なふるまいをします。 参考︓Newtonライト2.0『量⼦論』 5
  2. 量⼦計算の基礎 ⟩ |𝟎 = 1 0 , ⟩ |𝟏 =

    0 1 ⟩ |𝝍 = α ⟩ |𝟎 + β ⟩ |𝟏 = α 𝛽 α! 𝛽! = 𝑢"" 𝑢"# 𝑢#" 𝑢#" α 𝛽 7 • 量⼦ビット α, β ∶ 確率振幅 α ! + β ! = 1 • 量⼦ビットに作⽤する演算は、 ユニタリー⾏列 𝑈によって表されます。 = cos ! " ⟩ |𝟎 + 𝑒𝑥𝑝 𝒾𝜑 sin ! " ⟩ |𝟏 ⟩ |𝜓′ = 𝑈 ⟩ |𝜓 代表的な量⼦演算︓ CX = 1 0 0 1 0 0 0 0 0 0 0 0 0 1 1 0 X = 0 1 1 0 Z = 1 0 0 −1 7
  3. パラメーター付き量⼦計算 量⼦コンピューター パラメーター付き量⼦回路で コスト関数を表現 パラメーター付き量⼦回路で表すもの︓ 分⼦のエネルギー、最適化問題のコスト関数、ニューラルネットワークの重み、など Y X Z 量⼦

    ビット Y軸回転の 回転⾓θ 量⼦ ビット 2量⼦ビットのパラメーター付き回路の例 回転⾓を調整することで ふさわしい量⼦回路に調整していく θ 制御Z 13
  4. VQE (Variational Quantum Eigensolver) ︓変分量⼦固有値ソルバー 1. 分⼦のエネルギー計算を⾏う 2. 試⾏状態|𝜓(𝜃)⟩ 1.

    エネルギーの式 (ハミルトニアン) 3. エネルギー期待値⟨𝑯(𝜃)⟩を計算 4.𝜃を調整して最適化 計算の流れ︓ 1. 問題の分⼦のエネルギー式(ハミル トニアン)𝑯を準備する。 2. パラメーター𝜃の量⼦回路で試⾏状態 ⟩ |𝜓 𝜃 を作る。 3. ⟩ |𝜓 𝜃 に𝑯演算をして測定して、エ ネルギー期待値 𝑯 𝜃 を求める。 4. 𝜃を調整して 2.、3.を繰り返し、エ ネルギーが最⼩になるように最適化 する。 最終的に求まるのは、⾏列𝑯の最⼩の固 有値とその時の固有ベクトル(近似値) 出典︓ Peruzzo, etc https://arxiv.org/pdf/1304.3061.pdf 量⼦コンピューター 古典コンピューター 14
  5. 分⼦のエネルギーを表す式 物理の世界でエネルギーに相当する演算⼦をハミルトニアン と呼びます。 シュレディンガー⽅程式(例︓電⼦のエネルギーを求める式) の左側の演算⼦(⾏列)がハミルトニアン𝐻です。 − ℏ" "# $" $%"

    + 𝑉 ⟩ |𝜓 = E ⟩ |𝜓 ⾃然界では、エネルギーが最⼩の状態で系が安定します。 よって、エネルギーの期待値 𝝍 𝑯|𝝍 の最⼩値を求めることで、 ⾃然をシミュレーションすることができます。 ⾏列 数字 ベクトル ベクトル 15
  6. ⼯夫 2)試⾏状態|𝜓(𝜃)⟩ の簡略化︓ 科学的根拠に基づく⼿法や経験則的⼿法を試す。 または⾃作する。 ⼯夫1)ハミルトニアンを簡略化︓ Qiskitにある様々な変換⽅法を試す ⼯夫 3) 相性の良い最適化アルゴリズム

    を選択する。 課題︓VQEを使って、⽔素化リチウム分⼦の基底状態エネルギーを シミュレーションするための、最⼩の試⾏状態を⾒つけよう。 精度を落とさずに、 最も⼩さい量⼦回路を 作れた⼈が勝ち︕ Li H 元々は12量⼦ビット必要 19
  7. 20

  8. 最⼤カット問題 多くの⼈々が相互に作⽤し影響を及ぼしあうシステム • グラフの頂点︓個⼈ • 頂点間の結合︓個⼈がお互いの購買決定に影響を与え るか • 重み𝑤#$ ︓𝑖

    が試供品を⼿に⼊れた後に、𝑗 が製品を購 ⼊する確率 頂点を⼆つのグループ(試供品をあげる、あげない) に分けるとき、 どの頂点の間の結合をカットすれば、カットされた重み の合計が最⼤になるか︖ マーケティング戦略︓ 個々⼈の影響の度合いが分かっている場合に 無料の試供品をどの⼈に配れば、利益が最⼤になるか︖ 𝐻 = − 1 2 1 !,# 𝑤!,# 1 − 𝑍! 𝑍# (ここで、𝑍! = {1, −1}, 𝑤!,# は重み) ︓最⼩値とそのときの𝑍! の値を求める コスト関数(ハミルトニアン) 𝑤$% 𝑤$& 𝑤&' 𝑤'( 𝑤(% 1 4 3 2 0 22
  9. 最適化ルーチンで パラメーター調整 例)最⼤カット問題 パラメーター付き量⼦回路 コスト関数 コスト計算(測定) 𝐻 = − 1

    2 1 !,# 𝑤!,# 1 − 𝑍! 𝑍# = & ' 𝑍$ 𝑍& + 𝑍& 𝑍' + 𝑍' 𝑍( + 𝑍( 𝑍$ − 4 量⼦ゲートの回転⾓を調整する コスト関数が最も⼩さくなるように 23
  10. 3. パラメーター付き量⼦回路による機械学習 ⼊⼒ データ ニューラルネットによる学習 出⼒ データ … 量⼦回路による学習 ⟩

    |0 ⟩ |𝜓(𝑥, 𝜃) 損失関数 (教師データ との差) 重みの更新 損失関数 (教師データ との差) 期待値 𝜃の更新 𝑈12 (𝑥) 𝑈(𝜃) ⼊⼒ データ ニューラルネットワークでの各ニューロン層への重みを調節する代わりに、 パラメーター付き量⼦回路のパラメーター(回転ゲートの回転⾓)を調整する パラメーター 25
  11. 量⼦回路による学習 ⟩ |0 ⟩ |𝜓(𝑥, 𝜃) 損失関数 (教師データ との差) 期待値

    𝜃の更新 ⼊⼒ データ 𝑈12 (𝑥) 𝑈(𝜃) 計算の流れ︓ 1. 訓練データ𝑥1 を量⼦回路𝑈12 (𝑥) にエン コードして、状態 ⟩ |𝜓12 (𝑥1 ) を作る。 2. パラメーター 𝜃の量⼦回路 𝑈 𝜃 によって 状態 𝑈(𝜃) ⟩ |𝜓12 (𝑥1 ) に変換。 3. 量⼦ビットを測定し期待値を得る。 4. 期待値(訓練出⼒)とモデル出⼒ y(𝑥1 , 𝜃) の差である、損失関数を最⼩化する 𝜃 を 求める。 5. 未知の⼊⼒データ 7 𝑥 を 𝑈12 (7 𝑥) でエン コードし、パラメーター 𝜃∗を実⾏して、 予測 y 7 𝑥, 𝜃∗ を求める。 1. データのエンコード 2. パラメーター 回路の作成 3. 測定 4. 𝜃の最適化 量⼦コンピューター 古典コンピューター 26
  12. 量⼦コンピューター 量⼦回路による学習 ⟩ |0 ⟩ |𝜓(𝑥, 𝜃) 損失関数 (教師データ との差)

    期待値 𝜃の更新 𝑈(𝜃) 1. データのエンコード 2. パラメーター 回路の作成 3. 測定 特徴量マッピング 古典コンピューターでは効率的に表現しにくい⾮線形モデルを 量⼦空間にマッピングすることで、⾼次元の特徴量空間で効率的に表現。 計算の流れ︓ 1. 訓練データ𝑥1 を量⼦回路𝑈12 (𝑥) にエン コードして、状態 ⟩ |𝜓12 (𝑥1 ) を作る。 2. パラメーター 𝜃の量⼦回路 𝑈 𝜃 によって 状態 𝑈(𝜃) ⟩ |𝜓12 (𝑥1 ) に変換。 3. 量⼦ビットを測定し期待値を得る。 4. 期待値(訓練出⼒)とモデル出⼒ y(𝑥1 , 𝜃) の差である、損失関数を最⼩化する 𝜃 を 求める。 5. 未知の⼊⼒データ 7 𝑥 を 𝑈12 (7 𝑥) でエン コードし、パラメーター 𝜃∗を実⾏して、 予測 y 7 𝑥, 𝜃∗ を求める。 古典コンピューター 4. 𝜃の最適化 ⼊⼒ データ 𝑈12 (𝑥) 27
  13. ⟩ |0 ⟩ |𝜓(𝑥, 𝜃) 損失関数 (教師データ との差) 期待値 𝜃の更新

    ⼊⼒ データ 𝑈12 (𝑥) 𝑈(𝜃) 1. データのエンコード 2. パラメーター回路の作成 3. 測定 4. 教師データとの損失関数(交差エントロピー) を最⼩化するように𝜃を最適化 例)量⼦ニューラルネットワーク分類 ZZFeatureMap −1~ + 1のランダムな 𝑥, 𝑦 が 𝑦 = −𝑥 の境界線で分類さ れているデータを学習する。 RZ回転 28
  14. 30

  15. ワークショップ、セッション、および資料は、IBMまたはセッション発表者によって準備され、それぞれ独⾃の⾒解を反映したものです。それらは情報提 供の⽬的のみで提供されており、いかなる参加者に対しても法律的またはその他の指導や助⾔を意図したものではなく、またそのような結果を⽣むもので もありません。本講演資料に含まれている情報については、完全性と正確性を期するよう努⼒しましたが、「現状のまま」提供され、明⽰または暗⽰にか かわらずいかなる保証も伴わないものとします。本講演資料またはその他の資料の使⽤によって、あるいはその他の関連によって、いかなる損害が⽣じた 場合も、IBMは責任を負わないものとします。 本講演資料に含まれている内容は、IBMまたはそのサプライヤーやライセンス交付者からいかなる保証また は表明を引きだすことを意図したものでも、IBMソフトウェアの使⽤を規定する適⽤ライセンス契約の条項を変更することを意図したものでもなく、また そのような結果を⽣むものでもありません。 本講演資料でIBM製品、プログラム、またはサービスに⾔及していても、IBMが営業活動を⾏っているすべての国でそれらが使⽤可能であることを暗⽰す るものではありません。本講演資料で⾔及している製品リリース⽇付や製品機能は、市場機会またはその他の要因に基づいてIBM独⾃の決定権をもってい

    つでも変更できるものとし、いかなる⽅法においても将来の製品または機能が使⽤可能になると確約することを意図したものではありません。本講演資料 に含まれている内容は、参加者が開始する活動によって特定の販売、売上⾼の向上、またはその他の結果が⽣じると述べる、または暗⽰することを意図し たものでも、またそのような結果を⽣むものでもありません。 パフォーマンスは、管理された環境において標準的なIBMベンチマークを使⽤した測定と予 測に基づいています。ユーザーが経験する実際のスループットやパフォーマンスは、ユーザーのジョブ・ストリームにおけるマルチプログラミングの量、 ⼊出⼒構成、ストレージ構成、および処理されるワークロードなどの考慮事項を含む、数多くの要因に応じて変化します。したがって、個々のユーザーが ここで述べられているものと同様の結果を得られると確約するものではありません。 記述されているすべてのお客様事例は、それらのお客様がどのようにIBM製品を使⽤したか、またそれらのお客様が達成した結果の実例として⽰されたも のです。実際の環境コストおよびパフォーマンス特性は、お客様ごとに異なる場合があります。 IBM、IBM ロゴ、ibm.com、 IBM Q、Qiskitは、世界の多くの国で登録されたInternational Business Machines Corporationの商標です。他の製品名および サービス名等は、それぞれIBMまたは各社の商標である場合があります。現時点での IBM の商標リストについては、www.ibm.com/legal/copytrade.shtml をご覧ください。