common.title

Docs
Quantum Circuit
TYTAN CLOUD

Quantum Apps

Quantum Business Magazine


Overview
Contact
Event
Project
Research

Terms of service (Web service)

Terms of service (Quantum and ML Cloud service)

Privacy policy


Sign in
Sign up
common.title

転送行列を用いたテンソル縮約による、行列計算のパラメータ圧縮について

97047fc1-9c15-48d5-94b2-18720c4f75d8

2023/04/12 13:54

インターン生の末田光輝と申します。

量子計算から着想をえたテンソルの変形による計算の簡略化について調査を行いました。

東京大学の第3回量子ソフトウェアハンズオンにて、秋山進一郎先生よりご紹介のあった、3量子ビット回路のCCZゲートにおける8×8行列の演算について、高校数学レベルで分かるよう、検証したいと思います。

画像の赤枠部は、秋山先生のスライドの抜粋です。

赤枠部抜粋の出典:joint-seminar/テンソルネットワークを用いた量子回路シミュレーション.pdf at main · utokyo-qsw/joint-seminar (github.com)

まず、CCZゲートについては、次のような量子回路では8×8の行列に表すことができます。

これをテンソルL、C、Rの3種類の行列の積(MPS)に分解します。

ここでのテンソルは、複数の2×2の行列がある順序にしたがって、集まったものとします。

一般的に、テンソルの縮約の仕方は幾つかあるそうですが、下記のスライドの順番で変形を行ったものとします。

テンソルL、C、Rは、それぞれ次のように表すことができます。

さて、ここでの右肩に文字のある行列を転送行列と定義し、肩にかかった数のように、時間方向の量子ビットの状態を変化させるものとします。

この転送行列を意識した、テンソルの導出が肝でパラメータの有効な成分を全て保持したまま、パラメータの数が減るのです。

これについては、量子計算から着想を得たエンタングルメントエントロピー(E.E.)を用いて、定量的に妥当性を議論できます。

東京大学の同じ寄付講座のスライドである「機械学習におけるテンソルネットワークの活用」原田健自先生 著の抜粋、青枠のスライドを見てみましょう。

青枠部抜粋の出典 https://qsw.phys.s.u-tokyo.ac.jp/assets/files/20211207_harada.pdf

下のスライドの定義に従って、CCZゲートのテンソルネットワークのE.E.を見積もってみます。

MPS後のテンソルについては、2×2の行列を2種類、組み合わせたものが最大なので、特異値は最大4あります。

つまり、E.Eは最大ln(4)あることになります。・・・①

上のスライドのように少なくとも2自由度の1本の腕でテンソルネットワークを構成した場合、E.Eの上限は、2ln(2) = ln(4)となります。・・・②

①と②より、CCZゲートのテンソルネットワークの縮約表現については、E.E.がその上限を超えていないので、妥当であるということが分かりました。

元々のE.E.は、ln(8)だったのですが、データの受け渡し方を設計することで、3量子ビットのもつれから2量子ビット毎のもつれの考慮で、目的の表現を達成しつつパラメータを減らすことができています。

さて、テンソルごとの計算を見てみましょう。

今回は、グローバーのアルゴリズムでよく使われる範囲で、任意の状態の入力α、βを考えます。

時間方向とボンド次元方向の2つで計算を行います。時間方向の計算については、転送行列で定義したとおりに行います。

テンソルLについて

ボンド次元の1層下にある1量子ビット目の|0>と|1>の存在確率がそのまま引き継がれていることが分かります。

テンソルCについて

ボンド次元方向の出力を見ると、1量子ビット目の入力の|1>成分であるPLβと2量子ビット目の入力の|1>成分であるPCβの積である項だけが、その他に起こりうる事象と成分的に分離していることが分かります。

さらに、テンソルCは再帰的に考えても自らのボンド次元とそれより上の次元にある入力が全て|1>である成分を抽出できると言えますね。・・・③

テンソルRについて

ボンド次元方向の出力を見ると、8つの項のうち、テンソルR上段の量子ビットの入力が全て|1>である成分の積が0以外であればその結果によって、ターゲット量子ビットについてはZゲートの操作が行われることが分かります。

これは、最初の定義に一致します。

また、時間方向の出力については、テンソルRに入力された情報αR、βRは、先ほどのZゲート操作以外については成分が反転することなく時間方向に出力されることが分かります。

これで、8×8行列の計算をしなくても、MPSによって作ったテンソル計算を各々すれば良いことが分かりました。

パラメータ数は次のように減少します。

圧縮前:8×8行列 = 64パラメータ

圧縮後:32パラメータ

圧縮後の内訳は、次の通りです。

圧縮後(テンソルL):4×2パラメータ

圧縮後(テンソルR):4×4パラメータ

圧縮後(テンソルC):4×2パラメータ

これは、東京大学の講義資料のパラーメータ数削減をn量子ビットで示したものと一致しました。

テンソルCが複数あるn量子ビットの回路についても、③より同様の演算ができます。

以上です。

© 2025, blueqat Inc. All rights reserved