矩阵分析与多元统计12 0-1矩阵 交换矩阵与Kronecker乘积
矩陣分析與多元統計12 0-1矩陣 交換矩陣與Kronecker乘積
- 基本性質
- 用交換矩陣的構造證明基本性質
這一講介紹交換矩陣與Kronecker乘積相關的性質。對于矩陣A∈Fm×nA \in F^{m \times n}A∈Fm×n,FFF是某個數域(如實數、復數等)
vec(A)=[a1;?;an]∈Fmn×1,vec(A′)=[a1,?,am]′∈Fmn×1vec(A) = [a_1;\cdots;a_n] \in F^{mn\times 1},\ vec(A') = [a^1,\cdots,a^m]' \in F^{mn \times 1}vec(A)=[a1?;?;an?]∈Fmn×1,?vec(A′)=[a1,?,am]′∈Fmn×1
如果?Kmn∈Fmn×mn,Kmnvec(A)=vec(A′)\exists K_{mn} \in F^{mn \times mn},K_{mn}vec(A) = vec(A')?Kmn?∈Fmn×mn,Kmn?vec(A)=vec(A′),則稱KmnK_{mn}Kmn?是交換矩陣。如果B∈Fp×qB \in F^{p \times q}B∈Fp×q,定義Kronecker乘積為
?:Fm×n×Fp×q→Fmp×nqA?B=[a11B?a1nB???am1B?amnB]\otimes : F^{m \times n} \times F^{p \times q} \to F^{mp \times nq} \\ A \otimes B = \left[ \begin{matrix} a_{11}B & \cdots & a_{1n}B \\ \cdots & \cdots & \cdots \\ a_{m1}B & \cdots & a_{mn}B \\ \end{matrix} \right]?:Fm×n×Fp×q→Fmp×nqA?B=???a11?B?am1?B?????a1n?B?amn?B????
基本性質
從定義就可以看出一些基本的性質,如果用交換矩陣作用在Kronecker乘積上,則
性質3和4都是性質2的特例,在性質2中取B=bB=bB=b,則Kqn=K1n=InK_{qn}=K_{1n} = I_nKqn?=K1n?=In?;在性質2中取A=b,B=AA=b,B=AA=b,B=A,則同樣有Kqn=InK_{qn}=I_nKqn?=In?。這個地方交換矩陣的指標需要引起高度重視,因為交換矩陣的指標是根據矩陣的vecvecvec算子定義的,但此處與交換矩陣做乘積的是矩陣,所以我來說明一下指標的含義(這個推導實際上是不具有一般性的,這里只是為了說明指標方便!):記A=[a1,?,an]A=[a_1,\cdots,a_n]A=[a1?,?,an?],則
b?A=b?[a1,?,an]=[b?a1,?,b?an]=[vec(a1b′),?,vec(anb′)]∈Fmp×1b \otimes A = b \otimes [a_1,\cdots,a_n] = [b\otimes a_1,\cdots,b \otimes a_n] =[vec(a_1b'),\cdots,vec(a_nb')] \in F^{mp \times 1}b?A=b?[a1?,?,an?]=[b?a1?,?,b?an?]=[vec(a1?b′),?,vec(an?b′)]∈Fmp×1
下面計算
Kmp(b?A)=Kmp[vec(a1b′),?,vec(anb′)]=[Kmpvec(a1b′),?,Kmpvec(anb′)]K_{mp}(b \otimes A) = K_{mp}[vec(a_1b'),\cdots,vec(a_nb')] = [ K_{mp}vec(a_1b'),\cdots, K_{mp}vec(a_nb')]Kmp?(b?A)=Kmp?[vec(a1?b′),?,vec(an?b′)]=[Kmp?vec(a1?b′),?,Kmp?vec(an?b′)]
這個式子說明與交換矩陣做乘法的還是某個矩陣的vecvecvec算子的結果,這個矩陣的維數就是a1b′a_1b'a1?b′的維數,顯然a1b′∈Fm×pa_1b' \in F^{m \times p}a1?b′∈Fm×p,因此對應的交換矩陣應該是KmpK_{mp}Kmp?。
與之類似,
A?b=[a1,?,an]?b=[a1?b,?,an?b]=[vec(ba1′),…,vec(ban′)]KpmA?b=[Kpmvec(ba1′),?,Kpmvec(ban′)]A \otimes b = [a_1,\cdots,a_n] \otimes b = [a_1 \otimes b,\cdots, a_n \otimes b] = [vec(ba_1'),\dots,vec(ba_n')] \\ K_{pm} A \otimes b = [K_{pm}vec(ba_1'),\cdots,K_{pm}vec(ba_n')]A?b=[a1?,?,an?]?b=[a1??b,?,an??b]=[vec(ba1′?),…,vec(ban′?)]Kpm?A?b=[Kpm?vec(ba1′?),?,Kpm?vec(ban′?)]
這里與交換矩陣相乘的矩陣的維數是p×mp \times mp×m,因此交換矩陣是KpmK_{pm}Kpm?。將bbb看成是BBB的某個列向量,則性質1和2中交換矩陣的指標可以類似地理解:記B=[b1,?,bq]B=[b_1,\cdots,b_q]B=[b1?,?,bq?],則
A?B=[A?b1,?,A?bq]=[a1?b1,?,an?b1,a1?b2,?,an?b2,?,a1?bq,?,an?bq]=[vec(b1a1′),?,vec(b1an′),vec(b2a1′),?,vec(b2an′),?,vec(bqa1′),?,vec(bqan′)]A \otimes B = [A \otimes b_1,\cdots,A \otimes b_q] \\ = [a_1 \otimes b_1,\cdots,a_n \otimes b_1,a_1 \otimes b_2,\cdots,a_n \otimes b_2,\cdots,a_1 \otimes b_q,\cdots,a_n \otimes b_q] \\ = [vec(b_1a_1'),\cdots,vec(b_1a_n'),vec(b_2a_1'),\cdots,vec(b_2a_n'),\cdots,vec(b_qa_1'),\cdots,vec(b_qa_n')]A?B=[A?b1?,?,A?bq?]=[a1??b1?,?,an??b1?,a1??b2?,?,an??b2?,?,a1??bq?,?,an??bq?]=[vec(b1?a1′?),?,vec(b1?an′?),vec(b2?a1′?),?,vec(b2?an′?),?,vec(bq?a1′?),?,vec(bq?an′?)]
現在考慮vec(bjai′)vec(b_ja_i')vec(bj?ai′?),它的維數是p×mp\times mp×m,因此交換矩陣應該用KpmK_{p m}Kpm?,Kpm(A?B)K_{pm}(A \otimes B)Kpm?(A?B)的第n(j?1)+in(j-1)+in(j?1)+i列為
Kpmvec(bjai′)=vec(aibj′)K_{pm}vec(b_ja_i') = vec(a_ib_j')Kpm?vec(bj?ai′?)=vec(ai?bj′?)
同樣地可以行向量計算B?AB \otimes AB?A,記
A=[a1;?;am],B=[b1;?;bq]A = [a^1;\cdots;a^m],\ B= [b^1;\cdots;b^q]A=[a1;?;am],?B=[b1;?;bq]
B?A=[b1?a1;?;bq?a1;b1?a2;?;bq?a2;?;?;b1?an;?;bp?am]=[devec(b1a1′);?;devec(bpa1′);devec(b1a2′);?;devec(bpa2′);?;devec(b1am′);?;devec(bpam′)]B \otimes A = [b^1 \otimes a^1 ;\cdots;b^q \otimes a^1;b^1 \otimes a^2 ;\cdots;b^q \otimes a^2;\cdots;\cdots;b^1 \otimes a^n ;\cdots;b^p \otimes a^m] \\ = [devec(b^1a^{1'});\cdots;devec(b^pa^{1'});devec(b^1a^{2'});\cdots;devec(b^pa^{2'});\cdots;devec(b^1a^{m'});\cdots;devec(b^pa^{m'})]B?A=[b1?a1;?;bq?a1;b1?a2;?;bq?a2;?;?;b1?an;?;bp?am]=[devec(b1a1′);?;devec(bpa1′);devec(b1a2′);?;devec(bpa2′);?;devec(b1am′);?;devec(bpam′)]
其中bjai′b^ja^{i'}bjai′的維數為q×nq \times nq×n,因此交換矩陣應該用KqnK_{qn}Kqn?,(B?A)Knq(B \otimes A) K_{nq}(B?A)Knq?的第p(i?1)+jp(i-1)+jp(i?1)+j行為devec(bjai′)Knq=devec(aibj′)devec(b^ja^{i'})K_{nq} = devec(a^{i}b^{j'})devec(bjai′)Knq?=devec(aibj′)
要證明性質1只需要比較(B?A)Knq(B \otimes A) K_{nq}(B?A)Knq?與Kpm(A?B)K_{pm}(A \otimes B)Kpm?(A?B)說明他們對應位置的元素相等就可以了。
用交換矩陣的構造證明基本性質
上一講介紹了給定交換矩陣的指標時如何寫出交換矩陣:
Kmn=[In?e1(m)In?e2(m)?In?em(m)]=[Im?e1(n)Im?e2(n)?Im?en(n)]K_{mn} = \left[ \begin{matrix} I_n \otimes e^1(m)\\ I_n \otimes e^2(m) \\ \cdots \\ I_n \otimes e^m(m) \end{matrix} \right] = \left[ \begin{matrix} I_m \otimes e_1(n)& I_m \otimes e_2(n) & \cdots & I_m \otimes e_n(n) \end{matrix} \right]Kmn?=?????In??e1(m)In??e2(m)?In??em(m)??????=[Im??e1?(n)?Im??e2?(n)???Im??en?(n)?]
接下來我們用交換矩陣的表達式證明上面的基本性質。
證明
性質1。根據vec算子的性質4與Kronecker乘積的性質3計算
Kpm(A?B)=[Im?e1(p)Im?e2(p)?Im?ep(p)](A?B)=[(Im?e1(p))(A?B)(Im?e2(p))(A?B)?(Im?ep(p))(A?B)]=[A?b1A?b2?A?bp]K_{pm}(A \otimes B) = \left[ \begin{matrix} I_m \otimes e^1(p)\\ I_m \otimes e^2(p) \\ \cdots \\ I_m \otimes e^p(p) \end{matrix} \right] (A \otimes B) = \left[ \begin{matrix} (I_m \otimes e^1(p))(A \otimes B)\\ (I_m \otimes e^2(p))(A \otimes B) \\ \cdots \\ (I_m \otimes e^p(p))(A \otimes B) \end{matrix} \right]= \left[ \begin{matrix} A \otimes b^1\\ A \otimes b^2 \\ \cdots \\ A \otimes b^p \end{matrix} \right] Kpm?(A?B)=?????Im??e1(p)Im??e2(p)?Im??ep(p)??????(A?B)=?????(Im??e1(p))(A?B)(Im??e2(p))(A?B)?(Im??ep(p))(A?B)??????=?????A?b1A?b2?A?bp??????
下面計算Knq(B′?A′)K_{nq}(B' \otimes A')Knq?(B′?A′),
Knq(B′?A′)=[Iq?e1(n)Iq?e2(n)?Iq?en(n)](B′?A′)=[B′?a1′B′?a2′?B?an′]K_{nq}(B' \otimes A')=\left[ \begin{matrix} I_q \otimes e^1(n)\\ I_q \otimes e^2(n) \\ \cdots \\ I_q \otimes e^n(n) \end{matrix} \right] (B' \otimes A') = \left[ \begin{matrix} B' \otimes a_1' \\ B'\otimes a_2' \\ \cdots \\ B \otimes a_n' \end{matrix} \right] Knq?(B′?A′)=?????Iq??e1(n)Iq??e2(n)?Iq??en(n)??????(B′?A′)=?????B′?a1′?B′?a2′??B?an′???????
不難發現第一個結果和第二個結果互為轉置。
性質2。根據交換矩陣的性質以及性質1,
Kpm(A?B)=(B?A)Kqn?Kpm(A?B)Kqn?1=B?A?Kpm(A?B)Knq=B?AK_{pm}(A \otimes B) = (B \otimes A)K_{qn} \Rightarrow K_{pm}(A \otimes B)K_{qn}^{-1} = B \otimes A \\ \Rightarrow K_{pm}(A \otimes B)K_{nq} = B \otimes AKpm?(A?B)=(B?A)Kqn??Kpm?(A?B)Kqn?1?=B?A?Kpm?(A?B)Knq?=B?A
證畢
另外還有一些有趣的公式,摘錄在這里,證明方法也都是用交換矩陣的表達式結合Kronecker乘積與vec算子的性質進行計算。
類似地Kronecker算子、vec算子與交換矩陣構成的恒等式還有很多,它們的主要目的是解構復雜的大矩陣中的元素排列規律,并把這種大矩陣表示成更簡單的小矩陣的運算,在之后矩陣的微分中這種技巧是非常常用的。
總結
以上是生活随笔為你收集整理的矩阵分析与多元统计12 0-1矩阵 交换矩阵与Kronecker乘积的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: UA MATH564 概率论VI 数理统
- 下一篇: Julia程序设计1 介绍和基础数学运算