このページは機械翻訳を使用して翻訳されました。
翻訳品質のアンケートに 1 分ご協力ください。
MATLABによる多体系量子システム向けテンソル ネットワーク アルゴリズムの強化
著者 Anna Francuz 博士、ウィーン大学
「MATLAB を用いて、私のチームはテンソルネットワークアルゴリズムの微分に関して、より安定で効率的な手法を開発しました。…私たちは、強くもつれた量子システムへの理解を深めるために、このワークフローを積極的に採用しています。」
量子計算研究の指針は、量子優位性の達成です。つまり最適化、暗号化、創薬などの実用的なタスクにおいて、従来のシステムを上回る性能を発揮する量子コンピュータを実証することです。しかし、大規模な量子コンピュータを構築する前に、小規模なテストを実行し、そのテストの結果を理論と比較する必要があります。強くもつれた多体系の量子系に重点を置いたこの研究は、ウィーン大学での私の研究の主な焦点です。
過去 20 年ほどにわたり、テンソル ネットワークは、強くもつれたシステムを研究するための最良のツールの 1 つであることが示されてきました。これは主に、もつれ構造を利用することで計算の複雑さを軽減する方法 (たとえば、量子モンテカルロ法と比較して) によるものです。テンソル ネットワークを使用すると、研究者は最適化手法を使用して量子システムの基底状態を見つけることができ、そこから磁化やその他の観測可能な値を計算してシステムの特性を理解し、その結果を実験データと直接比較することができます。
最近まで、この最適化を実行することは問題がありました。以前のアプローチでは、最適化を推進する微分化プロセスの重要な要素である勾配のおおよその計算に依存していたためです。この欠点により、重大なエラーが発生するだけでなく、最適化でグローバル最小値を見つけられないことも頻繁に発生しました。研究者は自動微分 (AD) に移行することでこれらの欠点のいくつかに対処しましたが、特異値分解 (SVD) を微分する際の発散や、AD をコードに実装する方法に関する基本的な問題など、他の問題も発生しました。
MATLAB®の使用により、私のチームはテンソル ネットワーク アルゴリズムの微分のためのより安定した効率的なアプローチを開発しました。私たちは、この新しい AD 実装を、 MATLABコミュニティ ツールボックスを使用したテンソル ネットワーク収縮とMATLAB Parallel Server™ を使用した高性能コンピューティングという 2 つの重要な要素と組み合わせます。私たちは、強くもつれた量子システムに対する理解を深めるために、このワークフローを積極的に適用しています。
量子物理学におけるMATLABとテンソルネットワーク
Temo Vekua、MathWorks
量子物理学におけるテンソル ネットワークの応用は、ミュンヘンのマックス・プランク量子光学研究所の卓越した物理学者であり量子情報理論の分野のリーダーである Ignacio Cirac 博士によって開拓されました。20 年前、Cirac 博士と Frank Verstraete 博士は、量子多体系を記述するためのテンソル ネットワーク理論を開発しました。Francuz 博士は自身の学問の系譜を Cirac 博士に遡ると述べています。彼女の指導者である Norbert Schuch 博士は、マックス・プランク研究所の博士研究員、ミュンヘン工科大学で Cirac 博士とともに講師を務め、その後ガーヒングのマックス・プランク量子光学研究所で終身在職権を持つ研究グループのリーダーを務め、その後ウィーン大学の教授になりました。
Cirac 博士は、初期のテンソル ネットワーク実装にMATLABを活用しました。彼と約 40 人の研究者からなるチームは、現在もこの技術を使い続けています。「私は主に科学的なプログラミングにMATLABを使用しています」と彼は説明します。「MATLAB は私にとって非常に役立っており、適切に使用すればコンパイル言語と同じくらい効率的です。」MATLABがこの分野で不可欠なツールとして認識されていることは、次のように述べている Francuz 博士の意見と一致しています。「私は自分自身を優れたプログラマーだとは思っていません。むしろ、私はMATLABを使用して、これまでに行われていないテンソル ネットワークの研究を行っている物理学者です。」
低次元 (1D および 2D) の強く相関した量子システムの研究におけるテンソル ネットワークの価値を示した Cirac 博士と彼のチームは現在、この手法を 3D システムに拡張する作業に取り組んでいます。
テンソルネットワークの収縮、自動微分、最適化
量子物理学の研究者がテンソルネットワークを採用する場合、私たちはしばしば並進不変な無限系を扱います。このようなシステムは無限に拡張され、特定の距離だけシフト (平行移動) されたときにどのポイントでも同じ特性を持ちます。これは、量子システムの総エネルギーを表す演算子であるハミルトニアンが、システム全体で周期的な繰り返しまたは均一性を示すことを意味します。したがって、これらの観測可能値のいずれかを計算するときは常に、最初にテンソル ネットワークを扱いやすいものに縮小する必要があります (図 1)。これをワークフローで実行するために、私たちは ncon を使っています。これは、Robert NC Pfeifer、Glen Evenbly とその同僚によって開発され、コミュニティと共有された MATLAB 関数です。ncon 関数を使用すると、テンソル ネットワークを効率的に縮小し、局所観測可能な無限環境を有限値で近似することができます。
図 1. B (右側) に示す正方格子の状態|Ψ(A)⟩は、A (左側) のテンソルの仮想 (黒) インデックスを収縮することによって生成されます。(画像著作権: Francuz, A., Schuch, N., & Vanhecke, B. (2025). Stable and efficient differentiation of tensor network algorithms。Phys.Rev. Res., 7(1), 013237.American Physical Society. https://doi.org/10.1103/PhysRevResearch.7.013237.Licensed under CC BY 4.0.)
テンソルネットワークを MATLAB 上で dlarray オブジェクトとして表現し、それを収縮し終えたら、次のステップは AD を使用してエネルギーの勾配を計算することです。基底状態を求める際には、このエネルギーを最小化します。MATLABで AD アプローチを実装する際に、既存の AD 実装に伴う 3 つの重大な問題、つまりメモリ使用量の増加、勾配計算の不安定性、および勾配の逆伝播の不正確さに対処しました。
最初の問題は、AD に関連するメモリ使用量が多いことでした。一般的な AD アプローチでは、ローカル観測量を効率的に計算するために、反復角転送行列法 (CTM) 手順中に生成される中間オブジェクトを格納するために、大量のメモリが必要です。(CTM は、特に投影されたエンタングルド ペア状態 (PEPS) における 2 次元テンソル ネットワークの収縮を近似するために使用される反復法です。)固定小数点方程式の微分を含む代替アプローチは、このメモリの問題を軽減することができますが、ゲージ固定に関係する複雑な問題を引き起こします。ゲージ固定は、あいまいさを解決することでテンソル表現の一貫性を保証しますが、その信頼性の高い実装は困難でした。私たちはこれらの困難の根本原因を特定し、ゲージを確実に固定するための 2 つの実用的な方法を提案し、それによってメモリの問題を解決しました。
2 番目の重大な問題は、CTM アルゴリズムの重要なコンポーネントである SVD の勾配計算の不安定性でした。この勾配は条件が不十分で、退化が起きて特異値が複数同じになる場合には未定義になります。これらの退化により、入力の小さな変化でも特異ベクトルに不釣り合いに大きな変化が生じる可能性があるため、勾配計算が不安定になる可能性があります。この問題を解決するために、我々は CTM テンソル ネットワーク内の隠れたゲージ対称性を発見し、それを利用しました。このアプローチは従来の AD の範囲を超えましたが、AD フレームワークとの互換性を維持した安定したソリューションを開発することができました。
最後に、切り捨て SVD による勾配の逆伝播にこれまで使用されていた方程式の不正確さに取り組みました。これらの式では、切り捨てられたスペクトルがゼロであると誤って想定されていたため、重要な項が省略され、重大な誤差が生じていました。逆伝播勾配は、一連の操作を通じてパラメータの変更がどのように伝播するかを計算するもので、正確な最適化のためには正確な勾配計算が必要です。切り捨てられたスペクトルを考慮して、切り捨てられた SVD の修正された勾配定式化を導出しました。この修正により、既存の AD コードにわずかな変更を加えるだけで、精度が大幅に向上しました。
MATLABで AD の改善を実装した後、量子システムの基底状態を見つけるためにエネルギーを最小化するなどの最適化タスクで AD 実装によって生成された勾配を使用する準備が整いました。ワークフローのこの部分では、Optimization Toolbox™ の fminunc 関数に基づくメモリ制限 Broyden-Fletcher-Goldfarb-Shanno (L-BFGS) アルゴリズムを使用し、私たちが作成した勾配計算用のカスタム関数を渡して実行します (図2)。
図 2. 2 つの異なる勾配を示す最適化プロット。従来の AD からの勾配 (オレンジ色の四角) を使用すると、最適化はすぐに行き詰まります。最適化は、改善された AD 実装 (緑色の円) からの勾配を使用して最適化を再開することにより、グローバル最小値に収束します。(画像著作権: Francuz, A., Schuch, N., & Vanhecke, B. (2025). Stable and efficient differentiation of tensor network algorithms.Phys.Rev. Res., 7(1), 013237.American Physical Society. https://doi.org/10.1103/PhysRevResearch.7.013237.Licensed under CC BY 4.0.)
Austrian Scientific Computing での MATLAB による並列計算
相図は、時間を含むさまざまなパラメータの関数としてシステムのさまざまな相 (状態)を視覚的に表現するため、量子多体系の研究において重要なツールです。相図を作成するには、ハミルトニアンのパラメータを特定の範囲で変化させ、各パラメータ値の基底状態を計算する必要があります。これにより、系の振る舞いが突然変化する相転移を特定できます。たとえば、超伝導状態から絶縁状態へと変化する場合などです。
1 台のラップトップで多数のパラメータ値の基底状態を順番に計算すると、非常に時間がかかる可能性があり、メモリ要件が標準的なラップトップで提供されるメモリを超えている場合が多いため、 MATLAB Parallel Server™ を使用して Austrian Scientific Computing (ASC) でこの処理を実行する予定です。ASC には、合計 37,920 個のコアを持つ 790 個のノードを持つ VSC-4 や、合計 98,560 個のコアを持つ 710 個のノードを持つ VSC-5 など、オーストリアで最も強力なスーパーコンピューターが集まっています。
まず最初に、 MATLABを使用した並列コンピューティングと ASC の HPC システムでのMATLABの使用について説明する、 MathWorks のエンジニアが開催したワークショップに参加しました。ASC 上で並列基底状態計算を実行することで、私たちのチームは仮想量子システムの特性を迅速に計算し、それを実験的に測定された実際のシステムの特性と直接比較できるようになります。
実際、私たちは現在、ASC 上のMATLAB Parallel Serverを使用して、256 量子ビット (キュービット) で動作できるプログラム可能な量子シミュレータの相図を研究することを計画しています。このシステムや同様のシステムを 2D テンソル ネットワークで調査することが、私たちの継続的な研究の焦点です。
公開年 2025