テンソル積とは何か?普遍性・基底表現・クロネッカー積と応用を総合解説
テンソル積とは — 概要
「テンソル積(tensor product)」は線形代数や多変量解析、量子力学、機械学習など幅広い分野で使われる基本的概念です。直感的には、二つ(あるいは複数)のベクトル空間を結合して「組合せ」を表す新しいベクトル空間を作る操作で、要素は一見「ベクトルの組(外積)」に見えますが、重要なのは普遍的な性質(普遍性)に基づいて一意的に定まる点です。有限次元の場合、テンソル積は多次元配列(多次元の数値データ)と対応し、計算上は行列のクロネッカー積(Kronecker product)で表現されます。
厳密な定義(普遍性による定義)
ベクトル空間 V, W に対してそのテンソル積 V ⊗ W とは、V×W 上の「双線形写像」を線形写像に還元する役割を持つ空間として定義されます。形式的には次の普遍性条件で定義されます。
- 存在する双線形写像
τ : V × W → V ⊗ Wがあり、任意の線形空間 X と任意の双線形写像β : V × W → Xに対して一意的な線形写像f : V ⊗ W → Xが存在してβ = f ∘ τが成り立つ。 - この性質を満たす (V ⊗ W, τ) は唯一(同型の意味で)である。
つまり、テンソル積は「双線形写像を通すための最小の線形空間」として特徴づけられます。この定義により、テンソル積は基底の取り方に依存しない抽象的構成になります。
基底による具体的な表現
有限次元の場合、基底を選べばテンソル積はわかりやすく表現できます。たとえば V が次元 m で基底 {e_i}、W が次元 n で基底 {f_j} ならば、V ⊗ W は次元 m×n で基底は {e_i ⊗ f_j}(i=1..m, j=1..n)になります。任意の要素は基底の線形結合で表せます。
また次元に関しては次が成り立ちます:dim(V ⊗ W) = dim V × dim W。
行列との関係:クロネッカー積(Kronecker product)
行列や数値計算の文脈では、テンソル積はしばしばクロネッカー積として扱われます。具体的に、線形写像 A: V→V' と B: W→W' のテンソル積は線形写像 A ⊗ B : V⊗W → V'⊗W' を定め、基底を選ぶとその行列は A の各成分をスカラー倍したブロックで構成される行列、すなわちクロネッカー積になります。
例えば A = [[a11,a12],[a21,a22]]、B は 2×2 行列とすると、
A ⊗ B = [[a11 B, a12 B],[a21 B, a22 B]]
となり、結果は 4×4 行列です。これはテンソル積写像の基底表現に対応します。
テンソルと外積・内積、収縮
注意すべきは「テンソル積」と「外積(外積形式)」や「内積(スカラー積)」は別概念だが関連がある点です。テンソル積で得られる一般要素(テンソル)はしばしば「ランク1テンソル(単純テンソル)」と呼ばれる v ⊗ w の線形結合として表現されます。一次結合で表せないテンソルもあり、これがテンソルの「非分離性(量子の絡み合いの数理的基盤)」に対応します。
また「収縮(contraction)」はテンソルの双対空間との自然な対応を使って一次元に縮める操作で、行列で言えばトレースや内積に対応します。
主な性質(箇条書き)
- 双線形性:
(a v1 + b v2) ⊗ w = a (v1 ⊗ w) + b (v2 ⊗ w)等、各引数について線形。 - 結合的(自然同型):
(U ⊗ V) ⊗ W ≅ U ⊗ (V ⊗ W)(等式ではなく自然同型)。 - 可換ではないが交換可能(同型):
V ⊗ W ≅ W ⊗ V(基底の順序により同型)。 - 分配法則的:
V ⊗ (W ⊕ X) ≅ (V ⊗ W) ⊕ (V ⊗ X)。 - 双対空間との関係:
(V ⊗ W)* ≅ V* ⊗ W*(有限次元の場合)。
具体的な計算例
簡単な数値例を示します。V = R^2、W = R^2、基底 e1=(1,0), e2=(0,1), f1=(1,0), f2=(0,1)。
v = (1,2) = 1 e1 + 2 e2、w = (3,4) = 3 f1 + 4 f2 とすると:
v ⊗ w = 1·(e1 ⊗ (3 f1 + 4 f2)) + 2·(e2 ⊗ (3 f1 + 4 f2))
展開して基底で表すと
v ⊗ w = 3 (e1 ⊗ f1) + 4 (e1 ⊗ f2) + 6 (e2 ⊗ f1) + 8 (e2 ⊗ f2)
この 4 成分を並べれば、数値的には 2 次元配列(2×2 の行列やベクトル長 4 の配列)として扱えます。
応用例
- 量子力学:複数の量子系の状態空間をテンソル積で結合。系が分離可能でない場合、状態は単純なテンソルに書けず、絡み合い(エンタングルメント)が生じる。
- 信号処理・機械学習:多次元配列(テンソル)の分解(CP 分解、Tucker 分解)やテンソル回帰などで利用。ここでは「テンソル=配列」として計算されることが多いが、背後に線形代数的意味がある。
- 表現論や微分幾何学:表現のテンソル積、テンソル場(接ベクトル束と余接束のテンソル積)など抽象的構造の構成に用いる。
よくある誤解と注意点
- 「テンソル=多次元配列」に単純化しすぎる誤解:計算実務では配列として扱うことが多いが、数学的には基底に依存しない抽象概念である。
- クロネッカー積と同一視すること:有限次元の基底を固定すれば行列表現として一致するが、本質的には「テンソル積は写像や空間の操作」であり、クロネッカー積はその行列表現の一つ。
- テンソルのランクの概念:配列としてのランク(行列ランクの一般化)と、数学的な「テンソルランク(単純テンソルの最小個数)」は混同されやすい。
まとめ
テンソル積は、二つ(あるいは複数)の線形空間を組み合わせて双線形性を線形性へと還元する抽象的で強力な道具です。計算面ではクロネッカー積や多次元配列として扱われ、量子情報や機械学習、微分幾何、表現論など多彩な分野で重要な役割を果たします。理解の鍵は「普遍的な性質」と「基底に依存しない抽象性」を押さえつつ、具体的な基底表現(行列や配列)との対応を理解することです。
参考文献
- Wikipedia: テンソル積(日本語)
- Wikipedia: Tensor product (English)
- Wikipedia: Kronecker product
- Wikipedia: Tensor (intrinsic) — 多様体上のテンソル(英語)
- 量子情報入門(Qiskit Textbookの章:状態とテンソル積の利用例)


