common.title
Cloud support

Nobisuke

Dekisugi

RAG


autoQAOA
RAG for dev
Fortune telling app
Annealing
DEEPSCORE
Translation

Overview
Service overview
Terms of service

Privacy policy

Contact
Research

Sign in
Sign up
common.title

MPSを利用した生成モデルの教師なし学習(理論編)

Yuichiro Minato

2021/02/11 13:16

#量子ゲート #テンソルネットワーク #機械学習

1

はじめに

量子コンピュータ上での機械学習において様々な新しいテクニックが出てきています。今回も行列積を利用した生成モデルをみてみたいと思います。ちょっと長いので2回に分けます。

参考

こちらです。

Unsupervised Generative Modeling Using Matrix Product States

Zhao-Yu Han,1, ∗ Jun Wang,1, ∗ Heng Fan,2 Lei Wang,2, † and Pan Zhang3, ‡

1 School of Physics, Peking University, Beijing 100871, China 2 Institute of Physics, Chinese Academy of Sciences, Beijing 100190, China 3 Institute of Theoretical Physics, Chinese Academy of Sciences, Beijing 100190, China

https://arxiv.org/pdf/1709.01662.pdf

概要

データから結合確率分布を学習し、それに基づいてサンプルを生成する生成モデリングは、機械学習と人工知能の重要なタスクです。量子物理学の確率論的解釈に着想を得て、行列積状態を使用する生成モデルを提案します。これは、元々(特に1次元)量子もつれ状態を記述するために提案されたテンソルネットワークです。私たちのモデルは、テンソルの次元を動的に調整することを可能にし、生成タスクのための効率的な直接サンプリング手法を提供するDMRGに類似した効率的な学習を提案しています。この方法を、Bars and Stripes、ランダムバイナリパターンやMNIST手書き数字を含むいくつかの標準データセットの生成モデリングに適用して、ホップフィールドモデル、ボルツマンマシン、GANなどの一般的な生成モデルに対するモデルの能力、特徴、欠点を説明します。

導入

膨大な量のラベルなしデータを使用する教師なし学習の典型的な例である生成モデリングは、現代の機械学習技術の急速な発展の中心にあります。パターン認識などの識別タスクとは異なり、生成モデリングの目標は、データの確率分布をモデル化し、その分布に従って新しいサンプルを生成できるようにすることです。生成モデリングの研究フロンティアでは、優れたデータ表現を見つけ、欠落データのあるタスクを処理するために使用されます。一般的な生成機械学習モデルには、Boltzmann Machines(BM)およびその一般化、変分オートエンコーダー(VAE)、自己回帰モデル、フローの正規化、およびGANなどがあります。生成モデルの設計では、学習とサンプリングの表現力と効率のバランスをとろうとします。

生成モデリングと統計物理学の相互作用には長い歴史があります。 HopfieldモデルやBoltzmannマシンなどの有名なモデルは、イジングモデルと、与えられたトレーニング構成に基づいてモデル内の結合を学習するその逆バージョンと密接に関連しています。

生成モデリングのタスクは、量子物理学と類似性を共有しています。両方とも、巨大な空間で確率分布をモデル化しようとしているという意味です。正確に言えば、量子物理学でモデル化されるのは波動関数であり、確率分布はBornの統計的解釈によると、それらの2乗ノルムによって与えられます。この方法で確率分布をモデル化することは、従来の統計物理学の観点とは根本的に異なります。したがって、量子状態表現を活用する確率モデルを「Born Machines」と呼ぶ場合があります。変分モンテカルロ、テンソルネットワーク(TN)状態、最近の人工ニューラルネットワークなど、量子状態を表現するためにさまざまな方法が開発されています。実際、量子回路のような物理システムも、「Born Machines」を実装する有望な候補です。

過去数十年、テンソルネットワークの状態とアルゴリズムは、多体量子状態のモデリングに非常に強力なツールセットであることが示されました。 TN記述の成功は、量子情報の観点から理論的に正当化できます。量子物理学アプリケーションと並行して、機械学習コミュニティは、特徴抽出、次元削減、およびディープニューラルネットワークの表現可能性の分析のために、テンソル分解およびテンソルネットワークをより広いコンテキストで適用しています。

特に、行列積状態(MPS)は、テンソルが1次元のジオメトリに配置されている一種のTNです。同じ表現は、応用数学コミュニティでテンソルトレイン分解と呼ばれます。単純な構造にもかかわらず、MPSは非常に多くの量子状態を表現できます。基底状態のMPS表現は、1次元のギャップのある局所ハミルトニアンに対して効率的であることが証明されています。実際には、DMRGなどのMPSの最適化スキームは、高次元のいくつかの量子システムでも成功しています。最近のいくつかの研究では、パターン認識、分類、言語モデリングなどの機械学習タスクにMPSの適用を拡張しました。また、ボルツマンマシンとテンソルネットワークの間の接続を引き出しました。

この論文では、教師なし生成モデリングと量子物理学の関係に基づいて、モデルとしてMPSを使用して、DMRGに似たアルゴリズムで与えられたデータの確率分布を学習します。 Hopfieldモデルや逆イジングモデルなどの統計物理学ベースのモデルと比較して、MPSは、MPSの結合次元を増加させることで適応的に成長する、はるかに強力な学習能力を示します。 MPSモデルは、データ生成にマルコフ連鎖モンテカルロ(MCMC)プロセスを必要とするボルツマンマシンよりもはるかに効率的な直接サンプリング法も享受します。 GANなどの一般的な生成モデルと比較すると、ノイズの多い画像を入力にマッピングするのが簡単ではないGANとは対照的に、直接サンプリングアルゴリズムを使用して、初期(ノイズのある)入力からノイズを再構成およびノイズ除去するより効率的な方法を提供します

教師なし学習における行列積

教師なし生成モデリングの目標は、特定のデータの同時確率分布をモデル化することです。トレーニングされたモデルを使用すると、学習した確率分布から新しいサンプルを生成できます。生成モデリングは、次元削減、特徴検出、クラスタリング、リコメンドシステムなどの幅広いアプリケーションがあります。本論文では、バイナリvV=01Nv \in V = \\{0、1\\}^{\otimes N}で構成されるデータセットTを考えます。これは潜在的に繰り返され、次元2N2^Nのヒルベルト空間の基底ベクトルにマッピングできます。量子力学の確率論的解釈は、当然、量子状態でのデータ分布のモデリングを示唆しています。確率分布を量子波動関数Ψ(v)\Psi(v)にエンコードすると、測定はそれを崩壊させ、Ψv2|\Psi(v)|^2に比例する確率で結果v=v1v2、・・・、vNv = (v_1、v_2、・・・、v_N)を生成します。 量子力学の生成的側面に着想を得て、モデルの確率分布を下記のようにかけます。

p(v)=Ψ(v)2Zp(v) = \frac{|\Psi(v)|^2}{Z}

ここで、Zは正規化係数です。また、エネルギーベースのモデルとの類似性を引き出すためのパーティション関数とも呼ばれます。一般に、波動関数Ψ(v)\Psi(v)は複素数となる可能性がありますが、この作業では実数となるように制限しています。

MPS(行列積)

量子物理学者および化学者は、量子波動関数の多くの効率的な古典的表現を開発しました。これらの開発された多くの表現とアルゴリズムは、効率的な確率的モデリングに採用できます。ここでは、MPSを使用して波動関数をパラメーター化します。

Ψ(v1,v2,...,vN)=Tr(A(1)v1A(2)v2...A(N)vN)\Psi(v_1,v_2,...,v_N) = Tr(A^{(1)v_1} A^{(2)v_2} ... A^{(N)v_N})

ここで、各A(k)vkA^{(k)v_k}Dk1D_{k-1}行、DkD_k行列であり、トレースを閉じるにはD0=DND_0 = D_Nを満たす必要があります。ここで検討するケースでは、式の右側に2k=1NDk1Dk2\sum_{k=1}^ND_{k-1}D_kのパラメーターがあります。

MPSの表現力は、S=TrρAlnρAS = −Tr(\rho_Aln\rho_A)として定義される量子状態のフォンノイマンエンタングルメントエントロピーに関連しています。ここで、変数を2つのグループv=vAvBv =(vA、vB)に分割します。ρA=vbΨ(vA,vB)Ψ(vA,vB)\rho_A=\sum_{v_b}\Psi(v_A,v_B)\Psi(v_A',v_B)はサブシステムの縮約密度行列です。

エンタングルメントエントロピーは、SlnDkS≤ln(D_k)の分割で結合次元の下限を設定します。 Nビットシステムの確率分布は、その結合次元に制限がない限り、MPSで記述できます。結合次元が増加すると、MPSは複雑な機能をパラメーター化する能力を強化します。 実際には、D0=DN=1D_0 = D_N = 1でMPSを使用すると、左と右のほとんどの行列をベクトルへと削減するのに便利です。

test.png

引用:https://arxiv.org/pdf/1709.01662.pdf

ここで、ブロックはテンソルを示し、接続された線は仮想インデックスのテンソル収縮を示します。垂れ下がった垂直結合は物理的な指標を示します。今後は、可能な限り、より直感的なグラフィック表記で数式を提示します。

MPS表現にはゲージの自由度があり、テンソルを制限できます。生成モデリングの設定では、正確なパーティション関数Zの計算に非常に役立ちます。

データからMPSを学習する

MPS形式の波動関数Ψ(v)\Psi(v)が選択されると、ボルンのルール式で表される分布がデータ分布に可能な限り近くなるように学習します。標準の学習方法は最尤推定と呼ばれ、(負の)対数尤度関数を定義し、モデルのパラメーターを調整することで最適化します。この場合、負の対数尤度(NLL)は次のように定義されます。

L=1TvTlnP(v)L = \frac{1}{|T|}\sum_{v\in T}ln P(v)

ここで|T|は、トレーニングセットのサイズを示します。 NLLを最小化すると、モデル確率分布P(v)とトレーニングセットで定義された分布との相違が減少します。Lを最小化することは、2つの分布間のカルバック・ライブラーの発散を最小化することと同等であることはよく知られています。

正準形式で武装して、負の対数尤度関数を、次の2つのテンソルAkA^{(k)}およびAk+1A^{(k+1)}を縮約することにより得られる4次のテンソルAkk+1A^{(k、k + 1)}の成分に関して微分することができます。

LAik1ik+1(k,k+1)wkwk+1=ZZ2TvTΨ(v)Ψ(v)\frac{\partial L}{\partial A^{(k,k+1)w_kw_{k+1}}_{i_{k-1} i_{k+1}}} = \frac{Z'}{Z} - \frac{2}{|T|} \sum_{v \in T} \frac{\Psi'(v)}{\Psi(v)}

ここで、Ψ0(v)は、A(k、k + 1)のテンソル要素に関するMPSの導関数を示し、Z 0 = 2 Pv∈VΨ0(v)Ψ(v)です。 ZとZ 0は指数関数的に多数の項の合計に関係しますが、MPSモデルでは効率的な収縮スキームを介して扱いやすいことに注意してください[17]。特に、MPSが混合カノニカル形式の場合[17]、Z 0はZ 0 = 2A(k、k + 1)wkwk + ​​1 ik-1ik + 1に大幅に簡略化できます。勾配の計算、および確率的勾配降下(SGD)や適応学習率などの勾配降下の変形手法については、付録Bで詳しく説明します。勾配降下の後、マージされた4次のテンソルは2次数3に分解されます。テンソル、その後、隣接するテンソルの各ペアに対して手順が繰り返されます。

派生アルゴリズムは、DMRGメソッドに非常に似ており、最適化中に結合次元を動的に調整し、データの重要な特徴を表す重要な結合に計算リソースを割り当てることができます。ただし、アルゴリズムとDMRGには重要な違いがあることを強調します。

•従来のDMRGメソッドの損失関数は通常エネルギーです。一方、損失関数の平均NLLはデータの関数です。

•大量のデータがある場合、損失関数のランドスケープは通常非常に複雑であるため、確率的勾配降下法や学習率調整手法など、機械学習コミュニティで開発された最新のオプティマイザーはアルゴリズムにとって重要です。学習の最終目標はテストデータのパフォーマンスを最適化することなので、トレーニングデータの損失を最小限に抑える最適なパラメーターを見つける必要はありません。通常、過学習を防ぐために、実際の最小値に達する前にトレーニングを停止します。

•アルゴリズムはデータ指向です。サンプルに適用される操作は同一で独立しているため、サンプルを並列化するのは簡単です。実際、このいわゆる「バッチ」次元を並列化することは、現代の深層学習フレームワークの一般的な慣行です。具体的な例として、アルゴリズムのGPU実装は、MNISTデータセット全体のCPU実装よりも少なくとも100倍高速です。

生成サンプリング

トレーニング後、式に従って独立してサンプルを生成できます。他の一般的な生成モデル、特に制限付きボルツマンマシン(RBM)などのエネルギーベースモデルでは、分配関数が扱いにくいため、MCMCを実行することで新しいサンプルを生成することがよくあります。このモデルでは、システム関数が線形の複雑さで分配関数を正確に計算できるという便利さがあります。このモデルは、MPSの一方の端からもう一方の端までビット単位でサンプルを生成する直接サンプリング方式を採用しています。詳細な生成プロセスは次のとおりです。

N番目のビットのように、端から始めます。周辺確率PvN=v1v2...vN1PvP(v_N)= \sum_{v1、v2、...、v_{N-1}}P(v)からこのビットを直接サンプリングします。 PvN=xvN2/ZP(v_N)= |x^{v_N}|^2/Zであるため、ANA^{(N)}を除くすべてのテンソルを左正準化した場合、これは簡単に実行できることは明らかです。N番目のビットの値を指定すると、次に(N − 1)番目のビットのサンプリングに進むことができます。より一般的には、ビット値vkvk+1、・・・、vNv_k、v_{k + 1}、・・・、v_Nが与えられると、(k − 1)番目のビットは条件付き確率に従ってサンプリングされます。

P(vk1vk,vk+1,...,vN)=P(vk1,vk,...,vN)P(vk,vk+1,...,vN)P(v_{k-1}|v_k,v_{k+1},...,v_N) = \frac{P(v_{k-1},v_k,...,v_N)}{P(v_k,v_{k+1},...,v_N)}

正準条件の結果として、周辺確率は単純に次のように表現できます。

P(vk,vk+1,...,vN)=xvk,vk+1,...,vN2/ZP(v_k,v_{k+1},...,v_N) = |x^{v_k,v_{k+1},...,v_N}|^2/Z

k番目のビットがサンプリングされてから確定しました。概略的に、その二乗ノルムは

test2.png

左から行列Ak1vk1A^{(k-1)v_{k-1}}を乗算し、結果のベクトルの2乗ノルムを計算すると、

P(vk1,vk,...,vN)=xvk1,vk,...,vN2/ZP(v_{k-1},v_k,...,v_N) = |x^{v_{k-1},v_k,...,v_N}|^2/Z

が得られます。

これらを組み合わせると、条件付き確率を計算し、それに応じてビットv_{k-1}をサンプリングできます。このようにして、すべてのビット値は、右側のすべてのビットが与えられた条件付き確率から連続して引き出されます。この手順により、MPSの確率分布に厳密に従うサンプルが得られます。

このサンプリング手法は、サンプルを最初から順番に生成することに限定されません。また、ビットの一部が与えられた場合、推論タスクが可能です。その場合、特定のビット間に未知のビットのセグメントが存在する場合、正規化のトリックはあまり役に立たない可能性があります。それにも関わらず、周辺確率はまだ扱いやすいです。なぜなら、梯子型のテンソルネットワークを効率的に収縮できるからです。これらのサンプリングアプローチの柔軟性を考慮すると、MPSベースの確率的モデリングを画像の再構成とノイズ除去にも適用できます。

モデルとアルゴリズムの特徴

MPS生成モデルのいくつかの顕著な特徴を強調し、他の一般的な生成モデルと比較します。最も重要なことは、MPSには扱いやすい確率密度が明示されており、効率的な学習と推論が可能なことです。所定の最大結合次元DmaxD_{max}を持つNのサイズのシステムの場合、サイズT|T|のデータセットに対するトレーニングの複雑さはOTNDmax3O(| T | ND^3_{max})です。サンプリングされるすべてのビットが境界に接続されている場合、MPSからの生成サンプリングのスケーリングはONDmax2O(ND^2_{max})です。

MPSの表現可能性

MPSの表現可能性は、量子物理学の文脈で集中的に研究されました。 MPSの結合次元は、エンタングルメントエントロピーをキャプチャする能力に上限を設けました。 MPSの表現力に関するこれらの強固な理論的な理解によって、生成タスクは魅力的なモデルになります。量子系でのMPSの成功を考慮すると、短距離相関のあるデータセットの計算リソースの多項式スケーリングが期待されます。MPSを使用した2次元画像のデータセットの処理は、DMRGの2次元量子システムへの適用に似ています。原則として、画像データセットの正確な表現には、画像の解像度が高くなるにつれて指数関数的に大きな結合次元が必要になる場合がありますが、計算的に手頃な結合次元では、MPSはすでに分布の主要な特徴を捉える優れた近似として機能する場合があります。

表現力の適応的調整

各テンソル単体ではなく、2サイトのテンソルの最適化を実行すると、学習プロセス中に結合次元を動的に調整できます。現実的なデータセットの場合、必要な結合次元は不均一になる可能性が高いため、それらを調整すると計算リソースが最適な方法で動的に割り当てられます。この状況は、MNISTデータセットを使用して明確に説明されます。

結合次元の調整は、特異値の分布に従います。これは、MPS表現の低エンタングルメントの誘導バイアスに関連しています。 MPSの適応調整は、他のほとんどの生成モデルと比較して有利です。ほとんどの場合、アーキテクチャ(モデルの表現可能性の主な制限要因)は学習手順中に固定されるため、パラメーターのみが調整されます。結合次元を適応的に調整することにより、MPSの表現力は、トレーニングデータに精通するにつれて大きくなります。この意味で、表現力の適応的調整は、確率的グラフィカルモデルの構造学習に似ていますが、これは構造情報の離散性のために困難な作業です。

効率的な勾配計算と負の対数尤度関数

標準のエネルギーベースのモデルと比較したMPSのもう1つの利点は、トレーニングを高効率で実行できることです。勾配に寄与する2つの項は、エネルギーに基づくモデルのトレーニングにおける負および正のフェーズに類似しており、可視変数はそれぞれアンクランプおよびクランプされます。RBMなどのエネルギーベースのモデルでは、最初の項の典型的な評価には、近似MCMCサンプリング、またはThouless-Anderson-Palmer方程式などの洗練された平均場近似が必要です。 幸いなことに、MPSでは正規化係数とその勾配を正確かつ簡単に計算できます。勾配の正確な評価により、関連する確率的勾配降下バイアスが保証されます。

勾配の計算の効率に加えて、対数尤度とその勾配の不偏推定値は、RBMなどの古典的な生成モデルと比較した場合、勾配が近似される分配関数の難易度に比べて大幅にメリットがあります。まず、MPSではNLLを直接最適化できますが、RBMではContrastive Divergence(CD)などの近似アルゴリズムがNLL以外の損失関数を本質的に最適化します。これにより、RBMのトレーニング中に構成スペースの一部の領域が考慮されないという事実が発生し、その後のパフォーマンスが低下します。第二に、MPSを使用すると、再構成エラーやRBMの疑似リライフメントなど、モニタリングに偏りをもたらす他の量の代わりに、正確なNLLを使用してトレーニングプロセスを簡単に監視できます。

効率的な直接サンプリング

今回導入されたアプローチでは学習した確率分布から直接サンプリングできます。これにより、エネルギーベースのモデルのMCMCサンプリングで混合が遅くなる問題が完全に回避されます。 MCMCはビットをランダムに反転し、サンプルの受け入れと拒否の確率比を比較します。ただし、状態空間でのランダムウォークはローカルミニマムにとどまる可能性があり、長時間の相関関係の予期しない変動がサンプルに生じる場合があります。これにより、サンプリングに問題が生じる場合があります。具体的な例として、すべてのトレーニングサンプルがMPSとRBMの両方で正確に記憶されている場合を考えます。これは、両方のモデルのNLLが正確にlnTln|T|であり、トレーニングサンプルのみが両方のモデルで有限の確率を持っているということです。他のサンプルは、わずか1ビットしか異なるものではありませんが、確率はゼロです。 MPSモデルが、セクション5で紹介したアプローチを使用して、トレーニングサンプルの1つと同一のサンプルを生成できることを確認するのは簡単です。ただし、サンプリングの確率を高めるためにMCMCが従うべき方向がないため、RBMはサンプルの生成にはまったく機能しません。

グラフィカルモデルに適切な構造(チェーンやツリーなど)がある場合、推論を効率的に行うことができることが知られています。ただし、MPSモデルには、効率的な直接サンプリングと扱いやすいパーティション機能の両方の利点があります。サンプリングアルゴリズムは形式的に自己回帰モデルのアルゴリズムと似ていますが、その表現性を動的に調整できるため、MPSはより柔軟な生成モデルになります。

GANやVAEとは異なり、MPSは明示的に扱いやすい確率を与えることができ、これにより、より教師なしの学習タスクが可能になります。さらに、MPSでのサンプリングは、固定ビットなどのサンプルの任意の事前情報で機能し、画像の再構成やノイズ除去などのアプリケーションをサポートします。

まとめ

行列積を用いた生成モデルとその教師なし学習をみました。生成モデルは計算量の観点でたびたび問題になるので、効率的な学習方法はとても助かります。

また、量子計算の構造を見直すことで近似・近似なしでの大型の計算にも道が開かれているのがとてもいいと思います。次回はMPSを利用して実際にパフォーマンスを見てみたいと思います。

© 2024, blueqat Inc. All rights reserved