克罗内克积

数学上，克罗内克积（Kronecker product）是两个任意大小的矩阵间的运算，表示为⊗。简单地说，就是将前一个矩阵的每个元素乘上后一个完整的矩阵。克罗内克积是外积从向量到矩阵的推广，也是张量积在标准基下的矩阵表示。

尽管没有明显证据证明德国数学家利奥波德·克罗内克是第一个定义并使用这一运算的人，克罗内克积还是以其名字命名。在历史上，克罗内克积曾以约翰·格奥尔格·泽哈斯（Johann Georg Zehfuss）名字命名为泽哈斯矩阵。

## 定义

如果A是一个 m × n 的矩阵，而B是一个 p × q 的矩阵，克罗内克积$A \otimes B$则是一个 mp × nq 的分块矩阵

$$A \otimes B = \begin{bmatrix} a_{11} B & \cdots & a_{1n}B \\ \vdots & \ddots & \vdots \\ a_{m1} B & \cdots & a_{mn} B \end{bmatrix}.$$

更具体地可表示为

$$A \otimes B = \begin{bmatrix} <pre> a_{11} b_{11} & a_{11} b_{12} & \cdots & a_{11} b_{1q} & \cdots & \cdots & a_{1n} b_{11} & a_{1n} b_{12} & \cdots & a_{1n} b_{1q} \\ a_{11} b_{21} & a_{11} b_{22} & \cdots & a_{11} b_{2q} & \cdots & \cdots & a_{1n} b_{21} & a_{1n} b_{22} & \cdots & a_{1n} b_{2q} \\ \vdots & \vdots & \ddots & \vdots & & & \vdots & \vdots & \ddots & \vdots \\ a_{11} b_{p1} & a_{11} b_{p2} & \cdots & a_{11} b_{pq} & \cdots & \cdots & a_{1n} b_{p1} & a_{1n} b_{p2} & \cdots & a_{1n} b_{pq} \\ \vdots & \vdots & & \vdots & \ddots & & \vdots & \vdots & & \vdots \\ \vdots & \vdots & & \vdots & & \ddots & \vdots & \vdots & & \vdots \\ a_{m1} b_{11} & a_{m1} b_{12} & \cdots & a_{m1} b_{1q} & \cdots & \cdots & a_{mn} b_{11} & a_{mn} b_{12} & \cdots & a_{mn} b_{1q} \\ a_{m1} b_{21} & a_{m1} b_{22} & \cdots & a_{m1} b_{2q} & \cdots & \cdots & a_{mn} b_{21} & a_{mn} b_{22} & \cdots & a_{mn} b_{2q} \\ \vdots & \vdots & \ddots & \vdots & & & \vdots & \vdots & \ddots & \vdots \\ a_{m1} b_{p1} & a_{m1} b_{p2} & \cdots & a_{m1} b_{pq} & \cdots & \cdots & a_{mn} b_{p1} & a_{mn} b_{p2} & \cdots & a_{mn} b_{pq} </pre> \end{bmatrix}.$$

我们可以更紧凑地写为$$(A\otimes B)_{p(r-1)+v, q(s-1)+w} = a_{rs} b_{vw}$$

### 例子

$<pre> \begin{bmatrix} 1 & 2 \\ 3 & 1 \\ \end{bmatrix} </pre> \otimes <pre> \begin{bmatrix} 0 & 3 \\ 2 & 1 \\ \end{bmatrix} </pre> = <pre> \begin{bmatrix} 1\cdot 0 & 1\cdot 3 & 2\cdot 0 & 2\cdot 3 \\ 1\cdot 2 & 1\cdot 1 & 2\cdot 2 & 2\cdot 1 \\ 3\cdot 0 & 3\cdot 3 & 1\cdot 0 & 1\cdot 3 \\ 3\cdot 2 & 3\cdot 1 & 1\cdot 2 & 1\cdot 1 \\ \end{bmatrix} </pre> = <pre> \begin{bmatrix} 0 & 3 & 0 & 6 \\ 2 & 1 & 4 & 2 \\ 0 & 9 & 0 & 3 \\ 6 & 3 & 2 & 1 \end{bmatrix} </pre>$.

## 特性

### 双线性和结合律

克罗内克积是张量积的特殊形式，因此满足双线性与结合律：

$$A \otimes (B+C) = A \otimes B + A \otimes C \qquad \mbox{(if } B \mbox{ and } C \mbox{ have the same size)},$$

$$(A+B) \otimes C = A \otimes C + B \otimes C \qquad \mbox{(if } A \mbox{ and } B \mbox{ have the same size)},$$

$$(kA) \otimes B = A \otimes (kB) = k(A \otimes B),$$

$$(A \otimes B) \otimes C = A \otimes (B \otimes C),$$

其中，A, B 和 C 是矩阵，而 k 是常量。

克罗内克积不符合交换律：通常，A ⊗ B 不同于 B ⊗ A。

A ⊗ B和B ⊗ A是排列等价的，也就是说，存在排列矩阵P和Q，使得

$$A \otimes B = P \, (B \otimes A) \, Q.$$

如果A和B是方块矩阵，则A ⊗ B和B ⊗ A甚至是排列相似的，也就是说，我们可以取P = QT。

### 混合乘积性质

如果A、B、C和D是四个矩阵，且矩阵乘积AC和BD存在，那么：

$$(\mathbf{A} \otimes \mathbf{B})(\mathbf{C} \otimes \mathbf{D}) = \mathbf{AC} \otimes \mathbf{BD}.$$

这个性质称为“混合乘积性质”，因为它混合了通常的矩阵乘积和克罗内克积。于是可以推出，A $\,\otimes\,$ B是可逆的当且仅当A和B是可逆的，其逆矩阵为：

$$(\mathbf{A} \otimes \mathbf{B})^{-1} = \mathbf{A}^{-1} \otimes \mathbf{B}^{-1}.$$

### 克罗内克和

如果A是n × n矩阵，B是m × m矩阵，$\mathbf{I}_k$表示k × k单位矩阵，那么我们可以定义克罗内克和$\oplus$为：

$$\mathbf{A} \oplus \mathbf{B} = \mathbf{A} \otimes \mathbf{I}_m + \mathbf{I}_n \otimes \mathbf{B}.$$

### 谱

假设A和B分别是大小为n和q的方块矩阵。设λ1，......，λn为A的特征值，μ1，......，μq为B的特征值。那么A $\,\otimes\,$ B的特征值为：

$$\lambda_i \mu_j, \qquad i=1,\ldots,n ,\, j=1,\ldots,q.$$

于是可以推出，两个矩阵的克罗内克积的迹和行列式为：

$$\operatorname{tr}(\mathbf{A} \otimes \mathbf{B}) = \operatorname{tr} \mathbf{A} \, \operatorname{tr} \mathbf{B} \quad\mbox{and}\quad \det(\mathbf{A} \otimes \mathbf{B}) = (\det \mathbf{A})^q (\det \mathbf{B})^n.$$

### 奇异值

如果A和B是长方矩阵，那么我们可以考虑它们的奇异值。假设A有rA个非零的奇异值，它们是：

$$\sigma_{\mathbf{A},i}, \qquad i = 1, \ldots, r_\mathbf{A}.$$

类似地，设B的非零奇异值为：

$$\sigma_{\mathbf{B},i}, \qquad i = 1, \ldots, r_\mathbf{B}.$$

那么克罗内克积A $\,\otimes\,$ B有rArB个非零奇异值，它们是：

$$\sigma_{\mathbf{A},i} \sigma_{\mathbf{B},j}, \qquad i=1,\ldots,r_\mathbf{A} ,\, j=1,\ldots,r_\mathbf{B}.$$

由于一个矩阵的秩等于非零奇异值的数目，因此我们有：

$$\operatorname{rank}(\mathbf{A} \otimes \mathbf{B}) = \operatorname{rank} \mathbf{A} \, \operatorname{rank} \mathbf{B}.$$

### 与抽象张量积的关系

矩阵的克罗内克积对应于线性映射的抽象张量积。特别地，如果向量空间V、W、X和Y分别具有基{v1, ... , vm}、 {w1, ... , wn}、{x1, ... , xd}和{y1, ... , ye}，且矩阵A和B分别在恰当的基中表示线性变换S : V → X和T : W → Y，那么矩阵A ⊗ B表示两个映射的张量积S ⊗ T : V ⊗ W → X ⊗ Y，关于V ⊗ W的基{v1 ⊗ w1, v1 ⊗ w2, ... , v2 ⊗ w1, ... , vm ⊗ wn}和X ⊗ Y的类似基。

### 与图的乘积的关系

两个图的邻接矩阵的克罗内克积是它们的张量积图的邻接矩阵。两个图的邻接矩阵的克罗内克和，则是它们的笛卡儿积图的邻接矩阵。参见第96个练习的答案。

### 转置

克罗内克积转置运算符合分配律：

$$(A\otimes B)^T = A^T \otimes B^T.$$

## 矩阵方程

克罗内克积可以用来为一些矩阵方程得出方便的表示法。例如，考虑方程AXB = C，其中A、B和C是给定的矩阵，X是未知的矩阵。我们可以把这个方程重写为

$$(B^{T} \otimes A) \, \operatorname{vec}(X) = \operatorname{vec}(AXB) = \operatorname{vec}(C).$$

这样，从克罗内克积的性质可以推出，方程AXB = C具有唯一的解，当且仅当A和B是非奇异矩阵。Horn.

在这里，vec(X)表示矩阵X的向量化，它是把X的所有列堆起来所形成的列向量。

如果把X的行堆起来，形成列向量x，则$AXB$也可以写为$(A \otimes B^{T})x$ Jain。

## 外部链接

- MathWorld Matrix Direct Product