基于人工神经网络类别的修剪制造技术

技术编号:18351339 阅读:47 留言:0更新日期:2018-07-02 01:11
本发明专利技术涉及基于人工神经网络类别的修剪。实现和使用用于针对特定监视状况配置人工神经网络的技术的方法和包括计算机程序产品的装置。选择监视状况特有的多个对象类别。对象类别形成人工神经网络针对其被训练的对象类别的总数的子集。访问包括人工神经网络内的神经元的激活频率值的数据库。激活频率值是对象类别的函数。从人工神经网络中去除具有低于所选择的对象类别的子集的阈值的激活频率值的那些神经元。

【技术实现步骤摘要】
基于人工神经网络类别的修剪
技术介绍
本专利技术涉及一种人工神经网络,更具体地,涉及一种用于对象识别和验证的人工神经网络。近年来,对这种人工神经网络的改进主要是由于网络扩展和训练数据的增加。然而,复杂的人工神经网络架构通常包含数千万或数亿个参数。尽管这样的人工神经网络产生良好的精度,但是大量的参数可能使得部署变得不可行,特别是在经常具有有限计算能力的嵌入式系统上。随着人工神经网络规模的不断扩大,对人工神经网络的压缩越来越受到关注,以保持改进,同时使人工神经网络在具有有限计算能力的系统中得以实现。由于人工神经网络通常非常大,如上所述,它们通常可能是“过度参数化的”。这使得能够在不显著影响人工神经网络的性能的前提下去除参数(如权重和偏差)或整个神经元。这个过程通常被称为“修剪(pruning)”人工神经网络。当神经元被去除时,能够回溯(back-trace)该神经元的计算。然后可以看出,通向该神经元的所有权重可被安全地去除。还能够跟踪神经元输出并去除从该神经元而来的权重。然而,在修剪过程中识别哪些神经元被去除以及以能够获得性能的方式实现修剪过程并不轻松。修剪可应用于包含可训练参数的层,传统上完全连接的层和卷积(convolutional)层。这有助于简化和加速计算。例如,从完全连接的层中去除神经元相当于略过在矩阵行和向量之间的点积。结果,矩阵变小。从卷积层中去除神经元意味着略过一个矩阵行和一个矩阵列之间的点积,这与跳过一个卷积相同。神经元的去除将在下面的详细说明中进一步详细讨论。通过在训练/测试阶段期间分析神经元并且从所得到的识别哪些神经元“死亡”(即哪些神经元很少或者从来不产生非零输出)的数据,可在不严重影响人工神经网络的精度的前提下确定哪些神经元可被去除。决定神经元必须产生多少次非零输出才能被定义为死亡可通过比较使用不同阈值的性能来完成,并且在神经元被去除之后可进行重新训练以改善性能。这可以迭代地进行。另一种修剪方法的重点是去除权重,已在训练步骤期间使用阈值或使用符合规范的正则化迫使一些权重为零。正则化是本领域普通技术人员熟知的数学/统计方法,用于强制条件,例如稀疏性(迫使某些值为零)或平滑度。有关用于修剪的正规化的更多细节,请参阅文章:“Memoryboundeddeepconvolutionalnetworks(记忆有界的深卷积网络)”arXivCoRR2014–Section3:RegularizationUpdatesavailableonlineathttps://arxiv.org/abs/1412.1442(在https://arxiv.org/abs/1412.1442处可在线获得的正则化更新的第3章)。通过以这些方式充分修剪人工神经网络,利用可避免对去除的参数的计算的实现,用于执行人工神经网络的计算低于用于全网络的计算。
技术实现思路
本专利技术的目的在于全部或部分地消除上述问题。该目的通过根据权利要求1所述的方法、根据权利要求9所述的计算机程序产品、根据权利要求15所述的存储介质来实现。根据第一方面,本专利技术涉及一种在计算机系统中用于针对特定监视状况配置人工神经网络的方法。该方法的特征在于下述步骤:-选择监视状况特有的多个对象类别,其中对象类别形成人工神经网络针对其被训练的对象类别的总数的子集;-访问包括人工神经网络内的神经元的激活频率值的数据库,其中激活频率值是对象类别的函数;并且-从人工神经网络中去除具有低于所选择的对象类别的子集的阈值的激活频率值的那些神经元。这提供了一种创建轻量级的人工神经网络的方法,因此适合于诸如摄像机或移动设备的嵌入式设备。特别是,通过知道只有少数类别(即,所有可能的类别的一个子集)可被预期并且基于神经元使用的频率将人工神经网络修剪成这些类别,能够根据需要使大的人工神经网络适应于不同的先决条件,而不必像通常所做的那样重新训练人工神经网络。重新训练人工神经网络通常需要大量的时间以及用于重新训练的新的数据,而将人工神经网络修剪到类别的某一集合是快得多的操作。此外,该方法可与其他常规方法(例如,使用将权重二值化或正则化为零)组合使用,以可能去除更多数量的神经元,甚至进一步降低在嵌入式设备中部署人工神经网络的计算性能。根据一个实施例,阈值是在人工神经网络的训练程序期间为每个类别确定的静态值。通过针对不同的相关类别允许不同的阈值,相比于针对每个相关类别全面地使用相同的阈值,能够提高系统的精度。根据一个实施例,基于系统性能,阈值对每个类别是自适应的。通过具有基于系统性能的自适应阈值,可基于从部署系统的实际监视状况获得的数据来进一步增强系统。根据一个实施例,可基于在特定时间段内收集到的数据,对监视状况特有的对象类别的选择进行优化,并且可针对对象类别的所优化的选择,重复选择、访问和去除步骤。这允许基于真实的观测数据和系统性能的评估进一步细化和微调系统。根据一个实施例,选择、访问和去除步骤中的至少一些是响应于通过用户界面接收的用户输入来执行的。具有用户界面允许用户基于来自用户的输入决定修剪应该自动化的程度。例如,用户可决定添加或删除相关类别,改变各个类别的阈值等,以便进一步改善修剪后的人工神经网络的功能。根据一个实施例,去除完全连接的人工神经网络中的神经元与从形成人工神经网络的各个层的数学表示的矩阵去除行和列相对应。通过去除整个神经元,与仅去除权重相反,可显着减少在计算来自人工神经网络的输出时所需的计算量。根据一个实施例,从人工神经网络去除神经元包括去除足够数量的神经元,使得用于计算来自人工神经网络的输出所需的计算资源的减少超过用于维持关于去除的神经元的记录所需的计算资源的增加。也就是说,在修剪人工神经网络的情况下,可找到损益平衡点,使得与非修剪网络相比,所需的计算资源要低得多,从而使其适合在嵌入式设备中部署,而在同时人工神经网络的性能仍然很高。根据一个实施例,人工神经网络被部署在嵌入式设备中。嵌入式设备可以是例如监视摄像机或蜂窝电话。通过能在这种类型的嵌入式设备中使用人工神经网络,可显着增强嵌入式设备的操作。根据第二方面,本专利技术涉及一种用于针对特定监视状况配置人工神经网络的计算机程序。计算机程序包含与下述步骤对应的指令:-选择监视状况特有的多个对象类别,其中对象类别形成人工神经网络针对其被训练的对象类别的总数的子集;-访问包括人工神经网络内的神经元的激活频率值的数据库,其中激活频率值是对象类别的函数;并且-从人工神经网络中去除具有低于所选择的对象类别的子集的阈值的激活频率值的那些神经元。根据第三方面,本专利技术涉及一种包括这样的计算机程序的数字存储介质。计算机程序和存储介质包含与方法的那些优点对应的优点,并且可类似地被改变。在附图和下面的描述中阐述了本专利技术的一个或多个实施例的细节。从说明书和附图以及权利要求中,本专利技术的其他特征和优点将是显而易见的。附图说明图1示出了根据一个实施例的修剪人工神经网络的过程100的流程图。图2示出了根据一个实施例的人工神经网络200的示意图。图3示出了根据一个实施例的、修剪前的图2的神经网络的全计算的等式300。图4示出了根据一个实施例的、修剪后的图2的神经网络的计算的等式400。在各个附图中相同的附图标记表示相同的要素。具体实施方式综述如以上所讨论本文档来自技高网
...
基于人工神经网络类别的修剪

【技术保护点】
1.一种用于针对特定监视状况配置人工神经网络的方法,所述方法包括:选择所述监视状况特有的多个对象类别,其中所述对象类别形成对象类别的总数的子集,所述人工神经网络针对所述对象类别的总数被训练;访问包括所述人工神经网络内的神经元的激活频率值的数据库,其中所述激活频率值是所述对象类别的函数;并且从所述人工神经网络中去除具有低于所选择的对象类别的子集的阈值的激活频率值的神经元,其中神经元的所去除的数量使得用于计算来自所述人工神经网络的输出所需的计算资源的减少超过用于维持关于所去除的神经元的记录所需的计算资源的增加。

【技术特征摘要】
2016.12.21 EP 16205831.71.一种用于针对特定监视状况配置人工神经网络的方法,所述方法包括:选择所述监视状况特有的多个对象类别,其中所述对象类别形成对象类别的总数的子集,所述人工神经网络针对所述对象类别的总数被训练;访问包括所述人工神经网络内的神经元的激活频率值的数据库,其中所述激活频率值是所述对象类别的函数;并且从所述人工神经网络中去除具有低于所选择的对象类别的子集的阈值的激活频率值的神经元,其中神经元的所去除的数量使得用于计算来自所述人工神经网络的输出所需的计算资源的减少超过用于维持关于所去除的神经元的记录所需的计算资源的增加。2.根据权利要求1所述的方法,其中,所述阈值是在所述人工神经网络的训练/测试程序期间针对每个类别确定的静态值。3.根据权利要求1所述的方法,其中,所述阈值是基于人工神经网络性能、针对每个类别自适应的。4.根据权利要求1所述的方法,进一步包括:基于在特定时间段内收集到的数据,对所述监视状况特有的对象类别的选择进行优化;并且针对所优化的对象类别的选择,重复所述选择、所述访问和所述去除步骤。5.根据权利要求1所述的方法,其中,所述选择、所述访问和所述去除步骤中的至少一些是响应于通过用户界面接收的用户输入来执行的。6.根据权利要求1所述的方法,其中,在完全连接的人工神经网络中,去除神经元与从形成所述人工神经网络的各个层的数学表示的矩阵去除行和列相对应,从而减少计算来自所述人工神经网络的输出所需的...

【专利技术属性】
技术研发人员:罗宾·赛博尔德陈建丹汉纳·比约格温斯多蒂尔马丁·尔永奎斯特
申请(专利权)人:安讯士有限公司
类型:发明
国别省市:瑞典,SE

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1