计算卷积神经网络中MAC数量的公式?

时间:2019-05-14 21:18:21

标签: neural-network conv-neural-network

我找不到正确的公式来计算CNN中一个卷积层中MAC的数量。 我从Quora尝试了这个公式

[((H-K+S) /S) *((W-L+S)/S)) *C*M*N] 

其中: 输入要素图的H W大小; K L过滤器尺寸 大步走 输入的C通道 M输出功能图 N个输入要素图

我举了一个例子: 1个输入图像5x5x1 1个滤镜3x3x1 然后,我进行了一次简单的计算,获得了81个MAC。 但是当我使用上面提到的公式ai时得到9。

我认为有些事情我不理解。

预先感谢

1 个答案:

答案 0 :(得分:0)

假设您具有以下参数:
K是您的内核宽度和高度
C_in是输入通道数
C_out是输出通道数
H_out和W_out分别为输出矩阵的高度和宽度

然后,您需要进行(K^2) * C_in MAC操作来计算每个输出特征图 您将拥有H_out * W_out * C_out个这些输出要素图。 那么总的MAC将是:

(K^2) * C_in * H_out * W_out * C_out