模型计算量

由于并不是专门做加速,但是有必要学习一下。需要加速的场景:1.手机端;2.实时场景;3.嵌入式设备。决定网络的速度无非是网络设计和输入数据大小。网络设计包括:权重大小,运行过程产生的中间变量大小;模型参数大小与速度成正比。网络的运算速度由flops决定,对于神经网络里占主要运算量的矩阵计算,每一个单次的x*w+b为一个MACCs计算,因此两个n维向量的点乘需要n个MACCs运算,一个MACCs就是一个运算单位。

全连接层计算:输入I为n维,输出O为m维,则需要n*m个MACCs,(2n\-1)*J个flops。

激活函数:激活函数不涉及矩阵计算,因此,激活函数里有m个操作,输入n维时其计算量就是n*m个flops计算量。

卷积层:卷积层输入一般是C*H*W,假如卷积核的尺寸为k,卷积核个数为n,输出通道数为ci,那么计算量为C*H*W*k*n*ci个MACCs,这是基于stride=1的情况下。

深度可分离卷积:除了将输入进来的通道拆开单独计算,其他操作与普通卷积无异,主要是深度分离的卷积和点卷积。则深度可分离卷积的计算量为(k*k*C*H*W)+(C*H'*W*ci)。

因此,加大stride的步数或者采用深度可分离卷积都是可以减少计算量的。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值