よろずQCのZen問答: 世界規模でみた現在の量子コンピューター市場を端的にまとめる (その3-2:ソフト)
これは、3-1からの続きだ。なかなか、長さを調節できないので、苦労している。アナリストとして数多くのコンファレンスに参加したが、未だに真似ができないことがある。記事を大量に製造する記者たちは最前列に陣取り、real timeで壇上で行われている発表やpanelの議論を機関銃のような音をたてて、キーボードを叩き文字にしていく。その分野の記者なんだから、それなりの知見はあるのだろうけど、新しいネタや技術を聞いてそれを一瞬にして理解して文字にできるのだろうかと訝ったものだ。メディアの控室では、そういった記者間の話を聞いていると、「このsessionはあまり技術的すぎるからパスだ」という話もあった。なるほど、そういうことか。。。。と、いういつもながらの、うだうだを書いてるから冗長になる。さて本題。
時代、応用分野、それに応じたQCのAlgorithm
湊氏の量子コンピュータの最新トレンド。4つのハード、4つのソフト、4つのクラウド。これだけ覚えればOKのなかのソフトの部分を再び貼っておく。(ハードとcloudの部分も参照)。ところで、この湊氏のブログのビデオ版がバズっている。(これを書いている段階で2,300を超えている。このネタでここまで行くか!!しかし、ざっとQC(量子コンピュータ)市場の全貌を簡単に掴めるので、伸びて当たり前か)。新しい分野をリサーチし始めるとき、全貌を詳細なしで見渡せる解説があると本当に助かる。今回のQC algorithmなどはその最たるもので、詳細の説明の前にまず何をしていて、なぜQC上で実行すると既存の古典コンピュータより速く実行できるのか。また、完全なQCがない中、どうやってNISQの上でそれを補っているのか。という、直感的な説明がない。複雑な数式を振り回されても、全くわからない。このblogでは数式は一切使用せず、あまり技術的な言葉も使用せずに解説してみる。専門家から見れば、ゴミかもしれないが。
ここで断っておくと、湊氏の発言や発信は、日本だけでなく世界的に通じる知見をお持ちなので、引用している。が、全てそのままと言うわけではなくて、筆者なりに他のソースもあたり、事実を確かめている。何せ、QCはまだ新しい分野なので(これは嘘だけど)、全てが定まっているわけではなくて、専門家の間でも微妙な温度差がある場合がある。湊氏が私見で予想している部分についてはそのように表記する。ただ、次のことは強調しておきたい。湊氏の大きな貢献は、莫大に広いQCの領域で、実際にビジネスをしている観点から、非常に絞った市場の様子を端的に発信して頂けていることである。
QCのalgorithmで大切なことは、くどいが繰り返す。Qunasysが提供するTutorialにに次のように書いてある。
量子アルゴリズムの初歩を学んでいく。まず、量子アルゴリズムは、この数年で実現される量子コンピュータ=「NISQデバイス」で実行可能(と思われる)なアルゴリズムと、十年後以降に実現されるであろう誤り訂正ありの真の量子コンピュータでしか実行が難しいアルゴリズムとの2種類に大別されることを見る
第2章 量子アルゴリズム入門の冒頭より
そうなると、今アクセスできるNISQ上で動くalgorithmを理解することが大切だ。これがなかなか難しい。ご心配なく、このblogでは数式を振り回してドヤ顔するようなケチな真似はしない。しかし、最低限なぜそのalgorithmがある領域に適用できるのか、直感でわかる程度に解説。(しかし、一生懸命そのようなalgorithmを理解しても、現実にはあまり適用できることがないとも聞いている。)
QCのAlgorithm、少しだけ詳細、詳細は違うBloggerで
湊氏の上の図を最初に見た時は、気づかなかったが、実に良く考えられて作成されている。まず、色の使い方。FTQC用のalgorithmは青で、NISQ用のalgorithはオレンジで区別されている。FTQCはFault-Tolerant QCで、内部で起こるエラーを自動的に処理して動作する完璧なもので大規模に拡張も可能。NISQはNoisy Intermediate-Scale Quantumの略でCaltechのJohn Preskill教授によって最初に名付けらた。内部で起こるエラーを実時間で処理できずに短時間のみに正しく動作できる小型のQCと定義される。なんとも、面倒くさい。今ある古典コンピュータがこれほど発展しているのに、今のQCは我々を何十年も前の古典コンピュータの黎明時期のような経験をさせてくれる。それも残念なことにFTQCが現実のものとなった頃(10-20年後)は筆者には必要がなくなっていると言うこと。
時期に関しては、まず一番左の列の1985年から2020年まで。実機が存在せず理論しかなく、計算は紙の上のみの時期。それで当然だけどalgorithmは全てFTQC用で色は青くなっている。なぜなら、理論的に考案されたalgorithmは全てFTQCを想定しているからだ。この時代のalgorithmには触れない。その次の時期は2015年から2020年頃まで、この時期にはIBMとGoogleが最初の実機を発表で競っていた時期。これは、NISQ時代と呼べる。algorithmは一部を除いてオレンジ色で。そして、それに続く2020年そして今年2021年から将来に。まだ完全ではないが、NISQからFTQCに繋がっていく時期だ。再びalgorithmは一部を除いて青になっている。
また、それぞれのアルゴリズムが適用される分野も示されている。量子化学、組み合わせ最適、金融、機械学習。この分野や他にQCが適用される分野については、このblogの3-1を参照。
ここで気になることが1つ。algorithmの名前に日本語と英語が混じっているので、簡単な名前の対応を欄外にあげておく。(そんなことを言えば、筆者だって日本語、英語、カタカナの混在でしかもそれに一貫性がない。まあ、それを持ち味として誤魔化しておく。)
日本語と英語のAlgorithmの名前
VQE (Variational Quantum Eigensolver): | 変分量子固有値解方(ソルバー) |
OAOA (Quantum Approximate Optimization Algorithm): | 量子近似最適推定 |
QPE (Quantum Phase Estimation): | 量子位相推定 |
QAE (Quantum Amplitude Estimation): | 量子振幅推定 |
QAA (Quantum Amplitude Amplifier): | 量子振幅増幅 |
QATE (Quantum Amplitude Time Estimation): | 量子振幅時間推定 |
QTE (Quantum Time Estimation): | 量子時間発展 |
ATE (Adiabatic Time Evolution): | 断熱時間発展 |
QML (Quantum Machine Learning): | 量子機械学習 |
QCBM (Quantum Circuit Born Machine): | 量子回路ボルンマシン |
それでは、NISQでよく出てくるVQE, QAOA, QMLとそれぞれのFTQC版について数式を使わずに簡単に触れてみる。最初にVQEとそれが改善されてFTQC用になったQPE.
VQE (Variational Quantum Eigen Solver、変分量子固有値解法)とQPE(Quantum Phase Estimation、量子位相推定)
VQEは2014年にAlberto Peruzzo博士等によって最初に提案された。湊氏のblogにもVQEを扱ったものは複数あるが、なかなかバックグラウンドなしでは理解しにくい。そこで、ここでは、数式を一切用いず直感的に。
最初に何故、QCが古典コンピュータに比べて化学計算に向いているかと言うと。ここで言う重ね合わせは、量子ビット(Qubit)は1と0の値をある確率で取れるということである。まあ、この辺は深く考えずにそういうものだと理解して置かないと夜寝れなくなる。
さて、実は自然界でも特に分子のような微視的なところには、そのような重ね合わせ状態が実現していることが多くある。自然界は量子力学によって動いているのだから当然といえば当然である。分子や物質の性質を計算によって正確に明らかにしようとするならば、この重ね合わせ状態をいかに表現するかということが鍵だ。上の例のように、古典コンピュータによってこれを表現するアプローチでは、分子に含まれる粒子の数が増えれば、メモリの使用量が爆発的に増えて破綻する。しかし量子コンピュータを使えば、このことは問題にならない。このような事実から、量子コンピュータによる物質解析の高速化が世界で盛んに研究されている。
Qunasysの御手洗氏のBlog、量子コンピュータで物質をシミュレートする
湊氏共著の最新のIBM Quantumで学ぶ量子コンピュータの191ページを、極力技術色を払拭して平たく言うと、自然界では多くの場合エネルギー状態が最小になる時が一番安定している。で、あるから自然界の問題(例えば創薬)の最適解を求めることは、それを物理的に解析して、エネルギーが最小になる解を求めることと同じになる。それを、数学の問題として解き明かせば最適の解を求めることができる。その際、直接最適解を求めることもできるが計算をするインフラ(コンピュータそのもの)の能力によっては、直接できずに(時間がかかりすぎるため、インフラが精度を保証できない)、ある仮説(または試行)から出発して徐々に(一回の計算の時間が微小で、インフラが精度を保証できるレベル)最適の解に迫っていく方法がある。前者はFTQC用のalgorithmで後者はNISQ用の解である
それぞれのalgorithm(VQEとQPE)の詳細はこのblogの範囲を超えるので、ここでは記さない。しかし、もう少し感触を得たい読書は囲みを参照。
VQEとQPEの簡単な説明
簡単にVQEの仕組みを述べると、非常に現存する機械学習のやり方と似ている。これは、QCと古典コンピュータのhybridで表される。化学計算は、化学的な現象をコンピュータでシミュレートするなら、量子の領域を量子の仕組みで動作するQCを使用して、それ以外は既に効率の良いalgorithmが存在する古典コンピュータを使用するhybrid型だ。以下のように簡単に表せる。以下の図は湊氏のblogから引用。
ここで、Ansatzは量子回路で、機械学習で使用されるニューロネットと(Neural Network)同じものである。Ansatzとは、別名パラメータ付き量子回路(parametrized quantum circuit, PQC)と呼ばれるもので、パラメターを指定することで、量子回路の中身を変更させることができるものだ。(上のページ190を参照)。ごく簡単に説明すると、初期状態を設定したのち、QCで計算するそして入手出来た回答を見てそれを古典コンピュータで最適化する(パラメターを変更させる)。これには機械学習で使われる最急降下法(gradient decent)などが使われる。つまり、求めたい結果が出るまで、このループを回すわけだ。VQEはNISQ時代で化学計算用に使用される。その場合は上の図で化学計算用のansatzを利用する。ansatzは現在までに知られているもの、自分の経験から得られるものなどで、仮説とも試行関数とも呼ばれる。
QPEを図で表すと
複数回計算は繰り返されるが、古典コンピュータの助けは必要としない。
VQEやQPEは量子化学計算に適すると湊氏は述べている。化学反応は莫大な数の分子・原子・電子状態を精密に精査して最適解を求める。QCはそう言う分野に適している。大阪大学からspinoffしたQunasysはこの分野に重きを置いて活動している。この御手洗氏の記事も参考になる。
化学計算にフォーカスし、パートナーとなる企業様と連携しながら、既存のテクノロジーで解決が困難であった社会および産業の課題を解決します。
QunasysのServiceの部分
なお、VQEとQPEのもっと詳細は詳細VQEと詳細QPEを参照。
その3-3に続く。