尤其是在LSTM相关的论文中,⊙这个符号简直太常见了,这里整理一下。

Keywords: 矩阵/向量

反向传播算法是以常见线性代数操作为基础——诸如向量加法,向量与矩阵乘法等运算。但其中一个操作相对不是那么常用。具体来讲,假设 s 和 t 是两个有相同维数的向量。那么我们用 s⊙t 来表示两个向量的对应元素**(elementwise)**相乘。因此 s⊙t 的元素 (s⊙t)_j=s_jt_j。

$$ \begin{bmatrix} 1\\ 2 \end{bmatrix} \odot \begin{bmatrix} 3\\ 4 \end{bmatrix} = \begin{bmatrix} 1\times3\\ 2\times4 \end{bmatrix} = \begin{bmatrix} 3\\ 8 \end{bmatrix} $$

这种对应元素相乘有时被称为Hadamard积(Hadamard product)或Schur积(Schur product)。我们将称它为Hadamard积。优秀的矩阵库通常会提供Hadamard积的快速实现,这在实现反向传播时将会有用。