[机器学习] UFLDL笔记 – Convolutional Neural Network – 矩阵运算


前言

  卷积神经网络的核心操作就是各种矩阵运算,在前向传播和反向传播中的各种形式的矩阵运算构成了CNN的计算体系,本文将在卷积神经网络(Convolutional Neural Network)的背景下对相关的矩阵运算进行梳理,涉及矩阵乘积(matrix product)、元素对应乘积(element-wise product)、卷积操作(convolution)、相关操作和克罗内克积(kronecker product)等,在学习CNN的反向传播之前,我们必须先搞清楚这几种矩阵操作的计算过程,希望本文可以帮助大家理解卷积神经网络(CNN)提供一些帮助!

  文章小节安排如下:   1)矩阵乘积(matrix product)   2)元素对应乘积(element-wise product)   3)卷积操作(convolution)   4)相关操作   5)克罗内克积(kronecker product)   6)总结   

一、矩阵乘积(matrix product)

1.1 矩阵乘积(matrix product)定义

  矩阵的乘法运算不多说了,回顾一下最基本的定义:   设 A 为 m x p 的矩阵,B为 p x n 的矩阵,则称 C = AB 为矩阵A与B的乘积,且C为 m x n的矩阵,其中矩阵C中的第 i 行第 j 列元素可以表示为:

1.2 矩阵乘积的运算规律

  分配律:A(B+B) = AB + AC   结合律:A(BC)=(AB)C   

二、元素对应乘积(element-wise product)

2.1 元素对应乘积(element-wise product)定义

  元素对应乘积也称为Hadamard乘积(Hadamard product),矩阵A,B的Hadamard乘积定义为二者对应位置的乘积,也有人称作相关操作,记作:A⊙B   令C=A⊙B,则矩阵C中的第 i 行第 j 列元素可以表示为:   

2.2 Hadamard乘积计算示意图   

  Hadamard乘积的计算图示如下:

  

2.3 Hadamard乘积的运算规律   

  交换律:A⊙B=B⊙A   结合律:A⊙(B⊙C)=(A⊙B)⊙C   分配律:A⊙(B+C)=A⊙B+A⊙C

  参考:   Hadamard product (matrices)      

三、卷积操作(convolution)

3.1 卷积操作(convolution)定义

  

3.2 卷积操作计算示意图

  卷积操作的计算示意图如下:

原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/tech/pnotes/290760.html

(0)
上一篇 2022年10月8日 18:51
下一篇 2022年10月8日 18:52

相关推荐

发表回复

登录后才能评论