2021-06-25
ログイン方法などは前回のノートを参照。
- IonQ QPU 実機での実行 (35 min)
- 勾配法のおさらい
- 機械学習のおさらい
- 教師あり学習
- 深層学習
- 量子機械学習
- Harrow-Hassidim-Lloyd (HHL) アルゴリズム [Harrow, Hassidim, and Lloyd (2009)]: 逆行列計算を高速化
- 量子 Support Vector Machine (SVM) [Rebentrost, et al. (2014)]
- 量子線形回帰 [Wiebe, et al. (2012), Schuld, et al. (2016), Wang (2017)].
- NISQ デバイスでの変分量子計算を用いた量子機械学習
- Quantum Neural Network [Gupta, et al. (2002), Farhi, et al. (2018)]
- Amazon Braket での実装 Blog と Jupyter Notebook
- 量子回路学習 [Mitarai, et al. (2018)]
- Quantum Neural Network [Gupta, et al. (2002), Farhi, et al. (2018)]
-
Q1. 前回の演習 PennyLane 0_Getting_started.ipynb で扱った回路の最適解 -1 を与えるパラメータは、RX(0), RY(
$\pi$ ) でした。これが最適であることを、Amazon Braket Python SDK を使って確認しましょう。- ヒント: 2量子ビットの回路を組み実行するだけです。
Observable.Z()
を用いてもよい (使い方は getting_started/1_Running_quantum_circuits_on_simulators.ipynb 参照)。
- ヒント: 2量子ビットの回路を組み実行するだけです。
-
Q2. 最適化されたパラメータ
res.x
を利用して、トレーニングデータセットに入っていない 10-bit 文字列に対する QNN の予測結果を確認してみましょう。そして、平均二乗誤差を計算しましょう。- ヒント: 正解ラベルはビット列のパリティを使うようになっています。
-
Q3 (おまけ). 量子機械学習のアルゴリズムを (既存手法何でもいいので好きに選んで) PennyLane や Amazon Braket Python SDK を使って実装してみよう。既存の実装 (e.g. Qulacs) を PennyLane で書き換える、というのでも大丈夫です。
- 御手洗光祐, 藤井啓祐, "量子コンピュータを用いた変分アルゴリズムと機械学習"
- Scott Aaronson, "Quantum Machine Learning Algorithms: Read the Fine Print"
- Quantum Recurrent Neural Network (QRNN) [arXiv:2012.11242]
- Quantum Native Dojo