テンソル積について

 投稿者:永野護  投稿日:2013年10月29日(火)10時01分53秒
  a=[[1,2],[3,4]]
b=[[2,3],[3,4]]
とするときa×b=[[2,3,4,6],[3,4,6,8],[6,9,8,12],[9,12,12,16]]
でよろしいでしょうか。(但し×はテンソル積をあらわす)。
(aの1をbのすべての要素にかけました)。
(次にaの2をbのすべての要素にかけました。)。
(そしてaの3をbのすべての要素にかけています)。
(最後にaの4をbのすべての要素にかけています)。
以上の結果を上述のように並べ替えたものです。
 

Re: テンソル積について

 投稿者:島村1243  投稿日:2013年10月30日(水)13時57分56秒
  > No.3182[元記事へ]

永野護さんへのお返事です。

> a=[[1,2],[3,4]]
> b=[[2,3],[3,4]]
> とするときa×b=[[2,3,4,6],[3,4,6,8],[6,9,8,12],[9,12,12,16]]
> でよろしいでしょうか。(但し×はテンソル積をあらわす)。
> (aの1をbのすべての要素にかけました)。
> (次にaの2をbのすべての要素にかけました。)。
> (そしてaの3をbのすべての要素にかけています)。
> (最後にaの4をbのすべての要素にかけています)。
> 以上の結果を上述のように並べ替えたものです。

2階のテンソルaとbは、それぞれを正方行列で表すことはできますが、縮約がない場合、「2階のテンソル×2階のテンソル=4階のテンソル」になるので、1個の行列で表すことはできない(行列で表せるのは2階まで)様です。

例えば2階のテンソルA(ij),B(kl)の積でテンソルCを得るとき、Cの要素は
C(ijkl)=A(ij)×B(kl)
で求めるので、計算は
C(1111)=A(11)×B(11)=1×2=2
C(1211)=A(12)×B(11)=2×2=4
C(2111)=A(21)×B(11)=3×2=6
C(2211)=A(22)×B(11)=4×2=8
C(1112)=A(11)×B(12)=1×3=3
C(1212)=A(12)×B(12)=2×3=6
  ・
  ・
の様に行い、全部で2^4=16個の要素ができます。
各要素の計算は永野さんの算法と同じですが、C内における各要素の場所情報(勝手に変えることは出来ない)を永野さんの示す1個の行列では表現できないことになります。
 

テンソル積について

 投稿者:永野護  投稿日:2013年10月31日(木)09時16分34秒
  島村様、わかりやすい回答ありがとうございました。
敬具
 
 

戻る