最終更新日:
最近になって耳にするようになった量子コンピュータが機械学習に与える影響を考察するにあたっては、この技術をデータとアルゴリズムという2つの構成要素に分けたうえで、「量子機械学習」のアーキテクチャを検討する必要があります。こうしたアーキテクチャは、古典的機械学習のアーキテクチャを構成するデータとアルゴリズムとの関係に応じて、以下のような4種類が考えられます。
- データとアルゴリズムの両方が古典的な機械学習
- データは古典的なものを使い、アルゴリズムは量子的なものを使う機械学習
- データは量子的なものを使い、アルゴリズムは古典的なものを使う機械学習
- データとアルゴリズムの両方が量子的な機械学習
①のアーキテクチャは既存の機械学習と同じものなので除外したうえで、Metwalli氏は②から④から生じる可能性のある結果を考察します。古典的機械学習とのハイブリッドなアーキテクチャである②と③に関しては、処理の高速化が期待できるものも指数関数的な加速ではなく限定的なものにとどまります。対して純粋に量子的なアーキテクチャである④には、古典的機械学習では発見できなかった未知のデータ分布をモデル化できる可能性があります。
以上の考察をふまえて、量子コンピュータの研究開発は古典的機械学習の高速化よりも、古典的機械学習では不可能だったデータ分析の実現を目指して進めるべき、とMetwalli氏は主張します。
同氏の主張は、量子機械学習が実用化された場合、古典的機械学習とは異なる研究分野と市場が誕生することを示唆していると言えるでしょう。
なお、以下の記事本文はSara A. Metwalli氏に直接コンタクトをとり、翻訳許可を頂いたうえで翻訳したものです。また、翻訳記事の内容は同氏の見解であり、特定の国や地域ならび組織や団体を代表するものではなく、翻訳者およびAINOW編集部の主義主張を表明したものでもありません。
目次
量子技術は機械学習の次の進歩となりうるのか?
量子コンピューティングは、今日のコンピュータの能力を全く新しいレベルに引き上げられる新しいコンピューティングモデルとして、ここ数年で登場した。すべてのテクノロジー関連メディアは、この分野の小さいながらも可能性のある進歩のすべてを報道した。この分野にとっては魅力的な時代になったが、分野自体は大きな謎に包まれたままである。
量子コンピューティングが語られる前提として、この技術はサイバーセキュリティから医療アプリ、さらには機械学習にいたるまで、今日の世界で技術的に必要不可欠とされる様々な応用分野で強みとなりうることが指摘できる。応用範囲の広さが、この分野が注目されている大きな要因のひとつとなっているのだ。
しかし、
量子はどのようにしてデータサイエンスの分野を前進させることができるのだろうか。古典的なコンピュータが提供できなかったものは何なのだろうか。
最近になって、「量子機械学習」や「QML(Quantum Machine Learning:量子機械学習の略称)」という言葉を耳にしたことがあるのではないだろうか。しかし、実際には量子とは何なのだろうか。
この記事は、量子機械学習とは何か、そして量子技術が古典的な機械学習を強化・改善する可能性のある方法について、幾ばくかの光を当てることを目的としている。
量子機械学習とは?
まずは一歩引いて、機械学習をより広い視点から見てみよう。機械学習は、データとアルゴリズムの2つから構成されている。それでは量子機械学習とは、データのことを指すのか、アルゴリズムのことを指すのか、それともその両方を指すのだろうか。
以上の問いかけは、「量子機械学習とは何か」という根本的な疑問に関わっている。この問いに答えるために、下の図を使って考えてみよう。
量子機械学習は、4つのタイプのシナリオをカバーするために使用される用語である。
- 古典的なデータを使う量子コンピューティングにインスパイアされた古典的アルゴリズム:tensorネットワークや量子化されていないレコメンデーションシステムのアルゴリズムなど。
- 量子データに応用された古典的アルゴリズム:例えば量子状態にもとづいたニューラルネットワークやパルスシーケンスの最適化など。
- 古典的データに応用された量子的アルゴリズム:量子最適化アルゴリズムや古典的データの量子的分類など。
- 量子データに応用された量子的アルゴリズム:量子信号処理や量子ハードウェアモデリングなど。
翻訳者が作成
量子機械学習のアーキテクチャは、処理するデータが古典的あるいは量子的かの2種類、アルゴリズムが古典的あるいは量子的かの2種類の組み合わせから成るので、合計で4種類が想定できる。
量子機械学習のうちデータもアルゴリズムも古典的なタイプ(図の上段左)は、実質的に既存の古典的機械学習と同義である。
データもアルゴリズムも古典的な組み合わせを除いた3種類のタイプについて、次節「量子は機械学習をどのように改善する可能性があるのか?」で検討される。検討される組み合わせと見出しの対応関係は、以下の通り。
古典的データを量子的アルゴリズムで処理するタイプ(図の下段左):見出し「量子コンピュータで線形代数のサブルーチンを高速化できれば、機械学習を高速化できる」で検討
量子データを古典的アルゴリズムで処理するタイプ(図の上段右):見出し「量子的並列性はモデルをより速く訓練するのに役立つ」で検討
量子データを量子的アルゴリズムで処理するタイプ(図の下段右):見出し「量子コンピュータは、古典的なコンピュータにはできない方法で、高度に相関した分布をモデル化することができる」で検討
量子は機械学習をどのように改善する可能性があるのか?
量子コンピューティングが機械学習をより良くする方法については、さまざまな理論がある。以下では、よく議論される3つを紹介する。
1.量子コンピュータで線形代数のサブルーチンを高速化できれば、機械学習を高速化できる
線形代数が機械学習の中核であることは、誰もが知っていることだ。特に、BLAS(Basic Linear Algebra Subroutines)と呼ばれる線形代数の応用群は、すべての機械学習アルゴリズムの基礎となっている。これらのサブルーチンには、行列の乗算、フーリエ変換、線形系の解法などがある。
これらのサブルーチンを量子コンピュータ上で実行すると、指数関数的な高速化が得られる。しかし、高速化に取りかかるには、量子データを保持し、量子プロセッサと通信する量子メモリが必要となり、これらがなければ実現しないことに言及されない。こうした条件が揃った時にのみ、指数関数的な高速化が可能となる。
残念ながら、以上のような条件はまだ実現しそうにない。実際、量子メモリは現在における複雑な研究テーマのひとつであり、量子メモリが作れるかどうか、あるいはいつ作れるのかに関する具体的なバージョンはない。
それでは、量子メモリを使った機械学習の高速化はまったく実現できないのだろうか。
現在、私たちが研究している量子コンピュータは純粋な量子システムではない。データは古典的で、古典的なメモリに保存されている。保存されたデータは量子プロセッサと交信する。古典的なメモリと量子プロセッサのあいだの通信が、指数関数的な高速化に到達できない原因となっている。
量子プロセッサと交信する古典的メモリを使って線形代数アプリを使用した時の特徴にもとづけば、純粋に古典的な機械学習のアプローチより(指数関数的に早いわけでははないが)ある種の高速化を達成できる。
2.量子的並列性はモデルをより速く訓練するのに役立つ
量子コンピュータの主な動力源の一つは 量子重ね合わせを行う能力である。この能力は、様々な量子状態を同時に扱えるようにする。
ここで議論したいのは、もし可能なすべての訓練セットが重ね合わされた状態でモデルを訓練できれば、訓練プロセスはより速く、より効率的になるかも知れない、ということだ。
ここでいう「効率的」とは、次の2つのうちの1つを意味する。
- モデルを訓練するのに必要なデータが指数関数的に少なくなる->こうした効率化は、研究者によって不確かであることがわかった(※訳註2)。しかし、場合によっては線形計算の高速化が可能な場合もある。
- モデルを高速に学習する->この主張は、グローバーのアルゴリズムのような古典的なアルゴリズムを量子化した結果生じる高速化にもとづいたものである(※訳註3)。その結果は、せいぜい二次までの高速化であり、指数関数的なものではない。
古典的な機械学習アルゴリズムを量子コンピューティングで実行しようとした場合、私が目指すことができる最高のものは二次の高速化だ。それ以上の高速化が必要ならば、アルゴリズムも変更する必要がある。
3.量子コンピュータは、古典的なコンピュータにはできない方法で、高度に相関した分布をモデル化できる
以上の主張は100%真実だ。しかし、確かに正しいのだが最近の研究結果では、量子的に生成されたモデルでは量子的な優位性を得るには不十分であることが証明された。さらには、量子的に生成されたデータセットを使っても、いくつかの古典的なモデルが量子的なそれを凌駕する可能性が示された。
それでは、量子は機械学習を改善できるかどうか?
簡単に言えば、YESである。しかし、指数関数的な高速化をすぐに期待すべきではない。完全に機能する量子コンピュータが作られたら、上記の議論を再検討して、その妥当性を再検証できるかも知れない。
今のところ、量子機械学習の追求は、既存の機械学習アルゴリズムの高速化を目指すためよりも、より良い問題を生み出すのに役立つ、根本的に新しいアルゴリズムを発見するために行うべきである。
私の考えでは、量子技術は同じものを新しい角度から見るようなものではなく、新しいものを見つける方法を教えるようなものなのだ。
結論
量子コンピューティングは、現在のテクノロジーのあり方を改善して再編成する可能性を大いに秘めている。それは決して新しい分野ではなく、コンピューティングそのものと同じくらい古いとも言えるが、ここ数年で魅力的になり、多くの注目を集めている。
そうは言っても、最近では、量子技術は純粋な理論から実践に移行している。その移行こそが、メディアと研究現場の両方から急に注目を浴びるようになった理由だ。さらには量子の歴史の中で初めて、誰でも量子マシンにアクセスし、そのマシン上で小規模から中規模のプログラムを実行できるようになった。
量子技術による改善が期待できる分野のひとつに機械学習がある。しかし、それが実際にどのように役立つのかは、あまり明らかではない。
この記事では、量子が機械学習を改善すると考えられる方法と、そうした方法が有効かつ現実的かどうかを調べてみた。
おそらく量子コンピューティングはまだそれほど強力ではなく、現在のところ機械学習アプリを実行できない。それでも、未来は明るく、機械学習だけでなく、より多くの分野に大いなる驚きと進歩をもたらしてくれるだろう。
原文
『How Quantum Computing May Benefit Machine Learning』
著者
Sara A. Metwalli
翻訳
吉本幸記(フリーライター、JDLA Deep Learning for GENERAL 2019 #1取得)
編集
おざけん