NISQデバイスでの量子機械学習で注目を集めている分野に量子カーネルがあります。
量子コンピュータに興味を持って量子カーネルにたどり着いたものの、機械学習が専門でないとほぼ必ず同じ感想を持つでしょう。私がそうでした。
そもそもカーネルって何?
量子カーネルはそもそもカーネル法を知らないと理解不能なのですが、カーネルの説明が殆ど無くわからないのは当然です。
これでは量子カーネルについて解説してよと言われても困りますよね。私もイベントで話す機会があり非常に焦りました。
なので皆さんが量子カーネルの意義を解説できるように、私が超速でキャッチアップした内容をご紹介します。
カーネル法は非線形な学習モデルを効率的に構築する
カーネル法は複雑なデータの分類問題に用いられる手法です。まずは機械学習における分類問題の取り組み方について振り返ります。
特徴写像による非線形な学習モデルの構築
分類問題では最終的なアウトプットである学習モデルはデータの分類境界を表現します。最もシンプルでモデルが線形モデルです。
しかし、世の中のデータは単純ではないので線形分離できないデータの学習モデルの構築が課題となります。
例えば下のような同心円データですら、どうやっても線形な学習モデルは作れません。
そこで使われるのが特徴写像という手法です。データの特徴的な量を抽出するためにより高次元空間へ写像して分類境界を探します。
同心円データでは2次元から3次元へ写像することで線形境界が現れます。この境界を逆写像で戻せば求めたい学習モデルが構築できます。
このように線形分離不能なデータを高次元空間へ写像して線形な学習モデルを構築します。
ただし特徴写像は計算コストが非常に高いという問題があります。これでは大規模な問題へスケールすることができません。
カーネルを導入して特徴写像の欠点を補う
計算コストの高い特徴写像の欠点を補うために導入されたのがカーネルという概念です。
カーネルの定義自体は直接特徴写像と関係はなく、次の数学的性質を持つ2点間の類似度を指します。
ここで、特徴写像の内積は必ずカーネルであることが知られています。つまり元の空間で2点間の内積を特徴写像するとカーネルとなります。
\kappa(x^m,x^{m'}) = \langle\phi(x^m), \phi(x^m)\rangle
そしてカーネルの最大の特徴は、基本的な分類問題の学習モデルはカーネルの線形和で表せることです。
f^*(x) = \sum_{m=1}^M\alpha_m \kappa(x, x^m)
これは経験則ではなく表現定理という数学的に導かれる結論です。「基本的な」とつけたのは前提となる分類問題のクラスがあるためです。大抵の問題はこのクラスに該当します。
以上をまとめると、以下の強力な結論が導かれます。
機械学習では以下のカーネルがよく使われます。各々が何らかの特徴写像の内積の計算結果と一致します。
カーネル名 | カーネル |
---|---|
線形カーネル | $\bm{x^T}\bm{x}’$ |
多項式カーネル | $(\bm{x^T}\bm{x}’+c)^p$ |
ガウシアンカーネル | $e^{-\gamma||\bm{x}-\bm{x}’||^2}$ |
シグモイドカーネル | $\tanh (\bm{x^T}\bm{x}’+c)$ |
カーネルを量子コンピュータで計算する
本題の量子カーネルは古典カーネルを量子コンピュータで計算する手法です。
量子計算で行う古典データの量子状態への符号化は、高次元ヒルベルト空間への特徴写像とみなせる点でカーネルの概念と非常に相性が良いです。
量子回路によるデータ符号化は特徴量マップ(feature map)と呼び、古典計算でシミュレーションが難しい回路設計が求められます。
カーネルは特徴量の内積なので、量子状態の内積を計算すれば求めることができます。
\begin{aligned} \kappa(\bm{x^{m}},\bm{x^{m'}}) = |\langle\Phi(\bm{x^{m}})|\Phi(\bm{x^{m'}})\rangle|^2 \\ = |\langle0|^{\otimes N}U^\dagger U|0\rangle^{\otimes N}|^2 \\ \end{aligned}
初期状態$|0\rangle^{\otimes N}$にデータ符号化回路$U^\dagger U$を作用させて測定した際に、$|0\rangle^{\otimes N}$が観測される確率がカーネルの値と一致します。
古典推定が難しい特徴マップ$U$を行えば、量子カーネルは古典手法に対して優位性を持つことが期待されています。
カーネル計算以降は古典機械学習と全く同じ手法で学習モデルを構築します。
まとめ
この記事では量子カーネルについて、カーネルの意味から遡って紹介しました。
量子機械学習の教師あり学習の手法は大きく2つに分けられ、今回は1番目のアプローチを紹介しました。
2番目の手法である量子回路学習についてはこちらの記事で解説しているので併せてご覧ください。
参考文献
Qiskit Textbookの内容の解説はQuantum Tokyoの勉強会でお話したのでテキストの行間を埋めるのに役立てば幸いです。
- 量子コンピュータによる機械学習 / Machine Learning with Quantum Computing
書籍で学習したい方はこちらをおすすめします。内容は難しめですが正しく理解したいという方には非常に有用です。
第2版が出版されていますが洋書のみかつ高額なので、今の所は日本語初版で問題ないです。
量子カーネルの記述は第2版でかなりパワーアップしてはいるので意欲のある方は洋書をご購入ください。
コメント