CN109165720A - 神经网络模型压缩方法、装置和计算机设备 - Google Patents
神经网络模型压缩方法、装置和计算机设备 Download PDFInfo
- Publication number
- CN109165720A CN109165720A CN201811037330.2A CN201811037330A CN109165720A CN 109165720 A CN109165720 A CN 109165720A CN 201811037330 A CN201811037330 A CN 201811037330A CN 109165720 A CN109165720 A CN 109165720A
- Authority
- CN
- China
- Prior art keywords
- layer
- network model
- compression
- chromosome
- compressed
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/086—Learning methods using evolutionary algorithms, e.g. genetic algorithms or genetic programming
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/004—Artificial life, i.e. computing arrangements simulating life
- G06N3/006—Artificial life, i.e. computing arrangements simulating life based on simulated virtual individual or collective life forms, e.g. social simulations or particle swarm optimisation [PSO]
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Computing Systems (AREA)
- General Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Biomedical Technology (AREA)
- General Engineering & Computer Science (AREA)
- Biophysics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Artificial Intelligence (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Evolutionary Biology (AREA)
- Physiology (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Image Analysis (AREA)
Abstract
本申请公开了神经网络模型压缩方法及装置、计算机设备及计算机可读介质,该方法包括:获取经训练后的第一神经网络模型;从第一神经网络模型的各层中选取至少一层作为待压缩层;按照预设规则对待压缩层进行排序;根据排序的先后顺序,利用遗传算法对待压缩层的部分或全部执行压缩处理以获得第二神经网络模型,其中,第二神经网络模型基于预置的训练样本的精度不低于预设精度。该方法及装置、计算机设备及计算机可读介质利用遗传算法对已经训练好的神经网络模型进行压缩,降低了神经网络模型的计算量和存储空间,使其能应用于存储和计算资源都受限的设备,并能同时兼顾神经网络模型的精度和压缩。
Description
技术领域
本申请涉及计算机应用技术领域,尤其涉及一种神经网络模型压缩方法及装置、计算机设备及计算机可读介质。
背景技术
近年来,随着人工智能的发展,神经网络(Neural Network,NN)算法被广泛应用于图像处理,语音识别,自然语言处理等多个领域。然而,效果较好的深度神经网络往往有着数量较大的节点(神经元)和模型参数,不仅计算量大而且在实际部署中模型占据较大一部分空间,限制了其应用于存储和计算资源都受限的设备。因此,如何对神经网络模型进行压缩显得尤为重要,特别是对已经训练好的神经网络模型进行压缩,将有利于把训练好的神经网络模型应用到诸如嵌入式设备、集成硬件设备中等应用场景。
发明内容
鉴于以上问题,本发明的实施例提供一种神经网络模型压缩方法及装置、计算机设备及计算机可读介质,其能对已经训练好的神经网络模型进行压缩,降低神经网络模型的计算量和存储空间,使神经网络模型能应用于存储和计算资源受限的设备。
按照本发明的实施例的神经网络模型压缩方法,包括:获取经训练后的第一神经网络模型;从第一神经网络模型的各层中选取至少一层作为待压缩层;按照预设规则对待压缩层进行排序;根据排序的先后顺序,利用遗传算法对待压缩层的部分或全部执行压缩处理以获得第二神经网络模型,其中,第二神经网络模型基于预置的训练样本的精度不低于预设精度。
按照本发明的实施例的神经网络模型压缩装置,包括:获取模块,用于获取经训练后的第一神经网络模型;选取模块,用于从第一神经网络模型的各层中选取至少一层作为待压缩层;排序模块,用于按照预设规则对待压缩层进行排序;压缩模块,用于根据排序的先后顺序,利用遗传算法对待压缩层的部分或全部执行压缩处理以获得第二神经网络模型,其中,第二神经网络模型基于预置的训练样本的精度不低于预设精度。
按照本发明的实施例的计算机设备,包括:处理器;以及存储器,其上存储有可执行指令,其中,所述可执行指令当被执行时使得所述处理器执行前述的方法。
按照本发明的实施例的计算机可读介质,其上存储有可执行指令,其中,所述可执行指令当被执行时使得计算机执行前述的方法。
从以上的描述可以看出,本发明的实施例的方案利用遗传算法对已经训练好的神经网络模型进行压缩,降低了神经网络模型的计算量和存储空间,使其能应用于存储和计算资源都受限的设备。并且,本发明的实施例的方案能同时兼顾神经网络模型的精度和压缩。
附图说明
图1为本发明的实施例可以应用于其中的示例性架构图;
图2为按照本发明的一个实施例的神经网络模型压缩方法的流程图;
图3为按照本发明的一个实施例的利用遗传算法对待压缩层执行压缩处理的方法的流程图;
图3a为一神经网络结构的示例图;
图4为按照本发明的一个实施例的神经网络模型压缩装置的流程图;
图5为按照本发明的一个实施例的计算机设备的示意图;
图6为按照本发明的一个实施例的适于用来实现本发明实施方式的示例性计算机设备的框图。
具体实施方式
现在将参考示例实施方式讨论本文描述的主题。应该理解,讨论这些实施方式只是为了使得本领域技术人员能够更好地理解从而实现本文描述的主题,并非是对权利要求书中所阐述的保护范围、适用性或者示例的限制。可以在不脱离本公开内容的保护范围的情况下,对所讨论的元素的功能和排列进行改变。各个示例可以根据需要,省略、替代或者添加各种过程或组件。例如,所描述的方法可以按照与所描述的顺序不同的顺序来执行,以及各个步骤可以被添加、省略或者组合。另外,相对一些示例所描述的特征在其他例子中也可以进行组合。
如本文中使用的,术语“包括”及其变型表示开放的术语,含义是“包括但不限于”。术语“基于”表示“至少部分地基于”。术语“一个实施例”和“一实施例”表示“至少一个实施例”。术语“另一个实施例”表示“至少一个其他实施例”。术语“第一”、“第二”等可以指代不同的或相同的对象。下面可以包括其他的定义,无论是明确的还是隐含的。除非上下文中明确地指明,否则一个术语的定义在整个说明书中是一致的。
本发明的实施例采用了遗传算法来压缩神经网络模型,下面对遗传算法和神经网络做一下简要介绍。
遗传算法(Genetic Algorithm,即GA)是一类借鉴生物界的进化规律(适者生存,优胜劣汰遗传机制)演化而来的随机化搜索方法。它是由美国的J.Holland教授于1975年首先提出,其主要特点是直接对结构对象进行操作,不存在求导和函数连续性的限定;具有内在的隐并行性和更好的全局寻优能力;采用概率化的寻优方法,能自动获取和指导优化的搜索空间,自适应地调整搜索方向,不需要确定的规则。遗传算法的这些性质,已被人们广泛地应用于组合优化、机器学习、信号处理、自适应控制和人工生命等领域。它是现代有关智能计算中的关键技术。
神经网络(NeuralNetwork,即NN),是20世纪80年代以来人工智能领域兴起的研究热点。它从信息处理角度对人脑神经元网络进行抽象,建立某种简单模型,按不同的连接方式组成不同的网络。神经网络是一种运算模型,由大量的节点(或称神经元)之间相互联接构成。每个节点代表一种特定的输出函数,称为激励函数(activation function)。每两个节点间的连接都代表一个对于通过该连接信号的加权值,称之为连接权。网络的输出则依网络的连接方式,连接权和激励函数的不同而不同。神经网络的结构信息包括节点和连接权等信息。
图1示出了可以应用本发明的实施例的神经网络模型压缩方法或神经网络模型压缩装置的示例性系统架构100。
如图1所示,系统架构100可以包括服务器102、104和网络106。网络106用以在服务器102和服务器104之间提供通信链路的介质。网络106可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
服务器102可以是提供各种服务的服务器,例如对经训练后的神经网络模型进行存储的数据存储服务器。
服务器104可以是提供各种服务的服务器,例如用于压缩神经网络模型的服务器。服务器104可以从服务器102获取经训练后的神经网络模型,并对该神经网络模型进行分析等处理,并对处理结果(例如压缩处理后的神经网络模型)进行存储。
需要说明的是,本发明实施例的神经网络模型压缩方法一般由服务器104执行,相应地,神经网络模型压缩装置一般设置于服务器104中。
需要指出的是,若服务器104所获取的神经网络模型预先存储在本地,那么系统架构也可以不包括服务器102。
应该理解,图1中的服务器和网络的数目仅仅是示意性的。根据实际需要,可以由任意数量的服务器和网络。
图2示出了按照本发明的一个实施例的神经网络模型压缩方法的流程图。图2所示的方法200可以由计算机或具有计算能力的电子设备(例如图1所示的服务器104)来执行。此外,本领域技术人员将理解,执行方法200的任何系统都在本发明的实施例的范围和精神内。
如图2所示,在步骤S202,获取经训练后的第一神经网络模型。在本实施例中,神经网络模型压缩方法运行于其上的电子设备(例如图1所示的服务器104)可以通过有线连接方式或者无线连接方式从远程通信连接的服务器(例如图1所示的服务器102)获取待压缩的第一神经网络模型。当然,若第一神经网络模型预先存储在上述电子设备本地,上述电子设备也可以本地获取第一神经网络模型。
在本实施例中,第一神经网络模型是先前已经在训练样本上被训练,并且其精度已满足预设精度要求。本实施例的第一神经网络模型可以是任何通用的神经网络模型,例如可以是反向传播神经网络(BPNN:Back Propagation Neural Network)模型、卷积神经网络(CNN:Convolutional Neural Network)模型、基于区域信息的卷积神经网络(RCNN:Region Based Convolutional Neural Network)模型、循环神经网络(RNN:RecurrentNeural Network)模型、长短期记忆模型(LSTM:Long Short-Term Memory)或门控循环单元(GRU:Gated Recurrent Unit),此外,还可以是其他类型的神经网络模型或由多种神经网络结合的级联神经网络模型。
在步骤S204,从第一神经网络模型的各层中选取至少一层作为待压缩层。本实施例中,上述电子设备可以从所获取的第一神经网络模型的各层中选取至少一层作为待压缩层。例如,上述电子设备可以选取第一神经网络模型的每层作为待压缩层。
本实施例的一些可选的实现方式中,若第一神经网络模型包括卷积层(Convolution Layer)和全连接层(Fully Connected Layer,FC),上述电子设备可以选取至少一个卷积层和至少一个全连接层作为待压缩层。
在步骤S206,按照预设规则对待压缩层进行排序。本实施例中,上述电子设备从所获取的第一神经网络模型选取出待压缩层后,上述电子设备可以按照预设规则对待压缩层进行排序。
在本实施例的一种可选的实现方式中,上述电子设备可以按照待压缩层在第一神经网络模型中所处的层级的层级数由大到小的顺序对待压缩层进行先后排序。第一神经网络模型例如可以包括至少一个输入层(input layer)、至少一个隐藏层(hidden layer)和至少一个输出层(output layer)。其中,第一神经网络模型的每层可以具有对应的层级数。作为示例,假设第一神经网络模型包括一个输入层、一个隐藏层和一个输出层,该输入层可以处于第一神经网络模型的第一层,该输入层的层级数可以是1;该隐藏层可以处于第一神经网络模型的第二层,该隐藏层的层级数可以是2;该输出层可以处于第一神经网络模型的第三层,该输出层的层级数可以是3;则按照层级数由大到小进行排序的顺序先后为:输出层、隐藏层、输入层。
在本实施例的另一种可选的实现方式中,上述电子设备也可以按照待压缩层对第一神经网络模型损失的贡献度由小到大对待压缩层进行先后排序。其中,可将第一神经网络模型的损失通过反向传播方法(Back Propagation,BP)传递到第一神经网络模型的每个层,然后计算各层对网络损失的贡献度,然后按照贡献度由小到大对待压缩层进行先后排序。
本实施例的一些可选的实施方式中,待压缩层可由一联结矩阵来表示,如一N×N矩阵C=(cij)N×N表示一个有N个节点的网络结构,其中cij的值表示从节点i到节点j的连接权;cij=0表示从节点i到节点j之间无连接;cii表示节点i的偏置。则待压缩层的贡献度可采用以下公式计算:
其中,|cij|为第k个待压缩层从节点i到节点j的连接权值的绝对值;i=1,2,3,...,N;j=1,2,3,...,N。Gk越大,说明第k个待压缩层所产生的误差对整个神经网络性能的影响越大,第k个待压缩层的重要性越低,贡献度越小。
在步骤S208,根据排序的先后顺序,利用遗传算法对待压缩层的部分或全部执行压缩处理以获得第二神经网络模型,其中,第二神经网络模型基于预置的训练样本的精度不低于预设精度。在本实施例中,采用遗传算法对待压缩层进行压缩处理,其实现的原理是根据遗传算法“优胜劣汰”的原理,在兼顾神经网络模型精度的情况下,以“压缩待压缩层”作为准则,对待压缩层执行各种遗传操作,最后获得结构简化的待压缩层。具体实施时,可以基于压缩的适应度值为标准,选择适应度值满足要求的染色体个体执行遗传操作,以产生网络简化度最优(即结构最简化)的染色体个体,根据该最优染色体个体获得经压缩处理后的待压缩层。在本实施例中,基于压缩的适应度值是指能反映网络简化度(或网络复杂度)的适应度值,例如可以是适应度值越大,网络简化度越高,即实现了有效压缩;适应度值越小,网络简化度越低,即没有实现有效压缩。则在利用遗传算法对神经网络模型进行压缩时,可选择适应度值大的染色体个体执行遗传操作,最终在第N代群体产生的染色体个体中适应度值最大的染色体个体为最优染色体个体。
需要说明的是,在本发明的其他实施方式中,也可以采用适应度值越大,网络复杂度越高,即没有实现有效压缩;适应度值越小,网络复杂度越低,即实现了有效压缩,则在利用遗传算法对神经网络模型进行压缩时,可选择适应度值小的染色体个体执行遗传操作,最终在第N代群体产生的染色体个体中适应度值最小的染色体个体为最优染色体个体。
本实施例的一些可选的实现方式中,为兼顾第一神经网络模型的精度和压缩,可通过设置一预设精度来约束第一神经网络模型的压缩,需要说明的是,该预设精度可以是第一神经网络模型的原始精度,或略低于该原始精度的数值。该预设精度可以是认为设置的,也可以是上述电子设备基于预置的算法设置的,而且该预设精度是可以根据实际需要进行调整的,本实施例不对此方面做任何限定。
本实施例的一些可选的实现方式中,压缩处理包括删除待压缩层的至少一个节点及其相应的连接,和/或,删除待压缩层的至少一个连接,以降低待压缩层的网络复杂度,即提高待压缩层的网络简化度。
本实施例的一些可选的实现方式中,在每一次利用遗传算法对其中一待压缩层执行压缩处理后,利用预置的训练样本对当前的神经网络模型进行训练;若当前的神经网络模型的精度不低于预设精度,则在还剩有未执行压缩处理的待压缩层时,根据先后顺序继续对后一待压缩层执行压缩处理,在已对全部待压缩层执行压缩处理时,将当前的神经网络模型确定为经压缩处理后的第二神经网络模型;若当前的神经网络模型的精度低于预设精度,则将前一待压缩层执行压缩处理后的神经网络模型确定为经压缩处理后的第二神经网络模型。
作为示例,假设待压缩层的数目为N,对这N层待压缩层进行排序后,得到的先后顺序如下待压缩层1,待压缩层2,待压缩层3,…,待压缩层N。首先利用遗传算法对待压缩层1执行压缩处理,然后将第一神经网络模型中未压缩处理的待压缩层1替换为经压缩处理后的待压缩层1,通过预置的训练样本对替换后的神经网络模型进行训练,得到当前神经网络模型的精度,判断该精度是否低于预设精度,若不低于预设精度则继续对待压缩层2执行压缩处理,并重复同样的步骤,以此类推,直至到对待压缩层N执行压缩处理后,当前神经网络模型的精度仍不低于预设精度,则将当前的神经网络模型(所有待压缩层均替换为压缩处理后的待压缩层)确定为经压缩处理后的第二神经网络模型。若对某一待压缩层例如待压缩层3执行压缩处理后,当前的神经网络模型(此时已经将第一神经网络模型的待压缩层1、2和3替换为经压缩处理后的待压缩层)的精度低于预设精度,则将前一待压缩层执行压缩处理后的神经网络模型(即第一神经网络模型的待压缩层1和2替换为经压缩处理后的待压缩层)确定为经压缩处理后的第二神经网络模型。
需要说明的是,上述电子设备在对经压缩处理后的神经网络模型进行训练时,可以对当前的神经网络模型进行微调(fine-tuning)。这样可以将略低于预设精度的神经网络模型微调至满足预设精度要求,从而可进一步对神经网络模型进行压缩。
本实施例中,上述电子设备可存储经压缩处理获得的第二神经网络模型,例如存储至上述电子设备本地(例如硬盘或内存)或与上述电子设备远程通信连接的服务器。
从以上描述可以看出,本发明实施例所提供的方案利用遗传算法对经训练好的神经网络模型进行压缩,降低了神经网络模型的计算量和存储空间,使其能应用于存储和计算资源都受限的设备。进一步的,本发明的实施例的方案能同时兼顾神经网络模型的精度和压缩。
图3示出了按照本发明的一个实施例的利用遗传算法对待压缩层执行压缩处理的方法的流程图,图3所示的方法300可以由计算机或具有计算能力的电子设备(例如图1所示的服务器104)来执行。此外,本领域技术人员将理解,执行方法300的任何系统都在本发明的实施例的范围和精神内。
如图3所示,在步骤S302,获取待压缩层的网络结构信息。网络结构可由一联结矩阵来表示,如一N×N矩阵C=(cij)N×N表示一个有N个节点的网络结构,其中cij的值表示从节点i到节点j的连接权;cij=0表示从节点i到节点j之间无连接;cii表示节点i的偏置。
在步骤S304,根据待压缩层的网络结构信息,对待压缩层进行编码,以得到一染色体。神经网络的结构需要表示为一个遗传算法个体染色体编码,才能够用遗传算法来进行计算。在一实施方式中,设待压缩层有N个神经元,序号是从1到N排列的节点,可用一N×N矩阵来表示待压缩层的网络结构。现以图3a所示具有7个节点的神经网络结构作为示例,以阐述本实施例对神经网络模型的编码方法。表1为该神经网络结构的节点连接关系,在表1中,矩阵中(i,j)对应的元素表示从第i个节点到第j个节点的连接关系。由于本发明实施例在对神经网络模型进行压缩时不会涉及对待压缩神经网络模型连接权的改动,因此本实施例将节点的连接关系表示为0,1,-1的形式,其中,“0”表示没有连接;“1”表示连接权值为1,具有激发(excitory)作用,图3a中以实线表示;“-1”表示连接权值为-1,具有抑制(inhibitory)作用,图3a中以虚线表示。由此可见,表1与图3a所示结构等价。
表1、本实施例示例神经网络结构连接关系
根据表1所示的节点连接关系,可以将该神经网络的编码表示为0,1,-1组成的数字串形式,将元素(3,1)到元素(7,6)自左至右、自上而下顺序连接起来,组成下面的染色体编码:
在步骤S306,根据上述得到的染色体,进行群体初始化生成初始群体。在本实施例中,具体实施时,可对上述得到的染色体执行复制操作,随机生成预定数量的染色体个体,将这些染色体个体的集合作为初始群体。初始群体的大小由群体规模M来确定,群体规模M可以例如但不限于10~100。由于采用的是复制操作,因此初始群体中的所有染色体个体均相同。
在步骤S308,计算群体中染色体个体的适应度值。在本实施例的一些可选的实现方式中,适应度函数可以采用以下公式:
或
其中,f(i,t)表示第t代的第i个体的适应度;E(i,t)表示第t代的第i个体对应的神经网络模型的网络误差;H(i,t)表示第t代的第i个体的网络简化度。
具体实施时,E(i,t)可采用以下公式计算:
其中,分别为第t代的第i个体对应的神经网络模型基于预置的第q个训练样本的期望输出值和实际输出值。网络误差值越小,精度越高。
H(i,t)可采用以下公式计算:
其中,m(i,t)为第t代的第i个体的节点个数。节点个数越少,网络简化度值越大,网络简化度越高,神经网络模型越简化。
该实现方式中,利用网络误差E(i,t)来约束对待压缩神经网络模型的压缩处理过程,能同时兼顾精度和压缩。网络误差E(i,t)越小,则压缩处理后的神经网络模型的精度越高。网络简化度值越大,则压缩处理后的神经网络模型的结构越简化。因此,在本实施方式中,网络误差越小、网络简化度越大的染色体个体,适应度值越大。
在本实施例的其他可选的实现方式中,适应度函数还可以采用以下公式:
其中,f(i,t)表示第t代的第i个体的适应度;E(i,t)表示第t代的第i个体对应的神经网络模型的网络误差;H(i,t)表示第t代的第i个体的网络简化度。
本实施例中,适应度函数包括公式①和公式②。其中,公式①基于网络误差的适应度函数,其反映的是神经网络模型的精度;公式②是基于网络简化度的适应度函数,其反映的是神经网络模型的压缩。由此本实施例分别计算染色体个体基于精度的适应度值和基于压缩的适应度值。
在步骤S310,判断是否达到终止条件。其中,终止条件可以包括预先设定的迭代次数阈值或设定的收敛条件。迭代次数例如但不限于可以设置为500次,但迭代次数达到500次时即判断为达到终止条件。收敛条件例如但不限于可以设置为当适应度值满足一定的条件时,判断为达到终止条件,例如可以设定适应度值大于预设阈值。
在步骤S312,若步骤S310判断结果为未达到终止条件,则以适应度值为标准,选择部分适应度值满足要求的染色体个体,执行复制、交叉或变异等遗传操作,从而产生新一代群体,然后返回步骤S308。根据S308的适应度值函数,本实施例选择适应度值相对较大的染色体个体执行遗传操作,并淘汰一些适应度值较小的染色体个体。
当采用分别计算染色体个体基于精度的适应度值和基于压缩的适应度值时,本实施例的选择标准可以采用以下步骤:(1)以公式①计算群体中每个染色体个体基于精度的适应度值,然后计算个体被选中的第一选择概率,根据所述第一选择概率选择出第一染色体个体;(2)以公式②计算群体中每个染色体个体基于压缩的适应度值,然后计算个体被选中的第二选择概率,根据所述第二选择概率从步骤(1)选择出的第一染色体个体中选择第二染色体个体。可选的,在根据选择概率选择染色体个体前,可先找出当前群体中适应度值最高和最低的染色体个体,将最佳染色体个体保留直接进入下一代,淘汰最差染色体个体,这样能保证将优良的基因遗传给下一代。本实施例的选择策略能通过精度约束对待压缩层的压缩处理过程,能保证网络误差小、网络简化度大的染色体个体进入下一代。
本实施例的一些可选的实现方式中,可以采用适应度-比例选择法(轮盘选择法)是一种常用的选择方法,其含义是适应度越高,被选中的概率越大,即:
其中,p(i,t)为第t代第i个体的选择概率,f(i,t)为第t代第i个体的适应度,f(sum,t)为第t代群体总适应度。
对被选出的染色体个体执行复制、交叉或变异操作。其中,其中,复制操作是指将被选出的父代染色体个体在未经任何变化的条件下从当前代直接复制到新一代个体中。交叉操作是指从群体中按上述的选择方法随机选择两个父代染色体个体,将两个父代染色体个体的部分组分相互替代,形成新的子代染色体个体。变异操作是指从群体中按上述的选择方法随机选择一个父代染色体个体,然后在该个体的表达式上随机选定一个结点作为变异点,通过将该变异点基因的值变为另一个有效值,形成新的子代染色体个体。
交叉操作是否发生可根据交叉概率Pc来决定,其方法为,随机产生一个0~1之间的随机数P,当P≤Pc,交叉操作发生,当P>Pc,交叉不发生。同样,变异操作是否发生也可根据变异概率Pm来决定,由于为现有技术,在此省略对其的描述。
本实施例中,执行交叉操作时,可在每个父代染色体个体中按照一定概率随机选择一个交叉点,交叉点以下部分称为交叉段。第一个父代染色体个体删除其交叉段后,把第二个父代染色体个体的交叉段插入到他的交叉点处,这样就生成了第一个子代染色体个体。同样,第二个父代染色体个体删除其交叉段后,将第一个父代染色体个体的交叉段插入到他的交叉点处后而形成第二个子代染色体个体。这种情况下,如果选择的两个父代染色体个体相同,但由于其交叉点不同,所产生的子代染色体个体也不相同,有效避免了近亲繁殖,提高了全局搜索能力。
本实施例中,执行变异操作时,可以是随机采用以下操作之一:(a)删除神经网络模型隐含层中的至少一个节点及其相应的连接;(b)删除神经网络模型隐含层中的至少一个连接;(c)对被删除的节点或连接以一定的概率进行随机修复;(d)增加隐含层节点,随机产生相应的连接权值。其中,删除节点总是先于增加节点,且增加的加点数不应大于删除的节点数,同时,只有当删除节点不能产生一个好的子代时,才增加节点,这样的变异操作能保证方法始终往压缩神经网络模型的方向进行。
在步骤S314,若步骤S210判断结果为达到终止条件,则输出适应度值最优的染色体个体,以此获得经压缩处理后的待压缩层。
本实施例的一些可选的实现方式中,最优染色体个体可设置为maxf(i,t),即将达到终止条件时具有最大适应度的染色体个体作为最优染色体个体。对最优染色体个体执行解码操作,即可得到待压缩层最优的网络结构。
图4示出了按照本发明的一个实施例的神经网络模型压缩装置的示意图。图4所示的装置400与上述神经网络模型压缩方法相对应,由于装置400的实施例基本相似于方法的实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。装置400可以利用软件、硬件或软硬件结合的方式来实现,可以安装在计算机或其他合适的具有计算能力的电子设备中。
如图4所示,装置400可以包括获取模块402、选取模块404、排序模块406和压缩模块408。获取模块402用于获取经训练后的第一神经网络模型。选取模块404用于从第一神经网络模型的各层中选取至少一层作为待压缩层。排序模块406用于按照预设规则对待压缩层进行排序。压缩模块408用于根据排序的先后顺序,利用遗传算法对待压缩层的部分或全部执行压缩处理以获得第二神经网络模型,其中,第二神经网络模型基于预置的训练样本的精度不低于预设精度。
在装置400的一实施方式中,排序模块406具体用于按照待压缩层在第一神经网络模型中所处的层级的层级数由大到小对待压缩层进行先后排序。
在装置400的另一实施方式中,排序模块406具体用于按照待压缩层对第一神经网络模型损失的贡献度对由小到大对待压缩层进行先后排序。
在装置400的又一实施方式中,压缩模块408包括训练单元和确定单元。训练单元用于在每一次利用遗传算法对其中一待压缩层执行压缩处理后,利用预置的训练样本对当前的神经网络模型进行训练。确定单元用于若当前的神经网络模型的精度不低于预设精度,则在还剩有未执行压缩处理的待压缩层时,继续对后一待压缩层执行压缩处理,在已对全部待压缩层执行压缩处理时,将当前的神经网络模型确定为经压缩处理后获得的第二神经网络模型;若当前的神经网络模型的精度低于预设精度,则将前一待压缩层执行压缩处理后的神经网络模型确定为经压缩处理后获得的第二神经网络模型。
在装置400的再一实施方式中,压缩模块408还包括获取单元、编码单元、初始化单元、计算单元、判断单元、遗传操作单元和输出单元。获取单元用于获取待压缩层的网络结构信息。编码单元用于根据待压缩层的网络结构信息,对待压缩层进行编码,以获得一染色体。初始化单元用于根据获得的一染色体,进行群体初始化生成初始群体。计算单元用于计算群体中染色体个体的适应度值。判断单元用于判断是否达到终止条件。遗传操作单元用于若未达到终止条件,则以适应度值为标准,选择部分适应度值满足要求的染色体个体,执行复制、交叉或变异操作,从而产生新一代群体。输出单元用于若达到终止条件,则输出适应度值最优的染色体个体,以此获得经压缩处理后的待压缩层。
在装置400的又再一实施方式中,计算单元进一步用于分别计算群体中染色体个体基于精度和基于压缩的适应度值。相应的,遗传操作单元进一步用于根据基于精度的适应度值,获取群体中染色体个体的第一选择概率,根据第一选择概率选择第一染色体个体,以及,根据基于压缩的适应度值,获取群体中染色体个体的第二选择概率,根据第二选择概率从第一染色体个体中选择第二染色体个体;对第二染色体个体执行复制、交叉或变异操作,从而产生第一代群体。
图5示出了按照本发明的一个实施例的计算机设备的示意图。如图5所示,计算机设备500可以包括处理器502和存储器504,其中,存储器502上存储有可执行指令,其中,所述可执行指令当被执行时使得处理器502执行图2所示的方法200或图3所示的方法300。
图6示出了适于用来实现本发明实施方式的示例性计算机设备的框图。图6所示的计算机设备600仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
如图6所示,计算机设备600以通用计算设备的形式实现。计算机设备600的组件可以包括但不限于:处理器602,系统存储器604,连接不同系统组件(包括处理器602和系统存储器604)的总线606。
总线606表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器,外围总线,图形加速端口,处理器或者使用多种总线结构中的任意总线结构的局域总线。举例来说,这些体系结构包括但不限于工业标准体系结构(ISA)总线,微通道体系结构(MAC)总线,增强型ISA总线、视频电子标准协会(VESA)局域总线以及外围组件互连(PCI)总线。
计算机设备600典型地包括多种计算机系统可读介质。这些介质可以是任何能够被计算机设备600访问的可用介质,包括易失性和非易失性介质,可移动的和不可移动的介质。
系统存储器604可以包括易失性存储器形式的计算机系统可读介质,例如随机存取存储器(RAM)608和和/或高速缓存存储器610。计算机设备600可以进一步包括其它可移动/不可移动的、易失性/非易失性计算机系统存储介质。仅作为举例,存储系统612可以用于读写不可移动的、非易失性磁介质(图6未显示,通常称为“硬盘驱动器”)。尽管图6中未示出,可以提供用于对可移动非易失性磁盘(例如“软盘”)读写的磁盘驱动器,以及对可移动非易失性光盘(例如CD-ROM,DVD-ROM或者其它光介质)读写的光盘驱动器。在这些情况下,每个驱动器可以通过一个或者多个数据介质接口与总线606相连。系统存储器604可以包括至少一个程序产品,该程序产品具有一组(例如至少一个)程序模块,这些程序模块被配置以执行本发明上述图1或图2实施例的功能。
具有一组(至少一个)程序模块616的程序/实用工具614,可以存储在例如系统存储器604中,这样的程序模块616包括但不限于操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。程序模块616通常执行本发明所描述的上述图1或图2实施例中的功能和/或方法。
计算机设备600也可以与一个或多个外部设备700(例如键盘、指向设备、显示器800等)通信,还可与一个或者多个使得用户能与该计算机设备600交互的设备通信,和/或与使得该计算机设备600能与一个或多个其它计算设备进行通信的任何设备(例如网卡,调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口618进行。并且,计算机设备600还可以通过网络适配器520与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图所示,网络适配器620通过总线606与计算机设备600的其它模块通信。应当明白,尽管图中未示出,可以结合计算机设备600使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理器、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。
处理器602通过运行存储在系统存储器604中的程序,从而执行各种功能应用以及数据处理,例如实现上述实施例所示的神经网络模型压缩方法。
本发明的实施例还提供一种计算机可读介质,其上存储有可执行指令,其中,所述可执行指令当被执行时使得计算机执行图2所示的方法200或图3所示的方法300。
本实施例的计算机可读介质可以包括上述图6所示实施例中的系统存储器604中的RAM608、和/或高速缓存存储器610、和/或存储系统612。
随着科技的发展,计算机程序的传播途径不再受限于有形介质,还可以直接从网络下载,或者采用其他方式获取。因此,本实施例中的计算机可读介质不仅可以包括有形的介质,还可以包括无形的介质。
本实施例的计算机可读介质可以采用一个或多个计算机可读的介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、电线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言或其组合来编写用于执行本发明操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言,诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言,诸如”C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络,包括局域网(LAN)或广域网(WAN),连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
本领域的技术人员应明白,本发明实施例可提供为方法、装置、或计算机程序产品。因此,本发明实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明实施例是参照根据本发明实施例的方法、装置、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理终端设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理终端设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
上面结合附图阐述的具体实施方式描述了示例性实施例,但并不表示可以实现的或者落入权利要求书的保护范围的所有实施例。在整个本说明书中使用的术语“示例性”意味着“用作示例、实例或例示”,并不意味着比其它实施例“优选”或“具有优势”。出于提供对所描述技术的理解的目的,具体实施方式包括具体细节。然而,可以在没有这些具体细节的情况下实施这些技术。在一些实例中,为了避免对所描述的实施例的概念造成难以理解,公知的结构和装置以框图形式示出。
本公开内容的上述描述被提供来使得本领域任何普通技术人员能够实现或者使用本公开内容。对于本领域普通技术人员来说,对本公开内容进行的各种修改是显而易见的,并且,也可以在不脱离本公开内容的保护范围的情况下,将本文所定义的一般性原理应用于其它变型。因此,本公开内容并不限于本文所描述的示例和设计,而是与符合本文公开的原理和新颖性特征的最广范围相一致。
Claims (14)
1.神经网络模型压缩方法,包括:
获取经训练后的第一神经网络模型;
从第一神经网络模型的各层中选取至少一层作为待压缩层;
按照预设规则对待压缩层进行排序;
根据排序的先后顺序,利用遗传算法对待压缩层的部分或全部执行压缩处理以获得第二神经网络模型,其中,第二神经网络模型基于预置的训练样本的精度不低于预设精度。
2.根据权利要求1所述的方法,其中,按照预设规则对待压缩层进行排序,包括:
按照待压缩层在第一神经网络模型中所处的层级的层级数由大到小对待压缩层进行先后排序。
3.根据权利要求1所述的方法,其中,按照预设规则对待压缩层进行排序,包括:
按照待压缩层对第一神经网络模型损失的贡献度由小到大对待压缩层进行先后排序。
4.根据权利要求1-3任一项所述的方法,其中,根据排序的先后顺序,利用遗传算法对待压缩层的部分或全部执行压缩处理以获得第二神经网络模型,包括:
在每一次利用遗传算法对其中一待压缩层执行压缩处理后,利用预置的训练样本对当前的神经网络模型进行训练;
若当前的神经网络模型的精度不低于预设精度,则在还剩有未执行压缩处理的待压缩层时,根据排序的先后顺序继续对后一待压缩层执行压缩处理,在已对全部待压缩层执行压缩处理时,将当前的神经网络模型确定为经压缩处理后的第二神经网络模型;若当前的神经网络模型的精度低于预设精度,则将前一待压缩层执行压缩处理后的神经网络模型确定为经压缩处理后的第二神经网络模型。
5.根据权利要求1所述的方法,其中,利用遗传算法对待压缩层的部分或全部执行压缩处理,包括:
获取待压缩层的网络结构信息;
根据待压缩层的网络结构信息,对待压缩层进行编码,以获得一染色体;
根据获得的一染色体,进行群体初始化生成初始群体;
计算群体中染色体个体的适应度值;
判断是否达到终止条件;
若未达到终止条件,则以适应度值为标准,选择部分适应度值满足要求的染色体个体,执行复制、交叉或变异操作,从而产生新一代群体,然后返回计算群体中染色体个体的适应度值步骤;
若达到终止条件,则输出适应度值最优的染色体个体,以此获得经压缩处理后的待压缩层。
6.根据权利要求5所述的方法,其中,计算群体中染色体个体的适应度值,包括:
分别计算群体中染色体个体基于精度和基于压缩的适应度值;
相应的,以适应度值为标准,选择部分适应度值满足要求的染色体个体,执行复制、交叉或变异操作,从而产生新一代群体,包括:
根据基于精度的适应度值,获取群体中染色体个体的第一选择概率,根据第一选择概率选择第一染色体个体,以及,根据基于压缩的适应度值,获取群体中染色体个体的第二选择概率,根据第二选择概率从第一染色体个体中选择第二染色体个体;对第二染色体个体执行复制、交叉或变异操作,从而产生第一代群体。
7.神经网络模型压缩装置,包括:
获取模块,用于获取经训练后的第一神经网络模型;
选取模块,用于从第一神经网络模型的各层中选取至少一层作为待压缩层;
排序模块,用于按照预设规则对待压缩层进行排序;
压缩模块,用于根据排序的先后顺序,利用遗传算法对待压缩层的部分或全部执行压缩处理以获得第二神经网络模型,其中,第二神经网络模型基于预置的训练样本的精度不低于预设精度。
8.根据权利要求7所述的装置,其中,排序模块具体用于:
按照待压缩层在第一神经网络模型中所处的层级的层级数由大到小对待压缩层进行先后排序。
9.根据权利要求7所述的装置,其中,排序模块具体用于:
按照待压缩层对第一神经网络模型损失的贡献度由小到大对待压缩层进行先后排序。
10.根据权利要求7-9任一项所述的装置,其中,压缩模块包括:
训练单元,用于在每一次利用遗传算法对其中一待压缩层执行压缩处理后,利用预置的训练样本对当前的神经网络模型进行训练;
确定单元,用于若当前的神经网络模型的精度不低于预设精度,则在还剩有未执行压缩处理的待压缩层时,根据先后顺序继续对后一待压缩层执行压缩处理,在已对全部待压缩层执行压缩处理时,将当前的神经网络模型确定为经压缩处理后获得的第二神经网络模型;若当前的神经网络模型的精度低于预设精度,则将前一待压缩层执行压缩处理后的神经网络模型确定为经压缩处理后获得的第二神经网络模型。
11.根据权利要求7所述的装置,其中,压缩模块还包括:
获取单元,用于获取待压缩层的网络结构信息;
编码单元,用于根据待压缩层的网络结构信息,对待压缩层进行编码,以获得一染色体;
初始化单元,用于根据获得的一染色体,进行群体初始化生成初始群体;
计算单元,用于计算群体中染色体个体的适应度值;
判断单元,用于判断是否达到终止条件;
遗传操作单元,用于若未达到终止条件,则以适应度值为标准,选择部分适应度值满足要求的染色体个体,执行复制、交叉或变异操作,从而产生新一代群体;
输出单元,用于若达到终止条件,则输出适应度值最优的染色体个体,以此获得经压缩处理后的待压缩层。
12.根据权利要求11所述的装置,其中,计算单元进一步用于:
分别计算群体中染色体个体基于精度和基于压缩的适应度值;
相应的,遗传操作单元进一步用于:
根据基于精度的适应度值,获取群体中染色体个体的第一选择概率,根据第一选择概率选择第一染色体个体,以及,根据基于压缩的适应度值,获取群体中染色体个体的第二选择概率,根据第二选择概率从第一染色体个体中选择第二染色体个体;对第二染色体个体执行复制、交叉或变异操作,从而产生第一代群体。
13.一种计算机设备,包括:
处理器;以及
存储器,其上存储有可执行指令,其中,所述可执行指令当被执行时使得所述处理器执行权利要求1-4任一项所述的方法。
14.一种计算机可读介质,其上存储有可执行指令,其中,所述可执行指令当被执行时使得计算机执行权利要求1-4任一项所述的方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811037330.2A CN109165720A (zh) | 2018-09-05 | 2018-09-05 | 神经网络模型压缩方法、装置和计算机设备 |
PCT/CN2019/103511 WO2020048389A1 (zh) | 2018-09-05 | 2019-08-30 | 神经网络模型压缩方法、装置和计算机设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811037330.2A CN109165720A (zh) | 2018-09-05 | 2018-09-05 | 神经网络模型压缩方法、装置和计算机设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109165720A true CN109165720A (zh) | 2019-01-08 |
Family
ID=64894255
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811037330.2A Pending CN109165720A (zh) | 2018-09-05 | 2018-09-05 | 神经网络模型压缩方法、装置和计算机设备 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN109165720A (zh) |
WO (1) | WO2020048389A1 (zh) |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110135498A (zh) * | 2019-05-17 | 2019-08-16 | 电子科技大学 | 一种基于深度进化神经网络的图像识别方法 |
CN110276448A (zh) * | 2019-06-04 | 2019-09-24 | 深圳前海微众银行股份有限公司 | 一种模型压缩方法及装置 |
WO2020048389A1 (zh) * | 2018-09-05 | 2020-03-12 | 深圳灵图慧视科技有限公司 | 神经网络模型压缩方法、装置和计算机设备 |
CN111028226A (zh) * | 2019-12-16 | 2020-04-17 | 北京百度网讯科技有限公司 | 算法移植的方法及装置 |
CN111275190A (zh) * | 2020-02-25 | 2020-06-12 | 北京百度网讯科技有限公司 | 神经网络模型的压缩方法及装置、图像处理方法及处理器 |
CN111338816A (zh) * | 2020-02-18 | 2020-06-26 | 深圳鲲云信息科技有限公司 | 基于神经网络的指令交互方法、系统、设备及存储介质 |
WO2020155091A1 (zh) * | 2019-02-01 | 2020-08-06 | 华为技术有限公司 | 深度神经网络的量化方法、装置、设备及介质 |
WO2020221200A1 (zh) * | 2019-04-28 | 2020-11-05 | 华为技术有限公司 | 神经网络的构建方法、图像处理方法及装置 |
CN112348177A (zh) * | 2019-07-05 | 2021-02-09 | 安徽寒武纪信息科技有限公司 | 神经网络模型验证方法、装置、计算机设备和存储介质 |
CN112445823A (zh) * | 2019-09-04 | 2021-03-05 | 华为技术有限公司 | 神经网络结构的搜索方法、图像处理方法和装置 |
CN112529278A (zh) * | 2020-12-02 | 2021-03-19 | 中国人民解放军93209部队 | 基于联结矩阵寻优的航路网规划方法及装置 |
CN112784952A (zh) * | 2019-11-04 | 2021-05-11 | 珠海格力电器股份有限公司 | 一种卷积神经网络运算系统、方法及设备 |
CN114239792A (zh) * | 2021-11-01 | 2022-03-25 | 荣耀终端有限公司 | 模型量化方法、装置及存储介质 |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2024098373A1 (en) * | 2022-11-11 | 2024-05-16 | Nvidia Corporation | Techniques for compressing neural networks |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030191728A1 (en) * | 2002-03-27 | 2003-10-09 | Kulkarni Bhaskar Dattatray | Performance of artificial neural network models in the presence of instrumental noise and measurement errors |
CN103971162A (zh) * | 2014-04-04 | 2014-08-06 | 华南理工大学 | 一种基于遗传算法改进bp神经网络的方法 |
CN108038546A (zh) * | 2017-12-29 | 2018-05-15 | 百度在线网络技术(北京)有限公司 | 用于压缩神经网络的方法和装置 |
CN108229646A (zh) * | 2017-08-08 | 2018-06-29 | 北京市商汤科技开发有限公司 | 神经网络模型压缩方法、装置、存储介质和电子设备 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101599138A (zh) * | 2009-07-07 | 2009-12-09 | 武汉大学 | 基于人工神经网络的土地评价方法 |
CN106503802A (zh) * | 2016-10-20 | 2017-03-15 | 上海电机学院 | 一种利用遗传算法优化bp神经网络系统的方法 |
CN109165720A (zh) * | 2018-09-05 | 2019-01-08 | 深圳灵图慧视科技有限公司 | 神经网络模型压缩方法、装置和计算机设备 |
-
2018
- 2018-09-05 CN CN201811037330.2A patent/CN109165720A/zh active Pending
-
2019
- 2019-08-30 WO PCT/CN2019/103511 patent/WO2020048389A1/zh active Application Filing
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030191728A1 (en) * | 2002-03-27 | 2003-10-09 | Kulkarni Bhaskar Dattatray | Performance of artificial neural network models in the presence of instrumental noise and measurement errors |
CN103971162A (zh) * | 2014-04-04 | 2014-08-06 | 华南理工大学 | 一种基于遗传算法改进bp神经网络的方法 |
CN108229646A (zh) * | 2017-08-08 | 2018-06-29 | 北京市商汤科技开发有限公司 | 神经网络模型压缩方法、装置、存储介质和电子设备 |
CN108038546A (zh) * | 2017-12-29 | 2018-05-15 | 百度在线网络技术(北京)有限公司 | 用于压缩神经网络的方法和装置 |
Cited By (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020048389A1 (zh) * | 2018-09-05 | 2020-03-12 | 深圳灵图慧视科技有限公司 | 神经网络模型压缩方法、装置和计算机设备 |
WO2020155091A1 (zh) * | 2019-02-01 | 2020-08-06 | 华为技术有限公司 | 深度神经网络的量化方法、装置、设备及介质 |
WO2020221200A1 (zh) * | 2019-04-28 | 2020-11-05 | 华为技术有限公司 | 神经网络的构建方法、图像处理方法及装置 |
CN110135498A (zh) * | 2019-05-17 | 2019-08-16 | 电子科技大学 | 一种基于深度进化神经网络的图像识别方法 |
CN110276448A (zh) * | 2019-06-04 | 2019-09-24 | 深圳前海微众银行股份有限公司 | 一种模型压缩方法及装置 |
CN110276448B (zh) * | 2019-06-04 | 2023-10-24 | 深圳前海微众银行股份有限公司 | 一种模型压缩方法及装置 |
CN112348177A (zh) * | 2019-07-05 | 2021-02-09 | 安徽寒武纪信息科技有限公司 | 神经网络模型验证方法、装置、计算机设备和存储介质 |
CN112348177B (zh) * | 2019-07-05 | 2024-01-09 | 安徽寒武纪信息科技有限公司 | 神经网络模型验证方法、装置、计算机设备和存储介质 |
CN112445823A (zh) * | 2019-09-04 | 2021-03-05 | 华为技术有限公司 | 神经网络结构的搜索方法、图像处理方法和装置 |
CN112784952B (zh) * | 2019-11-04 | 2024-03-19 | 珠海格力电器股份有限公司 | 一种卷积神经网络运算系统、方法及设备 |
CN112784952A (zh) * | 2019-11-04 | 2021-05-11 | 珠海格力电器股份有限公司 | 一种卷积神经网络运算系统、方法及设备 |
CN111028226A (zh) * | 2019-12-16 | 2020-04-17 | 北京百度网讯科技有限公司 | 算法移植的方法及装置 |
CN111338816B (zh) * | 2020-02-18 | 2023-05-12 | 深圳鲲云信息科技有限公司 | 基于神经网络的指令交互方法、系统、设备及存储介质 |
CN111338816A (zh) * | 2020-02-18 | 2020-06-26 | 深圳鲲云信息科技有限公司 | 基于神经网络的指令交互方法、系统、设备及存储介质 |
CN111275190A (zh) * | 2020-02-25 | 2020-06-12 | 北京百度网讯科技有限公司 | 神经网络模型的压缩方法及装置、图像处理方法及处理器 |
CN111275190B (zh) * | 2020-02-25 | 2023-10-10 | 北京百度网讯科技有限公司 | 神经网络模型的压缩方法及装置、图像处理方法及处理器 |
CN112529278B (zh) * | 2020-12-02 | 2021-08-31 | 中国人民解放军93209部队 | 基于联结矩阵寻优的航路网规划方法及装置 |
CN112529278A (zh) * | 2020-12-02 | 2021-03-19 | 中国人民解放军93209部队 | 基于联结矩阵寻优的航路网规划方法及装置 |
CN114239792A (zh) * | 2021-11-01 | 2022-03-25 | 荣耀终端有限公司 | 模型量化方法、装置及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
WO2020048389A1 (zh) | 2020-03-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109165720A (zh) | 神经网络模型压缩方法、装置和计算机设备 | |
CN112241455B (zh) | 基于多层级知识蒸馏预训练语言模型自动压缩方法及平台 | |
CN109272497A (zh) | 产品表面缺陷检测方法、装置和计算机设备 | |
CN108573399A (zh) | 基于转移概率网络的商户推荐方法及其系统 | |
CN112418292B (zh) | 一种图像质量评价的方法、装置、计算机设备及存储介质 | |
CN107391549A (zh) | 基于人工智能的新闻召回方法、装置、设备及存储介质 | |
CN109885723A (zh) | 一种视频动态缩略图的生成方法、模型训练的方法及装置 | |
EP3744008B1 (en) | Electronic apparatus for compression of data and compression method thereof | |
CN109299780A (zh) | 神经网络模型压缩方法、装置和计算机设备 | |
US20220215267A1 (en) | Processes and methods for enabling artificial general intelligence capable of flexible calculation, prediction, planning and problem solving with arbitrary and unstructured data inputs and outputs | |
CN110033089A (zh) | 基于分布式估计算法的深度神经网络参数优化方法及系统 | |
CN108959388A (zh) | 信息生成方法及装置 | |
CN114998525A (zh) | 基于动态局部-全局图卷积神经网络的动作识别方法 | |
CN110084250A (zh) | 一种图像描述的方法及系统 | |
CN109886333A (zh) | 一种基于高维空间采样的数据增强方法 | |
CN105895104B (zh) | 说话人自适应识别方法及系统 | |
CN112070019B (zh) | 一种人脸识别方法、装置、电子设备和存储介质 | |
CN109166118A (zh) | 织物表面属性检测方法、装置及计算机设备 | |
CN109982095B (zh) | 基于cnn与gep的分形图像压缩编码方法 | |
WO2022127603A1 (zh) | 一种模型处理方法及相关装置 | |
CN113283597A (zh) | 一种基于信息瓶颈的深度强化学习模型鲁棒性增强方法 | |
CN113762505A (zh) | 一种卷积神经网络的按通道l2范数聚类剪枝方法 | |
CN117523060B (zh) | 元宇宙数字人的画质处理方法、装置、设备及存储介质 | |
JPWO2020054402A1 (ja) | ニューラルネットワーク処理装置、コンピュータプログラム、ニューラルネットワーク製造方法、ニューラルネットワークデータの製造方法、ニューラルネットワーク利用装置、及びニューラルネットワーク小規模化方法 | |
CN109063934A (zh) | 基于人工智能的组合优化结果获取方法、设备及可读介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WD01 | Invention patent application deemed withdrawn after publication | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20190108 |