Reading:
量子コンピュータでの機械学習が新規参入にちょうど良さそうな理由3つ
   

量子コンピュータでの機械学習が新規参入にちょうど良さそうな理由3つ

2020.09.02

はじめに

六年くらいベンチャーで量子コンピュータをやっていますが、なかなか業界に新規参入者が増えません。理由は、ハードウェアの開発がまだ黎明期なので、あまりアプリケーションのパフォーマンスが出ないからなんですが、それでも量子コンピュータを始めて見たいという人向けのアプリケーションとして機械学習は意外といいのではないかと思った理由を書いて見ます。

量子機械学習とは?

量子コンピュータ上で量子回路を作って、データを入れて学習させるような通常の機械学習と同じようなものですが、利用するのが量子コンピュータというところが違います。

通常の機械学習との違いは?

これはずばり、量子回路と呼ばれるものを使うところでしょう。量子回路は0状態で初期化され、そこに量子ゲートというものを置いていき、状態ベクトルと呼ばれるものを操作します。

課題は?

それは既存の機械学習よりも優れているという証拠が見つかっていない上、入力するデータなどに通常のデータを入れた方がいいのか、量子状態を入れた方がいいのかなど、まだ詳細がよくわかっていません。なので試行錯誤してます。

でもやりたい人

でもやはり量子コンピュータやって見たい人はいると思います。以前記事で、

【2020年永久保存版】量子コンピュータ未経験から独学で量子プログラマーになる5つの方法
https://blueqat.com/?p=1434

を書きました。基本的には分野とプラットフォームを絞ることで効率的に学ぶことができます。では、量子機械学習はどうすればいいでしょうか。量子機械学習を始める利点や理由を3つ書いて見ました。

利点1:他のアルゴリズムよりは専門知識不要

量子機械学習の良いところは、主に作業が「パラメータの最適化」となっています。通常の量子コンピュータのアプリケーションはハミルトニアンを作ったり、ansatzを作ったりとある程度量子の専門知識が必要となります。

しかし量子機械学習では、多くのゲートを覚えるというよりも、パラメータ付きの回路を満遍なく配置したりモデルを作って、そのパラメータを力づくで機械学習で学習させてしまいます。そのため、重ね合わせ回路やもつれ回路なども教科書に載っている内容とは全く異なり、任意回転ゲートと2量子ビットゲートと呼ばれるものを機械的に配置して、それを無理やり最適化します。

また、ハミルトニアンとか期待値とか変分原理とか余計なことを覚えなくても、損失関数で全て処理してしまうので比較的目的ははっきりしています。そのため、量子化学計算や組合せ最適化計算よりも相対的に覚えることが少なめです。

利点2:プラットフォームが限られる

量子機械学習は難易度や計算時間もかなりかかりますが、それを実行できるプラットフォームは比較的限られています。現時点で量子機械学習ができるのはtensorflow quantumやpennylaneなどの特定のフレームワークのため、かなり選択肢が限られているため、通常の量子計算よりも悩みが少なくなります。また、それらのフレームワークにはツールがかなり充実しているため、ツールの使いこなしによって覚えられる可能性が高くなります。

利点3:実機をあまり使わない

これはちょっと変な話ですが、量子機械学習にはあまり実機の本物の量子コンピュータを使いません。量子機械学習のモデルは複雑なものが多く、実行が難しいため、実際の量子コンピュータでは大規模なものは実行できません。それは現在の量子コンピュータの性能の制約からくるものです。将来的な活用を見込んで、tensorflowなどではほぼGPUやCPUなどのシミュレーションで済ましてしまっています。実機のマシンを使うにはそれなりにコツが必要ですが、そのようなものをせずに済ませられるのはある程度幸せなことです。

まだ研究用途

用途としてはまだまだ基礎研究用途になると思いますので、大学や研究所などで論文を書くなどの用途が一番良いでしょう。また、量子機械学習の考え方から新しい量子インスパイアードなどの分野開拓につながるかもしれませんので、そのような先行投資となると思います。

是非頑張りましょう!

divider graphic