编写用于3D卷积slowfast的混合剪枝算法:基于特征图 RoI 区域平均激活值的滤波器剪枝算法和应用于SlowFast 动作识别 3D CNN 的混合剪枝策略。该剪枝算法通过利用特征图平均激活值估计滤波 器在推理过程中被激活的概率从而评价滤波器对网络的重要程度,并通过只对 RoI 区域计算 平均激活值屏蔽了背景区域激活值干扰。混合剪枝策略 针对 SlowFast 网络快分支、慢分支各自特点对两分支应用不同剪枝算法。Slow 分支使用 L1 算法,Fast 分支使用 AAoR 算法的这种混合剪枝
时间: 2023-07-15 13:12:00 浏览: 155
slowfast-network 何凯明源码
算法可以分为以下几个步骤:
1. 计算特征图的平均激活值
对于每个滤波器,我们可以计算其在特征图上的平均激活值,这可以通过将每个滤波器的输出与特征图相乘并取平均值来实现。该平均激活值可以被看作是该滤波器在推理中被激活的概率,因此可以用来评估滤波器的重要程度。
2. 屏蔽背景区域激活值干扰
我们只对 RoI 区域计算平均激活值,因为背景区域可能会干扰我们评估滤波器重要性的结果。在计算平均激活值时,我们只考虑 RoI 区域内的像素值。
3. 基于平均激活值进行滤波器剪枝
我们可以根据滤波器的平均激活值来决定是否将其剪枝。具体来说,我们可以设定一个阈值,如果滤波器的平均激活值低于该阈值,则将其剪枝。
4. 针对 SlowFast 网络应用不同剪枝算法
我们可以针对 SlowFast 网络的快分支和慢分支分别应用不同的剪枝算法。具体来说,我们可以使用 L1 算法对 Slow 分支进行剪枝,使用 AAoR 算法对 Fast 分支进行剪枝。这是因为 Slow 分支和 Fast 分支具有不同的特点,需要采用不同的剪枝策略。
5. 混合剪枝策略
最后,我们可以将上述两种剪枝算法进行混合,得到一个混合剪枝策略。具体来说,我们可以在 Slow 分支中使用 RoI 平均激活值滤波器剪枝算法,而在 Fast 分支中使用 AAoR 算法。这种混合剪枝策略可以更好地利用 SlowFast 网络的不同特征,从而实现更好的剪枝效果。
阅读全文