一种基于权重重要性的全连接神经网络优化方法和装置与流程

文档序号:19675757发布日期:2020-01-10 23:18阅读:489来源:国知局
导航: X技术> 最新专利> 计算;推算;计数设备的制造及其应用技术
一种基于权重重要性的全连接神经网络优化方法和装置与流程

本发明涉及神经网络计算技术领域,特别是一种基于权重重要性的全连接神经网络优化方法和装置。



背景技术:

21世纪以来,人工神经网络在学术界掀起了巨大的研究热潮。随着深度学习理论的逐步完善,人工神经网络不断发展,在许多领域展示了它良好的性能。在不久的将来,人工神经网络也会大规模运用于外太空探索。

目前许多大型神经网络在工作时占用了大量的内存空间,带来了较大的功耗开销。因此,越来越多人开始关注如何对神经网络进行优化,减小内存占比和功耗开销。

常见的神经网络优化方法是基于近似计算来实现的。通过将神经元的输入或者神经元之间的权重对输出的影响度近似为易于计算的数值,对这些值进行排序后,针对较小值所对应的神经元或者权重进行近似处理。但通常地,一旦神经网络的输入有微小的变化,神经元或者权重对于输出的影响度排序表就会被打乱。因此,在对影响度进行排序时,应该综合考虑神经网络的输入,保障优化后神经网络的工作精度。另外,当神经网络应用于外太空等恶劣辐射环境下时,高能粒子打击也会导致神经网络工作精度降低。所以,如何在减小神经网络内存开销的同时尽可能地提高可靠性也是现阶段亟待解决的问题。



技术实现要素:

本发明的发明构思为:考虑到实际上,神经网络中的一部分信息,包括神经元的输入数据以及神经元之间的权重数据,对输出的作用比较小。因此,在考察神经网络中信息的重要性时,应该综合考虑输入对其的影响,对神经网络中信息的重要性进行排序,然后将排序表中相对不重要的信息进行近似存储,从而减小内存占比和功耗开销。

本发明的目的是,提供一种基于权重重要性的全连接神经网络优化方法和装置,在降低神经网络内存占比和功耗开销的基础,保障神经网络的可靠性和工作精度。

本发明采取的技术方案为:一种全连接神经网络优化方法,包括:

获取已训练完成的待优化神经网络结构数据及其输入样本数据集;

以输入层的输入为变量,计算得到神经网络中各神经元的输入和输出表达式;

对于各隐藏层,分别计算当前隐藏层中各神经元对后一层中各神经元的影响程度表达式;

基于各神经元对后一层中各神经元的影响程度表达式,计算当前隐藏层的前一层输入变化引起的所述影响程度的变化程度表达式;

基于所述影响程度表达式及其变化程度表达式,计算各隐藏层中各神经元与后一层中各神经元的关联程度表达式;

基于输入样本数据集中的各样本数据以及所述关联程度表达式,计算各隐藏层中各神经元与后一层中各神经元的关联程度值;

对于较小的关联程度值,将其对应的当前隐藏层神经元与后一层神经元之间的权重值进行近似处理。

本发明通过计算关联程度值实现前后层神经元之间的权重重要性判断,将关联程度值较小的神经元之间的权重值进行近似处理可有效减小内存占比和功耗开销。

可选的,本发明方法还包括:对于较大的关联程度值,将其对应的当前隐藏层神经元与后一层神经元之间的权重值进行加固处理。可采用现有的三模冗余加固方式,加固处理可进一步提高神经网络的可靠性。

可选的,待优化神经网络结构包括1个输入层、1个输出层和至少1个隐藏层,各层分别包含多个神经元;所述待优化神经网络结构数据包括神经网络中各层所包含的神经元数量、各神经元的激活函数,以及相邻层神经元之间的权重值。

可选的,计算当前隐藏层中任一神经元对后一层中各神经元的影响程度表达式为:计算后一层中各神经元的输入对当前神经元的输入的偏导。

可选的,对于当前隐藏层的任一神经元,计算前一层输入变化引起的所述影响程度的变化程度表达式为:

计算当前神经元对后一层中各神经元的影响程度表达式,对当前隐藏层的前一层中所有神经元输入的偏导总和。

可选的,计算各隐藏层中各神经元与后一层中各神经元的关联程度表达式为:将计算得到的对应后一层各神经元的影响程度表达式,分别除以对应的变化程度表达式。

可选的,对于各隐藏层中任一神经元与后一层中的任一神经元,将样本数据集中的每组样本数据分别代入两神经元对应的关联程度表达式中,计算得到关联程度值;将对应各组样本数据的关联程度值相加后除以输入样本数据集的样本容量,得到的结果作为相应两神经元之间的关联程度值。

可选的,对于任一隐藏层中的任一神经元,将计算得到的该神经元与后一层中各神经元的关联程度值进行大小排序,然后对排序中预设m个较小的关联程度值对应的后一层神经元与当前神经元之间的权重值进行近似处理。同样的,还可对排序中预设n个较大的关联程度值对应的后一层神经元与当前神经元之间的权重值进行加固处理。当然,排序操作也可以是从小到大进行排列,此时则关联程度值较大的n个在后,关联程度值较小的m个在前。m和n的数量可根据后一层中神经元的总数进行调整。

较大关联程度值或较小关联程度值的选取除可通过排序并预设选取数量外还可通过预设关联程度值阈值的方式选取。

可选的,所述近似处理为将权重值进行位宽缩减。

本发明还提供一种全连接神经网络优化装置,包括:

数据输入模块,用于获取已训练完成的待优化神经网络结构数据及其输入样本数据集;

输入表达式计算模块,用于以输入层的输入为变量,计算得到神经网络中各神经元的输入和输出表达式;

影响程度表达式计算模块,用于对于各隐藏层,分别计算当前隐藏层中各神经元对后一层中各神经元的影响程度表达式;

变化程度表达式计算模块,用于基于各神经元对后一层中各神经元的影响程度表达式,计算当前隐藏层的前一层输入变化引起的所述影响程度的变化程度表达式;

关联程度表达式计算模块,用于基于所述影响程度表达式及其变化程度表达式,计算各隐藏层中各神经元与后一层中各神经元的关联程度表达式;

关联程度值计算模块,用于基于输入样本数据集中的各样本数据以及所述关联程度表达式,计算各隐藏层中各神经元与后一层中各神经元的关联程度值;

以及权重值处理模块,用于对于较小的关联程度值,将其对应的当前隐藏层神经元与后一层神经元之间的权重值进行近似处理。

有益效果

本发明在考察各个神经元之间的关联程度时,同时考虑了神经网络的输入变化对关联程度的影响,对关联程度较低的神经元之间的权重值进行近似存储,减小内存占比和功耗开销;而对关联程度较高的数据进行加固处理,则进一步提高了神经网络的可靠性,即达到了优化神经网络的目的。

附图说明

图1所示为本发明一种实施例的待优化神经网络结构示意图;

图2所示为图1中神经网络中神经元b2与前后层关联示意图;

图3所示为图1中神经网络中神经元的输入输出示意图;

图4所示为本发明的一种实施例方法流程示意图。

具体实施方式

以下结合附图和具体实施例进一步描述。

实施例1

一种全连接神经网络优化方法,包括:

获取已训练完成的待优化神经网络结构数据及其输入样本数据集;

以输入层的输入为变量,计算得到神经网络中各神经元的输入和输出表达式;

对于各隐藏层,分别计算当前隐藏层中各神经元对后一层中各神经元的影响程度表达式;

基于各神经元对后一层中各神经元的影响程度表达式,计算当前隐藏层的前一层输入变化引起的所述影响程度的变化程度表达式;

基于所述影响程度表达式及其变化程度表达式,计算各隐藏层中各神经元与后一层中各神经元的关联程度表达式;

基于输入样本数据集中的各样本数据以及所述关联程度表达式,计算各隐藏层中各神经元与后一层中各神经元的关联程度值;

对于较小的关联程度值,将其对应的当前隐藏层神经元与后一层神经元之间的权重值进行近似处理。

本实施例通过计算关联程度值实现前后层神经元之间的权重重要性判断,将关联程度值较小的神经元之间的权重值进行近似处理可有效减小内存占比和功耗开销,提高神经网络的可靠性。

实施例1-1

如图4所示,基于实施例1,本实施例方法还包括:对于较大的关联程度值,将其对应的当前隐藏层神经元与后一层神经元之间的权重值进行加固处理。可采用现有的三模冗余加固方式,加固处理可进一步提高神经网络的可靠性。

本实施例中,参考图1所示,待优化的神经网络包括一个输入层(input)、三个隐藏层(hidden_a,hidden_b,hidden_c)和一个输出层(output),每一个空心圈代表一个神经元。层与层之间的有向连接线代表了数据传递的权重以及方向。所述待优化神经网络结构数据包括神经网络中各层所包含的神经元数量、各神经元的激活函数,以及相邻层神经元之间的权重值。此处假设神经网络训练后连接线上的权重值分别为:

ωia代表输入层各输入分别到隐藏层hidden_a中各神经元的权重值,其中ωij代表输入层输入ini到hidden_a中第j个神经元的权重,如ω12为in1到hidden_a中第2个神经元的权重。

ωab代表隐藏层hidden_a中各神经元到hidden_b中各神经元的权重值,矩阵中的元素解释参考ωia中对矩阵元素的解释。

以图1中隐藏层hidden_b层中神经元b2为例,在对上述神经网络进行优化时,具体包括以下步骤:

s1,获取神经网络信息,以及神经网络训练时的输入样本数据集。

s2,参考图2和图3所示,以输入层的输入in1、in2、in3为变量,计算得到神经网络中各隐藏层与输出层中各神经元的输入表达式如下:

隐藏层hidden_a中第i个神经元:神经元的输出:yai=f(xai),f(xai)即为神经元ai的传递函数,其中b0为常数,代表hidden_a层神经元的偏置;

隐藏层hidden_b中第i个神经元:神经元的输出:ybi=f(xbi),其中b1为常数,代表hidden_b层神经元的偏置;

隐藏层hidden_c中的第i个神经元:神经元的输出:yci=f(xci),其中b2为常数,代表hidden_c层神经元的偏置;

输出层output中的第i个神经元:神经元的输出:yoi=f(xoi),其中b3为常数,代表output层神经元的偏置。

s3,计算隐藏层中神经元对后一层中各神经元的影响程度表达式为:计算后一层中各神经元的输入对当前神经元的输入的偏导,即:

神经元b2对hidden_c层神经元ci的影响程度的表达式为:

s4,对于当前隐藏层的任一神经元,计算前一层输入变化引起的所述影响程度的变化程度表达式为:计算当前神经元对后一层中各神经元的影响程度表达式,对当前隐藏层的前一层中所有神经元输入的偏导总和。即:

若hidden_a层输入有轻微变化,b2对ci影响程度的变化程度的表达式为:

s5,计算各隐藏层中各神经元与后一层中各神经元的关联程度表达式为:将计算得到的对应后一层各神经元的影响程度表达式,分别除以对应的变化程度表达式。即:

除以得到b2与ci的关联程度:

s6,将样本数据集中的每组样本数据分别代入以上关联程度表达式中,计算得到关联程度值;然后将对应各组样本数据的关联程度值相加后除以输入样本数据集的样本容量,得到的结果作为相应两神经元之间的关联程度值。即:

将输入样本数据集分别代入得到各个输入样本下b2与ci的关联程度值,将这些值累加并除以样本容量,得到b2与hidden_c层中各个神经元的关联程度值排序表。

s7,对于任一隐藏层中的任一神经元,将计算得到的该神经元与后一层中各神经元的关联程度值进行大小排序,然后对排序中预设m个较小的关联程度值对应的后一层神经元与当前神经元之间的权重值进行近似处理;对排序中预设n个较大的关联程度值对应的后一层神经元与当前神经元之间的权重值进行加固处理。当然,排序操作也可以是从小到大进行排列,此时则关联程度值较大的n个在后,关联程度值较小的m个在前。m和n的数量可根据后一层中神经元的总数进行调整。

具体可实施为:选择排序中较小值对应的hidden_c层神经元,将它们与b2之间权重值进行位宽缩减。选择排序表中较大值对应的hidden_c层神经元,将它们与b2之间权重值进行三模冗余加固。

对各个隐藏层的所有神经元均进行上述计算和近似操作,可以有效地减小该神经网络的内存占比和功耗开销,同时提高神经网络的可靠性。

实施例2

本实施例为与实施例1基于相同发明构思的一种全连接神经网络优化装置,包括:

数据输入模块,用于获取已训练完成的待优化神经网络结构数据及其输入样本数据集;

输入表达式计算模块,用于以输入层的输入为变量,计算得到神经网络中各神经元的输入和输出表达式;

影响程度表达式计算模块,用于对于各隐藏层,分别计算当前隐藏层中各神经元对后一层中各神经元的影响程度表达式;

变化程度表达式计算模块,用于基于各神经元对后一层中各神经元的影响程度表达式,计算当前隐藏层的前一层输入变化引起的所述影响程度的变化程度表达式;

关联程度表达式计算模块,用于基于所述影响程度表达式及其变化程度表达式,计算各隐藏层中各神经元与后一层中各神经元的关联程度表达式;

关联程度值计算模块,用于基于输入样本数据集中的各样本数据以及所述关联程度表达式,计算各隐藏层中各神经元与后一层中各神经元的关联程度值;

以及权重值处理模块,用于对于较小的关联程度值,将其对应的当前隐藏层神经元与后一层神经元之间的权重值进行近似处理。

本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。

本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

以上结合附图对本发明的实施例进行了描述,但是本发明并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本发明的启示下,在不脱离本发明宗旨和权利要求所保护的范围情况下,还可做出很多形式,这些均属于本发明的保护之内。

完整全部详细技术资料下载
当前第1页 1  2  3 
相关技术
  • 一种基于学习下采样和跳跃连接...
  • 一种基于网络结构相似性的对抗...
  • 一种融合人工神经网络和神经形...
  • 一种用于脉动阵列结构的数据重...
  • 一种用于目标重建的嵌套结构的...
  • 基于3D卷积神经网络的无参考...
  • 一种深度学习推理自动量化方法...
  • 一种多神经网络框架间的快速模...
  • 一种基于深度学习的网络表征获...
  • 构建基于经典训练的量子前馈神...
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1

PHP网站源码朝阳网站优化排名哪家好昭通百度网站优化排名价格北海建网站报价枣庄百姓网标王推广曲靖网站优化软件价格清徐网站建设山南网站排名优化推荐台州seo哪家好泰安SEO按天收费公司山南网络广告推广报价塘坑关键词排名包年推广公司桂林百度标王公司南联网站优化推广报价黄石网站优化推广价格白山网站优化按天扣费报价赤峰百姓网标王推广报价十堰网页设计推荐如何制作网站价格那曲至尊标王哪家好遂宁网页制作报价松岗百搜标王推荐山南企业网站制作推荐咸阳优化多少钱阜新网站设计推荐辽源推广网站报价滁州模板制作推荐贵港企业网站改版公司商丘高端网站设计哪家好龙岩百搜标王哪家好永湖企业网站设计哪家好歼20紧急升空逼退外机英媒称团队夜以继日筹划王妃复出草木蔓发 春山在望成都发生巨响 当地回应60岁老人炒菠菜未焯水致肾病恶化男子涉嫌走私被判11年却一天牢没坐劳斯莱斯右转逼停直行车网传落水者说“没让你救”系谣言广东通报13岁男孩性侵女童不予立案贵州小伙回应在美国卖三蹦子火了淀粉肠小王子日销售额涨超10倍有个姐真把千机伞做出来了近3万元金手镯仅含足金十克呼北高速交通事故已致14人死亡杨洋拄拐现身医院国产伟哥去年销售近13亿男子给前妻转账 现任妻子起诉要回新基金只募集到26元还是员工自购男孩疑遭霸凌 家长讨说法被踢出群充个话费竟沦为间接洗钱工具新的一天从800个哈欠开始单亲妈妈陷入热恋 14岁儿子报警#春分立蛋大挑战#中国投资客涌入日本东京买房两大学生合买彩票中奖一人不认账新加坡主帅:唯一目标击败中国队月嫂回应掌掴婴儿是在赶虫子19岁小伙救下5人后溺亡 多方发声清明节放假3天调休1天张家界的山上“长”满了韩国人?开封王婆为何火了主播靠辱骂母亲走红被批捕封号代拍被何赛飞拿着魔杖追着打阿根廷将发行1万与2万面值的纸币库克现身上海为江西彩礼“减负”的“试婚人”因自嘲式简历走红的教授更新简介殡仪馆花卉高于市场价3倍还重复用网友称在豆瓣酱里吃出老鼠头315晚会后胖东来又人满为患了网友建议重庆地铁不准乘客携带菜筐特朗普谈“凯特王妃P图照”罗斯否认插足凯特王妃婚姻青海通报栏杆断裂小学生跌落住进ICU恒大被罚41.75亿到底怎么缴湖南一县政协主席疑涉刑案被控制茶百道就改标签日期致歉王树国3次鞠躬告别西交大师生张立群任西安交通大学校长杨倩无缘巴黎奥运

PHP网站源码 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化