矩阵运算时⊗和·的区别?

文章介绍了矩阵运算中的两种重要概念——张量积(Kronecker积)和矩阵乘法。张量积生成一个更大的矩阵,其元素是原矩阵对应元素的乘积,而矩阵乘法是通过行与列对应元素的乘积求和得到新矩阵。这两种运算在不同的数学和工程领域,如神经网络和量子力学,有广泛应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

矩阵运算中,符号 ⊗ \otimes 表示的是张量积(tensor product),而符号 ⋅ \cdot 表示的是矩阵乘法(matrix multiplication),两者是有区别的。

张量积( ⊗ \otimes

张量积是一种针对矩阵和向量的运算,它可以用来将两个矩阵或向量组合成一个更大的矩阵或向量。具体来说,如果 A A A 是一个 m × n m \times n m×n 的矩阵, B B B 是一个 p × q p \times q p×q 的矩阵,那么它们的张量积 A ⊗ B A \otimes B AB 就是一个 m p × n q mp \times nq mp×nq 的矩阵,其中每个元素都是由 A A A B B B 对应位置上的元素相乘得到的。

例如,如果 A = [ 1 2 3 4 ] A = \begin{bmatrix} 1 & 2 \\ 3 & 4 \end{bmatrix} A=[1324] B = [ 5 6 7 8 ] B = \begin{bmatrix} 5 & 6\\ 7 & 8 \end{bmatrix} B=[5768],那么它们的张量积 A ⊗ B A \otimes B AB 就是一个 4 × 4 4 \times 4 4×4 的矩阵:

A ⊗ B = [ 1 × B 2 × B 3 × B 4 × B ] = [ 5 6 10 12 7 8 14 16 15 18 20 24 21 24 28 32 ] A \otimes B = \begin{bmatrix} 1 \times B & 2 \times B \\ 3 \times B & 4 \times B \end{bmatrix} = \begin{bmatrix} 5 & 6 & 10 & 12 \\ 7 & 8 & 14 & 16 \\ 15 & 18 & 20 & 24 \\ 21 & 24 & 28 & 32 \end{bmatrix} AB=[1×B3×B2×B4×B]= 5715216818241014202812162432

张量积的应用非常广泛,例如在图像处理、神经网络和量子力学等领域都有着重要的应用。

矩阵乘法( ⋅ \cdot

矩阵乘法是一种针对矩阵的运算,它将两个矩阵相乘得到一个新的矩阵。具体来说,如果 A A A 是一个 m × n m \times n m×n 的矩阵, B B B 是一个 n × p n \times p n×p 的矩阵,那么它们的乘积 C = A ⋅ B C = A \cdot B C=AB 就是一个 m × p m \times p m×p 的矩阵,其中 C i , j C_{i,j} Ci,j 的值等于 A A A 的第 i i i 行和 B B B 的第 j j j 列对应元素的乘积之和。

例如,如果 A = [ 1 2 3 4 ] A = \begin{bmatrix} 1 & 2 \\ 3 & 4 \end{bmatrix} A=[1324] B = [ 5 6 7 8 ] B = \begin{bmatrix} 5 & 6 \\ 7 & 8 \end{bmatrix} B=[5768],那么它们的乘积 C = A ⋅ B C = A \cdot B C=AB 就是一个 2 × 2 2 \times 2 2×2 的矩阵:
在矩阵运算中, ⋅ \cdot 表示的是矩阵的乘法,而 ⊗ \otimes 表示的是矩阵的 Kronecker 积运算。矩阵的乘法是针对两个矩阵的运算,对于两个矩阵 A A A B B B,当且仅当 A A A 的列数等于 B B B 的行数时,才能进行乘法运算 A ⋅ B A\cdot B AB。运算结果为一个矩阵 C C C,其中 C C C 的行数等于 A A A 的行数,列数等于 B B B 的列数。例如,对于两个矩阵 A ∈ R m × n A\in R^{m\times n} ARm×n B ∈ R n × p B\in R^{n\times p} BRn×p,它们的乘积 C = A ⋅ B ∈ R m × p C=A\cdot B\in R^{m\times p} C=ABRm×p 定义为:

C i j = ∑ k = 1 n A i k B k j C_{ij}=\sum_{k=1}^n A_{ik}B_{kj} Cij=k=1nAikBkj

而 Kronecker 积则是一种针对两个矩阵的运算,对于两个矩阵 A ∈ R m 1 × n 1 A\in R^{m_1\times n_1} ARm1×n1 B ∈ R m 2 × n 2 B\in R^{m_2\times n_2} BRm2×n2,它们的 Kronecker 积 C = A ⊗ B ∈ R m 1 m 2 × n 1 n 2 C=A\otimes B\in R^{m_1m_2\times n_1n_2} C=ABRm1m2×n1n2 定义为:

C ( i − 1 ) m 2 + j , ( k − 1 ) n 2 + l = A i k B j l C_{(i-1)m_2+j,(k-1)n_2+l}=A_{ik}B_{jl} C(i1)m2+j,(k1)n2+l=AikBjl

其中 i = 1 , ⋯   , m 1 , j = 1 , ⋯   , m 2 , k = 1 , ⋯   , n 1 , l = 1 , ⋯   , n 2 i=1,\cdots,m_1,j=1,\cdots,m_2,k=1,\cdots,n_1,l=1,\cdots,n_2 i=1,,m1,j=1,,m2,k=1,,n1,l=1,,n2

简单来说,矩阵乘法针对的是两个矩阵的行列,而 Kronecker 积针对的是两个矩阵中每个元素的运算。在实际的应用中,Kronecker 积通常被用于矩阵的展开和卷积等操作,而矩阵乘法则是计算神经网络中各层之间权重和输入数据的运算。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小怪兽会微笑

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值