演算子バックプロパゲーション (OBP)
演算子バックプロパゲーション(OBP)は、より多くの演算子の測定値を犠牲にして、その端から演算を切り捨てることによって回路の深さを減らす技術である。 演算子バックプロパゲーションを実行する方法はいくつかあるが、本パッケージではClifford摂動理論 [1] に基づいた方法を使用する。
回路を通して演算子をさらに伝搬させると、測定すべき観測値のサイズは指数関数的に大きくなる。 この結果、古典的リソースと量子リソースの両方のオーバーヘッドが発生する。 しかし、いくつかの回路では、結果として得られる追加のパウリ観測量の分布は、最悪の場合の指数関数スケーリングよりも集中する。 このことは、量子オーバヘッドを削減するために、係数の小さい観測値のいくつかの項を切り捨てることができることを意味している。 そうすることで発生する誤差をコントロールし、精度と効率の適切なトレードオフを見つけることができる。
インスタレーション
OBPパッケージは、 PyPI、またはソースからビルドするという2つの方法でインストールできる。 パッケージの依存関係を確実に分離するために、これらのパッケージを仮想環境にインストールすることを検討してください。
からインストールする。 PyPI
qiskit-addon-obp パッケージをインストールする最も簡単な方法は、 PyPI を使うことである。
pip install qiskit-addon-obpソースからビルドする
このパッケージに貢献したいユーザーや手動でインストールしたいユーザーは、まずリポジトリをクローンしてください:
git clone [email protected]:Qiskit/qiskit-addon-obp.git
```_
and install the package via `pip`. The repository also contains example notebooks. If you plan on developing in the repository, install the `dev` dependencies.
Adjust the options to suit your needs:
```bash
pip install tox notebook -e '.[notebook-dependencies, dev]'理論的背景
本パッケージに実装されているOBP手順は、 [1] で詳しく説明されている。 Estimatorプリミティブを使用する場合、量子ワークロードの出力は、QPUを使用して準備された状態に関する1つ以上の期待値 。 このセクションでは、その手順を要約する。
まず、観測値 の期待値測定を、ある初期状態 と量子回路 の観点から書くことから始める:
この問題を古典資源と量子資源の両方に分散させるために、回路 を2つのサブ回路、 と に分割し、回路 を古典的にシミュレーションし、次に回路 を量子ハードウェア上で実行し、古典的シミュレーションの結果を用いて観測値 の測定を再構築する。
サブサーキット 、古典的にシミュレート可能なものを選択し、期待値を計算する
これは、回路 を通して進化した初期演算子 のバージョンである。 が決定されると、量子ワークロードが準備され、状態 が開始され、回路 が適用され、期待値 が測定される。と書けば、 を測定するのと等価であることがわかる:
最後に、期待値 を測定するためには、それがパウリ文字列の和に分解可能である必要がある
ここで、 は分解の実係数であり、 は、 、 、 、 の演算子からなるパウリ文字列である。 これにより、 の期待値を次のようにして再構築することができる
用語の切り捨て
この方式は、 の必要な回路深度、量子ハードウェア上での回路実行回数、 の計算に必要な古典計算リソースの量のトレードオフを提供します。一般に、回路をバックプロパゲートすると、測定するパウリ文字列の数とエラー軽減のオーバヘッドは指数関数的に増加します( のシミュレーションに必要な古典的リソースと同様)。
幸いなことに、 の分解には、かなり小さい係数が含まれることが多く、 の再構成に使われる最終測定値から、それほど誤差を生じることなく切り捨てることができる。 qiskit-addon-obp パッケージにはエラーバジェットを指定する機能があり、あるエラー許容範囲内で切り捨てられる用語を自動的に検索することができる。
クリフォード摂動論
最後に、 qiskit-addon-obp パッケージは、クリフォード摂動論に基づく演算子バックプロパゲーションにアプローチする。 この方法には、様々なゲートをバックプロパゲートすることによって発生するオーバーヘッドが、 の非クリフォード性(すなわち、U Cのうち非クリフォード命令で構成される部分がどれだけあるか)に応じてスケールするという利点がある。
OBPへのこのアプローチは、シミュレーション回路( )をスライスに分割することから始まる:
ここで、 はスライスの総数を表し、 は回路 の単一のスライスを表す。これらのスライスはそれぞれ、逆伝播演算子 を測定するために順番に解析的に適用される。スライスがクリフォード演算か非クリフォード演算かによって、全体の和のサイズに寄与する場合と寄与しない場合がある。 エラーバジェットが割り当てられている場合、各スライスを適用する間に切り捨てが発生する。
次のステップ
- OBPを始めよう。
- Qiskit Runtime で利用可能なエラー軽減テクニックに精通する。
- OBP を使用して期待値を向上させる方法に関するチュートリアルをお読みください。
参考文献
[1] Fuller, Bryce, et al. "Improved Quantum Computation using Operator Backpropagation" arXiv:2502.01897 [quant-ph] (2025)。