Kronecker Product: A Tutorial
Kronecker product is an operation in matrix and tensor computations, playing an important role in many machine learning models. Today, we intend to give a brief introduction to Kronecker product and present some examples for describing the properties of Kronecker product.
Definition of Kronecker Product
For any m-by-n matrix X and p-by-q matrix Y, then the Kronecker product is defined as follows,
where the symbol ⊗ denotes the Kronecker product. The resulting matrix X ⊗ Y is of size (mp) × (nq), which is also a block matrix with mn blocks.
Following the above definition, we can also introduce the following one:
which has pq blocks. This matrix Y ⊗ X is very different from the above matrix X ⊗ Y, though they have same size.
From this toy example, we can find that Y ⊗ X is different from X ⊗ Y. The following example shows the transpose on the Kronecker product.
The above examples of Kronecker product work on matrices. We can also introduce the Kronecker product to vectors.