【技术实现步骤摘要】
一种剪枝神经网络模型的方法和装置
本申请实施例涉及深度学习技术,尤其涉及一种剪枝神经网络模型的方法和装置。
技术介绍
在计算机视觉领域中随着深度学习技术的不断发展,网络表达能力虽然逐渐增强,然而需要的资源消耗也越来越大,过大的资源消耗在边缘移动设备等资源受限的环境下是无法满足的,模型大小和推理速度成为了深度学习落地的重要影响因素。因此,能够加速网络推理速度,减少模型大小的网络剪枝技术成为了热点。通常,神经网络的剪枝技术可以包括如下四个阶段:1.找到可以被裁减的通道。2.根据上层剪枝算法,求取剪枝结果。3.得到裁剪后的模型。4.对裁剪后的模型进行微调或重训练。鉴于深度学习的前端框架高度封装的特性,以及不同网络拓扑结构的限制,现有剪枝工具往往需要人工参与上述阶段1和阶段3的处理,比如通过超参控制模型初始化;又或者通过将被裁剪的权重置为0的方式达到模拟剪枝的效果。这样的剪枝方式以及高度封装的神经网络前端框架,使得模型训练逻辑之间有非常大的耦合,不利于剪枝方案的推广。专 ...
【技术保护点】
1.一种剪枝神经网络模型的方法,其特征在于,所述方法包括:/n获取目标神经网络模型的模型结构数据,所述模型结构数据包括多个节点的节点信息;/n根据所述多个节点的节点信息确定所述目标神经网络模型中可被剪枝的卷积层信息;/n将所述可被剪枝的卷积层信息提供给上层的剪枝算法,以由所述剪枝算法根据所述可被剪枝的卷积层信息确定所述目标神经网络模型中的对应卷积层的剪枝结果;/n获取所述剪枝算法确定的所述剪枝结果,并根据所述剪枝结果对所述模型结构数据进行修改,以构建剪枝后的目标神经网络模型。/n
【技术特征摘要】
1.一种剪枝神经网络模型的方法,其特征在于,所述方法包括:
获取目标神经网络模型的模型结构数据,所述模型结构数据包括多个节点的节点信息;
根据所述多个节点的节点信息确定所述目标神经网络模型中可被剪枝的卷积层信息;
将所述可被剪枝的卷积层信息提供给上层的剪枝算法,以由所述剪枝算法根据所述可被剪枝的卷积层信息确定所述目标神经网络模型中的对应卷积层的剪枝结果;
获取所述剪枝算法确定的所述剪枝结果,并根据所述剪枝结果对所述模型结构数据进行修改,以构建剪枝后的目标神经网络模型。
2.根据权利要求1所述的剪枝神经网络模型的方法,其特征在于,所述节点信息包括节点所在的卷积层名称;所述根据所述多个节点的节点信息确定所述目标神经网络模型中可被剪枝的卷积层信息包括:
根据所述多个节点的节点信息构建所述目标神经网络模型的网络结构拓扑图;
从所述网络结构拓扑图的起始节点开始进行广度优先遍历,判断各节点及其子节点是否均为卷积节点;
若当前遍历的节点及其子节点均为卷积节点,则记录该节点对应的卷积层名称,作为可被剪枝的卷积层信息。
3.根据权利要求2所述的剪枝神经网络模型的方法,其特征在于,所述节点信息还包括操作属性信息以及父节点索引信息;
所述根据所述多个节点的节点信息构建所述目标神经网络模型的网络结构拓扑图包括:
遍历各节点,针对当前遍历到的节点,判断该节点的操作属性信息是否零值;
若否,则将该节点加入到网络结构拓扑图中,并根据该节点的父节点索引信息确定该节点的父节点是否在所述网络结构拓扑图中;
若该节点的父节点在所述网络结构拓扑图中,则在所述网络结构拓扑图中建立该节点与所述父节点的拓扑关系。
4.根据权利要求3所述的剪枝神经网络模型的方法,其特征在于,所述将该节点加入到网络结构拓扑图中包括:
在预先生成的地址字典中查找该节点的地址信息;
将所述地址信息加入所述网络结构拓扑图中。
5.根据权利要求3所述的剪枝神经网络模型的方法,其特征在于,所述根据该节点的父节点索引信息确定该节点的父节点是否在所述网络结构拓扑图中包括:
根据该节点的父节点索引信息定位到所述父节点的节...
【专利技术属性】
技术研发人员:项阳,
申请(专利权)人:广州市百果园信息技术有限公司,
类型:发明
国别省市:广东;44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。