一种面向基于遮挡的CNN解释的混合推理方法

文档序号:38678953发布日期:2024-07-16 22:27阅读:22来源:国知局
一种面向基于遮挡的CNN解释的混合推理方法

本发明属于cnn推理领域,尤其涉及一种面向基于遮挡的cnn解释的混合推理方法。


背景技术:

1、在高风险应用中(例如医学诊断和自动驾驶等),基于遮挡的解释(occlusion-based explanation,obe)是解释卷积神经网络(convolution neural network,cnn)推理结果的一种普遍方法,它允许用户深入了解对推理结果至关重要的图像区域。如图1所示,给定一名患者的胸部x光线图像,obe的工作原理如下:1)用一个小正方形补丁遮挡原始图像的一个区域;2)对被遮挡的图像进行推理,病理结果以及概率可能会发生改变;3)通过在图像上移动补丁来重复上述两步,突出对推理重要的区域。例如,放射科医生可以在这些区域进行更详细的检查以进行探索。随着补丁位置的变化,obe需要评估大量被遮挡的图像。然而,这些被遮挡的图像与原始图片之间大部分像素都相同。因此,obe中大部分cnn推理计算是冗余的。

2、为了消除这些冗余推理计算,已有加速obe的系统采用了增量推理方法。如图2所示,利用补丁的位置以及原始图像在cnn中产生的所有张量,增量推理只将补丁所在的区域作为cnn的更新输入进行推理计算。此处人们将全量推理和增量推理在某一层上的执行计划分别称为全量计划和增量计划。然而,如图3所示,由于卷积核在更新区域上的计算特性,为了计算每一层的更新输出,增量计划还需要进一步在该层上根据其更新输入来准备读入区域。增量推理方法没有考虑到增量计划在cnn的某些层上并不总是优于全量计划。这是因为增量计划中准备操作的额外开销可能会减慢增量计划的执行速度,最终使其不如全量计划。

3、总的来说,现有方法局限性在于,其在cnn的所有层上均执行全量计划或增量计划,无法自适应地在cnn的每一层中选择和应用合适的计划以加速obe推理过程。


技术实现思路

1、本发明的目的是提出一种面向基于遮挡的cnn解释的混合推理方法,该方法为cnn中的每一层选择全量计划或增量计划,最终为整个cnn生成高性能计划组合。面对未引入空间和通道注意力机制的cnn以及基于空间和通道注意力机制的cnn,本发明分别提出了启发式算法和动态规划算法,来自适应地筛选出对性能最高的计划组合。

2、实现本发明目的的具体技术方案是:

3、一种面向基于遮挡的cnn解释的混合推理方法,该方法首先于推理执行前以最短执行时间为目标,利用启发式算法或动态规划算法为cnn中的每一层选择全量计划或增量计划;随后,该方法于推理过程中在cnn中的每一层上执行选定的计划,其特点是所述方法包括以下具体步骤:

4、步骤a:面对未引入空间和通道注意力机制的cnn以及基于空间和通道注意力机制的cnn,分别利用启发式算法和动态规划算法为cnn中的每一层选择全量计划或增量计划;所有层上的计划组成一个计划组合,这个计划组合使得cnn的执行时间最短;

5、步骤b:根据步骤a中得到的计划组合,在执行cnn每一层时应用计划组合中该层对应的计划;其中:

6、所述启发式算法包括如下步骤:

7、步骤1.1:分别为增量计划和全量计划建立代价模型;具体为:全量计划或增量计划p在层l上的执行时间cp(l)分为准备时间pre(l)与计算时间com(l);其中,dr表示层l所需计算的数据量,wr表示读取数据的内存访问速度;com(l)=wl:tflopl+rl:t,flopl表示层l计算过程中的浮点运算次数,wl:t和rl:t则是特定于层l的类型的系数;

8、步骤1.2:利用代价模型在cnn中寻找一个截断层,在截断层之前的层使用增量计划,在截断层之后的层使用全量计划;

9、所述动态规划算法包括如下步骤:

10、步骤2.1:将cnn中的层分类为分叉层、合并层以及分支层;其中,分叉层是含有多个下游层的层,合并层是含有多个上游层的层,而cnn中其余的层则是分支层;

11、步骤2.2:遍历整个cnn,将相邻的分叉层和合并层之间的分支层封装入一个抽象层,得到重组的cnn;

12、步骤2.3:利用重组的cnn构建重组的计划转换图;重组的cnn中的每一层在重组的计划转换图中均有对应的若干顶点,每个顶点代表该层的候选计划;具体为:若为抽象层且其中封装了n个分支层,由于每个分支层能够使用增量计划或全量计划,该抽象层在重组的计划转换图中包含2n个顶点,分别表示这n个分支层的一种计划组合;若非抽象层,则该层在重组的计划转换图中包含2个顶点,分别表示增量计划和全量计划;此外,重组的计划转换图中,相邻层对应的顶点之间两两连线;

13、步骤2.4:利用代价模型,在重组的计划转换图上搜索最小代价的路径,该路径所经过的顶点即代表了执行时间最短的计划组合。

14、本发明的有益效果包括:

15、与现有方法相比,本发明不再局限于在cnn的所有层上均执行全量计划或增量计划,而是提出了混合推理方法,能够在cnn推理过程中交替执行全量计划和增量计划。本发明面向未引入空间和通道注意力机制的cnn以及基于空间和通道注意力机制的cnn分别提出了启发式算法和动态规划算法,能够有效降低筛选计划组合的开销,从而支持系统快速且自适应地采用高性能的计划组合,最终降低运行时间。



技术特征:

1.一种面向基于遮挡的cnn解释的混合推理方法,其特征在于,所述方法包括以下具体步骤:


技术总结
本发明公开了一种面向基于遮挡的CNN解释的混合推理方法,其为CNN中的每一层选择全量计划或增量计划以生成执行代价最低计划组合,并在CNN执行过程中应用该计划组合。所述方法的特点在于能够为不同的CNN自适应地生成高性能的计划组合,包括:面对未引入空间和通道注意力机制的CNN时,使用基于代价模型的启发式算法来生成计划组合;面对基于空间和通道注意力机制的CNN时,使用动态规划算法来生成计划组合。本发明能够有效缩短基于遮挡的CNN解释的执行时间。

技术研发人员:徐辰,丁光耀,钱卫宁
受保护的技术使用者:华东师范大学
技术研发日:
技术公布日:2024/7/15
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1