テンソル分解はより少ない階数のテンソルの積和へ変換する数学的な手法の総称です。量子コンピュータの回路シミュレーションではテンソルネットワーク(以下TN)を使いますが、機械学習分野での共通してTNを利用する場合には、テンソル分解による低ランク近似手法について多少量子回路のライブラリと異なるものを使います。量子回路ライブラリでは現在、QR分解やSVDまたSVDを利用したTT分解(MPS)などが利用されます。今回はCP分解、タッカー分解についてみてみます。
Tensor decomposition is a general term for mathematical methods that convert a tensor into a product of tensors with lower rank. In simulating quantum circuits for quantum computers, tensor networks (TNs) are commonly used. However, in machine learning applications that also utilize TNs, low-rank approximation methods based on tensor decomposition are used, which differ somewhat from the tensor decomposition methods used in quantum circuit libraries. Currently, QR decomposition, SVD, and SVD-based tensor train (MPS) are commonly used in quantum circuit libraries. In this context, we will take a look at CP decomposition and Tucker decomposition.
CP分解 / CP decomposition
テンソルをベクトルのクロネッカー積の和で表現します。
A tensor can be represented as a sum of Kronecker products of vectors.
引用:https://ja.wikipedia.org/wiki/テンソル分解
タッカー分解 / Tucker decomposition
テンソルを、テンソルとベクトルのテンソル積で表現します。
A tensor can be represented as a tensor product of a tensor and a vector.
引用:https://ja.wikipedia.org/wiki/テンソル分解