Warning: Undefined variable $type in /home/users/1/sub.jp-asate/web/wiki/extensions/HeadScript/HeadScript.php on line 3
Warning: "continue" targeting switch is equivalent to "break". Did you mean to use "continue 2"? in /home/users/1/sub.jp-asate/web/wiki/includes/json/FormatJson.php on line 297
Warning: Trying to access array offset on value of type bool in /home/users/1/sub.jp-asate/web/wiki/includes/Setup.php on line 660
Warning: session_name(): Session name cannot be changed after headers have already been sent in /home/users/1/sub.jp-asate/web/wiki/includes/Setup.php on line 834
Warning: ini_set(): Session ini settings cannot be changed after headers have already been sent in /home/users/1/sub.jp-asate/web/wiki/includes/session/PHPSessionHandler.php on line 126
Warning: ini_set(): Session ini settings cannot be changed after headers have already been sent in /home/users/1/sub.jp-asate/web/wiki/includes/session/PHPSessionHandler.php on line 127
Warning: session_cache_limiter(): Session cache limiter cannot be changed after headers have already been sent in /home/users/1/sub.jp-asate/web/wiki/includes/session/PHPSessionHandler.php on line 133
Warning: session_set_save_handler(): Session save handler cannot be changed after headers have already been sent in /home/users/1/sub.jp-asate/web/wiki/includes/session/PHPSessionHandler.php on line 140
Warning: "continue" targeting switch is equivalent to "break". Did you mean to use "continue 2"? in /home/users/1/sub.jp-asate/web/wiki/languages/LanguageConverter.php on line 773
Warning: Cannot modify header information - headers already sent by (output started at /home/users/1/sub.jp-asate/web/wiki/extensions/HeadScript/HeadScript.php:3) in /home/users/1/sub.jp-asate/web/wiki/includes/Feed.php on line 294
Warning: Cannot modify header information - headers already sent by (output started at /home/users/1/sub.jp-asate/web/wiki/extensions/HeadScript/HeadScript.php:3) in /home/users/1/sub.jp-asate/web/wiki/includes/Feed.php on line 300
Warning: Cannot modify header information - headers already sent by (output started at /home/users/1/sub.jp-asate/web/wiki/extensions/HeadScript/HeadScript.php:3) in /home/users/1/sub.jp-asate/web/wiki/includes/WebResponse.php on line 46
Warning: Cannot modify header information - headers already sent by (output started at /home/users/1/sub.jp-asate/web/wiki/extensions/HeadScript/HeadScript.php:3) in /home/users/1/sub.jp-asate/web/wiki/includes/WebResponse.php on line 46
Warning: Cannot modify header information - headers already sent by (output started at /home/users/1/sub.jp-asate/web/wiki/extensions/HeadScript/HeadScript.php:3) in /home/users/1/sub.jp-asate/web/wiki/includes/WebResponse.php on line 46 http:///mymemo.xyz/wiki/api.php?action=feedcontributions&user=1.114.19.125&feedformat=atomminiwiki - 利用者の投稿記録 [ja]2024-05-19T04:01:27Z利用者の投稿記録MediaWiki 1.31.0クロネッカー積2016-12-08T17:24:30Z<p>1.114.19.125: </p>
<hr />
<div>{{for|対称群の表現のクロネッカー積|クロネッカー係数}}<br />
[[数学]]における行列の'''クロネッカー積'''(クロネッカーせき、{{lang-en-short|''Kronecker product''}})&otimes; は任意サイズの[[行列]]の間に定義される[[二項演算]]で、その結果は[[区分行列]]として与えられる。行列単位からなる標準基底に関する線型空間の[[テンソル積]]の行列として与えられる。クロネッカー積は通常の[[行列の積]]とはまったく異なる概念であるので、混同すべきではない。名称は[[レオポルト・クロネッカー]]に因む。<br />
<br />
== 定義 ==<br />
''A'' = (''a''<sub>''ij''</sub>) を ''m'' &times; ''n'' 行列、''B'' = (''b''<sub>''kl''</sub>) を ''p'' &times; ''q'' 行列とすると、それらのクロネッカー積 ''A'' &otimes; ''B'' は<br />
: <math>A\otimes B = \begin{pmatrix} a_{11} B & \cdots & a_{1n}B \\ \vdots & \ddots & \vdots \\ a_{m1} B & \cdots & a_{mn} B \end{pmatrix}</math><br />
で与えられる ''mp'' &times; ''nq'' 区分行列である。もっとはっきり成分を示せば、 ''A'' &otimes; ''B'' は<br />
: <math>\begin{pmatrix}<br />
a_{11} b_{11} & a_{11} b_{12} & \cdots & a_{11} b_{1q} & <br />
\cdots & \cdots & a_{1n} b_{11} & a_{1n} b_{12} & \cdots & a_{1n} b_{1q} \\<br />
a_{11} b_{21} & a_{11} b_{22} & \cdots & a_{11} b_{2q} & <br />
\cdots & \cdots & a_{1n} b_{21} & a_{1n} b_{22} & \cdots & a_{1n} b_{2q} \\<br />
\vdots & \vdots & \ddots & \vdots & & & \vdots & \vdots & \ddots & \vdots \\<br />
a_{11} b_{p1} & a_{11} b_{p2} & \cdots & a_{11} b_{pq} & <br />
\cdots & \cdots & a_{1n} b_{p1} & a_{1n} b_{p2} & \cdots & a_{1n} b_{pq} \\<br />
\vdots & \vdots & & \vdots & \ddots & & \vdots & \vdots & & \vdots \\<br />
\vdots & \vdots & & \vdots & & \ddots & \vdots & \vdots & & \vdots \\<br />
a_{m1} b_{11} & a_{m1} b_{12} & \cdots & a_{m1} b_{1q} & <br />
\cdots & \cdots & a_{mn} b_{11} & a_{mn} b_{12} & \cdots & a_{mn} b_{1q} \\<br />
a_{m1} b_{21} & a_{m1} b_{22} & \cdots & a_{m1} b_{2q} & <br />
\cdots & \cdots & a_{mn} b_{21} & a_{mn} b_{22} & \cdots & a_{mn} b_{2q} \\<br />
\vdots & \vdots & \ddots & \vdots & & & \vdots & \vdots & \ddots & \vdots \\<br />
a_{m1} b_{p1} & a_{m1} b_{p2} & \cdots & a_{m1} b_{pq} & <br />
\cdots & \cdots & a_{mn} b_{p1} & a_{mn} b_{p2} & \cdots & a_{mn} b_{pq} <br />
\end{pmatrix}</math><br />
と書ける。行列 ''A'' および ''B'' が線型写像 ''V''<sub>1</sub> → ''W''<sub>1</sub> および ''V''<sub>2</sub> → ''W''<sub>2</sub> をそれぞれ表現するならば ''A'' &otimes; ''B'' はそれらの[[写像のテンソル積]] ''V''<sub>1</sub> &otimes; ''V''<sub>2</sub> → ''W''<sub>1</sub> &otimes; ''W''<sub>2</sub> を表現する。<br />
<br />
例えば、<br />
:<math><br />
\begin{pmatrix} 1 & 2 \\ 3 & 4 \end{pmatrix} \otimes \begin{pmatrix} 0 & 5 \\ 6 & 7 \end{pmatrix}<br />
= \begin{pmatrix} <br />
1\cdot 0 & 1\cdot 5 & 2\cdot 0 & 2\cdot 5 \\ <br />
1\cdot 6 & 1\cdot 7 & 2\cdot 6 & 2\cdot 7 \\ <br />
3\cdot 0 & 3\cdot 5 & 4\cdot 0 & 4\cdot 5 \\ <br />
3\cdot 6 & 3\cdot 7 & 4\cdot 6 & 4\cdot 7 \\ <br />
\end{pmatrix} = \begin{pmatrix} <br />
0 & 5 & 0 & 10 \\ <br />
6 & 7 & 12 & 14 \\<br />
0 & 15 & 0 & 20 \\<br />
18 & 21 & 24 & 28<br />
\end{pmatrix}<br />
</math><br />
のような計算が成り立つ。<br />
<br />
== 性質 ==<br />
=== 双線型性と結合性 ===<br />
<br />
クロネッカー積はテンソル積の特別な場合であるから、[[双線型写像|双線型性]]と[[結合法則|結合性]]を持つ。すなわち、''A'', ''B'', ''C'' を適当なサイズの行列、''k'' をスカラーとして<br />
:<math> A \otimes (B+C) = A \otimes B + A \otimes C, </math><br />
:<math> (A+B)\otimes C = A \otimes C + B \otimes C, </math><br />
:<math> (kA) \otimes B = A \otimes (kB) = k(A \otimes B), </math><br />
:<math> (A \otimes B) \otimes C = A \otimes (B \otimes C)</math><br />
が成り立つ。<br />
<br />
クロネッカー積は[[交換法則|可換]]でなく、一般には ''A'' &otimes; ''B'' と ''B'' &otimes; ''A'' は異なる行列となる。しかし ''A'' &otimes; ''B'' と ''B'' &otimes; ''A'' とは置換同値、すなわち[[置換行列]] ''P'', ''Q'' で<br />
:<math> A \otimes B = P(B\otimes A)Q</math><br />
となるものが存在する。さらに ''A'', ''B'' が正方行列の場合には、''A'' &otimes; ''B'' と ''B'' &otimes; ''A'' とは[[置換相似]]、すなわち置換同値であって ''P'' = ''Q''<sup>&#x22a4;</sup> とすることができる。<br />
<br />
=== 混合積性質 ===<br />
行列 ''A'', ''B'', ''C'', ''D'' は行列の積 ''AC'' および ''BD'' が定義できるようなサイズの行列とすれば、<br />
:<math>(A\otimes B)(C\otimes D) = AC\otimes BD</math><br />
が成立する。これは行列の通常の積とクロネッカー積が混じっているので、混合積性質と呼ばれる。<br />
<br />
=== 逆元 ===<br />
上記の混合積性質から、''A'' &otimes; ''B'' が[[正則行列]]となるための必要十分条件は ''A'' と ''B'' がともに正則となることであって、実際に逆元を<br />
:<math> (A \otimes B)^{-1} = A^{-1} \otimes B^{-1}</math><br />
と書くことができる。<br />
<br />
=== 転置行列 ===<br />
行列の転置をとる操作はクロネッカー積に分配的である。すなわち、<br />
:<math>(A\otimes B)^\top = A^\top \otimes B^\top</math><br />
が成立する。<br />
<br />
=== クロネッカー和と行列の指数 ===<br />
''n''-次正方行列 ''A'', ''m''-次正方行列 ''B'' および ''k''-次単位行列 ''I''<sub>''k''</sub> に対して、'''クロネッカー和'''と呼ばれる演算 &oplus; を<br />
:<math> A \oplus B = A \otimes I_m + I_n \otimes B</math><br />
で定義する(これは[[行列の直和]]とは'''異なる'''ものであることに注意)。この演算は[[リー環]]のテンソル積に関係がある。<br />
<br />
[[行列の指数函数]]に関する公式 <br />
:<math> e^{A \oplus B} = e^A \otimes e^B</math><br />
はある種の[[連続時間マルコフ過程]]の数値的評価において有用である {{Citation needed|date=January 2008}}。物理学においても、相互作用しない形の集まりを考えるとき、クロネッカー和が自然に現れる。''H''<sup>''i''</sup> をそのような系の ''i''-番目のハミルトニアンとすれば、系の集まり全体のハミルトニアンは<br />
: <math>H_{\mathrm{Tot}}=\bigoplus_{i}H^{i}</math><br />
で与えられる。<br />
<br />
=== スペクトル ===<br />
''A'', ''B'' はそれぞれ ''n'', ''m''-次正方行列とし、重複度までこめて ''A'' の[[固有値]]が λ<sub>1</sub>, …, λ<sub>''n''</sub>, ''B'' の固有値が μ<sub>1</sub>, …, μ<sub>''m''</sub> であるとすると、''A'' &otimes; ''B'' の固有値は<br />
:<math> \lambda_i \mu_j \quad (i=1,\ldots,n;\; j=1,\ldots,m)</math><br />
で与えられる。従って、クロネッカー積の[[蹟 (線型代数学)|蹟]]と[[行列式]]に関して<br />
:<math> \text{tr}(A \otimes B) = \text{tr}\, A\ \text{tr}\,B,</math><br />
:<math> \det(A \otimes B) = (\det A)^m (\det B)^n</math><br />
が成立することが分かる。<br />
<br />
=== 特異値 ===<br />
矩形行列 ''A'', ''B'' に関してその[[特異値分解|特異値]]を考えることができる。行列 ''A'' が ''r''<sub>''A''</sub> 個の非零特異値<br />
:<math>\sigma_{A,i}\quad (i = 1, \ldots, r_A)</math><br />
を持つものとし、同様に ''B'' の非零特異値を<br />
:<math>\sigma_{B,i}\quad (i = 1, \ldots, r_B)</math><br />
で表せば、クロネッカー積 ''A'' &otimes; ''B'' は ''r''<sub>''A''</sub>''r''<sub>''B''</sub> 個の特異値<br />
:<math> \sigma_{A,i}\sigma_{B,j}\qquad (i=1,\ldots,r_A;\; j=1,\ldots,r_B)</math><br />
を持つ。[[行列の階数]]はその非零特異値の個数に等しいから、<br />
:<math> \text{rank}(A \otimes B) = \text{rank}\,A\ \text{rank}\,B</math><br />
も分かる。<br />
<br />
=== 抽象テンソル積との関係 ===<br />
行列のクロネッカー積は線型写像に対する抽象的なテンソル積に対応する。具体的に、ベクトル空間 ''V'', ''W'', ''X'', ''Y'' がそれぞれ基底 {''v''<sub>1</sub>, …, ''v''<sub>''m''</sub>}, {''w''<sub>1</sub>, …, ''w''<sub>''n''</sub>}, {''x''<sub>1</sub>, …, ''x''<sub>''d''</sub>}, {''y''<sub>1</sub>, …, ''y''<sub>''e''</sub>} を持つものとすると、行列 ''A'', ''B'' がそれぞれ線型写像 ''S'': ''V'' → ''X'', ''T'': ''W'' → ''Y'' を所期の基底に関して表現するならば、クロネッカー積 ''A'' &otimes; ''B'' は写像のテンソル積 ''S'' &otimes; ''T'': ''V'' &otimes; ''W'' → ''X'' &otimes; ''Y'' を、''V'' &otimes; ''W'' の基底 {''v''<sub>1</sub> &otimes; ''w''<sub>1</sub>, ''v''<sub>1</sub> &otimes; ''w''<sub>2</sub>, …, ''v''<sub>2</sub> &otimes; ''w''<sub>1</sub>, …, ''v''<sub>''m''</sub> &otimes; ''w''<sub>''n''</sub>} および ''X'' &otimes; ''Y'' の同様の基底に関して表現するもので、<br />
: ''A'' &otimes; ''B''(''v''<sub>''i''</sub> &otimes; ''w''<sub>''j''</sub>) = (''Av''<sub>''i''</sub>)&otimes;(''Bw''<sub>''j''</sub>)<br />
なる性質が満たされる<ref>Pages 401&ndash;402 of {{Citation| last=Dummit| first=David S.| last2=Foote| first2=Richard M.| title=Abstract Algebra| edition=2| year=1999| publisher=John Wiley and Sons, Inc.| place=New York| isbn=0-471-36857-1}}</ref>。ただし、''i'', ''j'' は適当な範囲を動く整数とする。<br />
<br />
''V'', ''W'' が[[リー環]]で、''S'': ''V'' → ''V'', ''T'': ''W'' → ''W'' が[[リー環準同型]]のとき、''A'' と ''B'' のクロネッカー積は誘導されたリー環準同型 ''V'' &otimes; ''W'' → ''V'' &otimes; ''W'' を表現する。<br />
<br />
=== グラフの積との関係 ===<br />
[[グラフ理論|グラフ]]の[[隣接行列]]のクロネッカー積は[[グラフのテンソル積]]の隣接行列になる。また、グラフの隣接行列のクロネッカー和は[[直積グラフ]]の隣接行列である<ref name="TAOCP0a">D. E. Knuth: ''<br />
[http://www-cs-faculty.stanford.edu/~knuth/fasc0a.ps.gz "Pre-Fascicle 0a: Introduction to Combinatorial Algorithms"], zeroth printing (revision 2), to appear as part of D.E. Knuth: ''The Art of Computer Programming Vol. 4A'' answer to Exercise 96.</ref>。<br />
<br />
== 行列方程式 ==<br />
クロネッカー積はある種の行列方程式の簡便な表現を得るのに利用することができる。例えば、''A'', ''B'', ''C'' が与えられていて、''X'' を未知とするときの、方程式 ''AXB'' = ''C'' を考えると、この方程式は<br />
:<math> (B^\top \otimes A)\text{vec}(X) = \text{vec}(AXB) = \text{vec}(C)</math><br />
の形に書き下すことができる。ここで、vec(''X'') は、行列 ''X'' の各列を縦に積んで一つの[[列ベクトル]]の形にした、''X'' のベクトル化である。このときクロネッカー積の性質から、方程式 ''AXB'' = ''C'' がただ一つの解をもつための必要十分条件が ''A'' および ''B'' がともに非特異であること {{harv|Horn|Johnson|1991|loc=Lemma 4.3.1}} が従う。<br />
<br />
''X'' を行順に列ベクトルとしたものを '''x''' とすれば ''AXB'' は (''A'' &otimes; ''B''<sup>&#x22a4;</sup>)'''x''' と書ける {{harv|Jain|1989|loc=2.8 Block Matrices and Kronecker Products}}。<br />
<br />
== 多変量統計 ==<br />
多変量統計におけるモーメントはクロネッカー積を用いて表すことができる。<br><br />
'''x''' = (X<sub>1</sub>, X<sub>2</sub>, ... ) を多変量のベクトルとすれば、<ref>{{Cite<br />
| author = Tõnu Kollo, D. Von Rosen<br />
| title = Advanced Multivariate Statistics with Matrices<br />
| publisher = Springer<br />
| series = Mathematics and Its Applications<br />
| volume = 579 <br />
| edition = M. Hazewinkel<br />
| date = Jan 1, 2005<br />
| pages = 172-173(489)<br />
| url = http://link.springer.com/book/10.1007/1-4020-3419-9/page/1<br />
| doi = <br />
| isbn = 978-1-4020-3419-0<br />
}}</ref><br />
*一次のモーメントは、<math> \mu_1 = E[x] = (E[X_1], E[X_2], ...) </math><br />
*二次のモーメントは、<math> \mu_2 = E[x \otimes x^t] = (E[X_1^2], E[X_2^2], ..., E[X_1X_2], E[X_1X_3], ... )</math> <br />
<br />
三変数での例<br />
:<math><br />
\begin{pmatrix} a \\ b \\ c \end{pmatrix} \otimes \begin{pmatrix} a & b & c \end{pmatrix} = <br />
\begin{pmatrix} a \cdot a & a \cdot b & a \cdot c \\ b \cdot a & b \cdot b & b \cdot c \\ c \cdot a & c \cdot b & c \cdot c \end{pmatrix}<br />
</math> <br />
で共分散行列となる。<br />
<br />
同様に、<br />
*三次モーメントは、<math> \mu_3 = E[x \otimes x^t \otimes x^t] </math><br />
2変数での例<br />
:<math><br />
\begin{pmatrix} a \\ b \end{pmatrix} \otimes \begin{pmatrix} a & b \end{pmatrix} \otimes \begin{pmatrix} a & b \end{pmatrix} = <br />
\begin{pmatrix} a \cdot a & a \cdot b \\ b \cdot a & b \cdot b \end{pmatrix} \otimes \begin{pmatrix} a & b \end{pmatrix} = <br />
\begin{pmatrix} aa \cdot a & aa \cdot b & ab \cdot a & ab \cdot b \\ ba \cdot a & ba \cdot b & bb \cdot a & bb \cdot b \end{pmatrix}<br />
</math> <br />
<br />
*四次モーメントは、<math> \mu_4 = E[x \otimes x^t \otimes x^t \otimes x^t] </math><br />
一般に k 次モーメントは、<math> \mu_k = E[x^{\otimes k}]</math> と書かれる。<br />
<br />
== 歴史 ==<br />
<br />
クロネッカー積は[[レオポルト・クロネッカー]]にその名を由来するが、クロネッカーが最初に定義をして用いたという証拠はわずかしかない。実際に過去には、[[ヨハン・ゲオルク・ツェーフス]]に因んで'''ツェーフス行列''' ({{lang|de|''Zehfuss''}} ''matrix'') と呼ばれたこともある。<br />
<br />
== 関連項目 ==<br />
* [[行列の乗法]]<br />
<br />
== 注記 ==<br />
{{Reflist}}<br />
<br />
== 参考文献 ==<br />
* {{citation | first1=Roger A. | last1=Horn | first2=Charles R. | last2=Johnson | year=1991 | title=Topics in Matrix Analysis | publisher=Cambridge University Press | isbn=0-521-46713-6 }}.<br />
*{{citation | first1=Anil K. | last1=Jain | year = 1989 | title=Fundamentals of Digital Image Processing | publisher= Prentice Hall | isbn=0-13-336165-9}}.<br />
* {{citation | first1=Willi-Hans | last=Steeb | year=1997 | title=Matrix Calculus and Kronecker Product with Applications and C++ Programs | publisher=World Scientific Publishing | isbn=9810232411 }}<br />
* {{citation | first1=Willi-Hans | last=Steeb | year=2006 | title=Problems and Solutions in Introductory and Advanced Matrix Calculus | publisher=World Scientific Publishing | isbn=9812569162 }}<br />
<br />
== 外部リンク ==<br />
* {{planetmath reference|id=4163|title=Kronecker product}}<br />
* [http://mathworld.wolfram.com/MatrixDirectProduct.html MathWorld Matrix Direct Product]<br />
* [http://issc.uj.ac.za/downloads/problems/newkronecker.pdf New Kronecker product problems]<br />
* [http://jeff560.tripod.com/k.html Earliest Uses: The entry on The Kronecker, Zehfuss or Direct Product of matrices has historical information.]<br />
<br />
{{DEFAULTSORT:くろねつかあせき}}<br />
[[Category:行列]]<br />
[[Category:線型代数学]]<br />
[[Category:双線型演算]]<br />
[[Category:数学に関する記事]]</div>1.114.19.125 Warning: Cannot modify header information - headers already sent by (output started at /home/users/1/sub.jp-asate/web/wiki/extensions/HeadScript/HeadScript.php:3) in /home/users/1/sub.jp-asate/web/wiki/includes/WebResponse.php on line 46