CN107665364B - 神经网络方法和设备 - Google Patents

神经网络方法和设备 Download PDF

Info

Publication number
CN107665364B
CN107665364B CN201710629393.6A CN201710629393A CN107665364B CN 107665364 B CN107665364 B CN 107665364B CN 201710629393 A CN201710629393 A CN 201710629393A CN 107665364 B CN107665364 B CN 107665364B
Authority
CN
China
Prior art keywords
neural network
parameters
regularized
lightweight
layer
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.)
Active
Application number
CN201710629393.6A
Other languages
English (en)
Other versions
CN107665364A (zh
Inventor
孙昌用
孙辰雨
俞炳仁
崔昌圭
韩在濬
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Samsung Electronics Co Ltd
Original Assignee
Samsung Electronics Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Priority claimed from KR1020170020034A external-priority patent/KR102608467B1/ko
Application filed by Samsung Electronics Co Ltd filed Critical Samsung Electronics Co Ltd
Publication of CN107665364A publication Critical patent/CN107665364A/zh
Application granted granted Critical
Publication of CN107665364B publication Critical patent/CN107665364B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/06Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons
    • G06N3/063Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using electronic means
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F5/00Methods or arrangements for data conversion without changing the order or content of the data handled
    • G06F5/01Methods or arrangements for data conversion without changing the order or content of the data handled for shifting, e.g. justifying, scaling, normalising
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
    • G06F7/52Multiplying; Dividing
    • G06F7/523Multiplying only
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/082Learning methods modifying the architecture, e.g. adding, deleting or silencing nodes or connections

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Evolutionary Computation (AREA)
  • Data Mining & Analysis (AREA)
  • Computational Linguistics (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Artificial Intelligence (AREA)
  • Neurology (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Computational Mathematics (AREA)
  • Image Analysis (AREA)
  • Feedback Control In General (AREA)
  • Measuring And Recording Apparatus For Diagnosis (AREA)

Abstract

一种神经网络方法和设备。所述神经网络设备包括:处理器,被配置为:通过应用神经网络的相邻层中的相邻节点之间的用于解释应用于神经网络的输入数据的轻量化的加权连接,产生神经网络,其中,神经网络具有包括多个节点的多个层,其中,所述多个层中的至少一个层的轻量化的加权连接包括针对绝对值小于非零值的绝对值的各个非零值具有等于零的值的加权连接。轻量化加权连接还包括具有绝对值不大于另一非零值的绝对值的值的加权连接,轻量化的加权连接是绝对最大值大于所述另一非零值的绝对值的训练的神经网络的训练的最终加权连接的轻量化的加权连接。

Description

神经网络方法和设备
本申请要求于2016年7月28日提交到韩国知识产权局的第10-2016-0096173号韩国专利申请和于2017年2月14日提交到韩国知识产权局的第10-2017-0020034号韩国专利申请的权益,这些韩国专利申请的全部公开出于所有目的通过引用包含于此。
技术领域
下面的描述涉及一种包括对训练的神经网络进行训练和/或轻量化的方法和设备的神经网络方法和设备,以及基于所述神经网络执行识别的方法和设备。
背景技术
对象识别可包括识别包括在输入数据中的预定对象的方法。对象可包括基于预定模式将被识别的各种数据(例如,视频、图像或音频)。例如,基于图像的对象分类器可自动搜索包括在输入图像中的对象。这样的对象分类器可通过训练的对象分类器模型来实现,其中,训练的对象分类器模型包括多个节点和连接多个节点的加权连接,加权连接基于训练数据(例如,已标注的训练数据)通过迭代处理被训练。然而,使用训练的对象分类器模型执行这样的识别所需的存储器和处理资源以及用于训练示例对象分类器模型所必须的存储器和资源的量,可随着在对象分类器模型中的节点的数量和节点之间的加权连接的数量的增加而快速增加。由于对象分离器模型的非故意的偏离的或过度的训练,还可能发生过度拟合(overfitting)。
发明内容
提供本发明内容从而以简化的形式介绍构思的选择,其将在下面的具体实施方式中被进一步描述。本发明内容不意在确定所要求保护的主题的关键特征或必要特征,也不意在用于辅助确定所要求保护的主题的范围。
在一个总体方面,一种神经网络设备包括:处理器,被配置为:通过应用神经网络的相邻层中的相邻节点之间的用于解释应用于神经网络的输入数据的轻量化的加权连接,产生神经网络,其中,神经网络具有包括多个节点的多个层,其中,所述多个层中的至少一个层的轻量化的加权连接包括针对绝对值小于第一非零值的绝对值的各个非零值具有等于零的值的加权连接。
所述至少一个层的轻量化的加权连接可以是由一训练的神经网络的对应的至少一个层的训练的最终加权连接的轻量化产生的轻量化的加权连接,包括针对小于第一非零值的正变体的各个值和/或针对大于第一非零值的负变体的各个值具有至少一些非零值的加权连接,产生的神经网络表示与用于解释输入数据而训练的所述训练的神经网络对应的轻量化的神经网络。
处理器还可被配置为:获得训练的最终加权连接,并通过执行所述对应的至少一个层的获得的训练的最终加权连接的轻量化,产生具有轻量化的加权连接的神经网络,其中,通过将所述对应的至少一个层的训练的最终加权连接中的至少一些最终加权连接设置为零,来执行所述轻量化,所述至少一些最终加权连接的值小于第一非零值的正变体和/或大于第一非零值的负变体。
处理器还可被配置为:获取正则化的参数作为所述至少一个层的轻量化的加权连接;基于作为第一非零值的与神经网络的所述至少一个层对应的确定的正则化变量,执行正则化的参数的解正则化;通过应用用于产生神经网络的所述至少一个层的解正则化的参数,产生神经网络;通过将输入数据应用于产生的神经网络,执行输入数据的识别操作。
训练的最终加权连接可具有以32位浮点表示格式的值,轻量化的加权连接可具有以16位定点表示格式的值。
所述至少一个层的轻量化的加权连接或者所述至少一个层的其他轻量化的加权连接可包括具有绝对值不大于不同的第二非零值的绝对值的值的加权连接。
所述不同的非零值可在具有轻量化的加权连接的所述多个层中的至少两个层之间不同。
所述不同的非零值可在具有轻量化的加权连接的产生的神经网络的卷积层的至少两个输出映射通道之间不同。
轻量化的加权连接可具有分别由与log2(b-a)对应的位的数量表示的值,其中,b表示所述不同非零值的整数绝对值,a对应于第一非零值的整数绝对值。
第一非零值可在具有轻量化的加权连接的所述多个层中的至少两个层之间不同。
第一非零值可在具有轻量化的加权连接的产生的神经网络的卷积层的至少两个输出映射通道之间不同。
轻量化的加权连接可具有分别通过与log2(max-a)对应的位的数量表示的值,其中,max表示轻量化的加权连接的最大非零正整数,a表示第一非零值的整数绝对值。
在一个总体方面,一种神经网络轻量化设备包括:处理器,被配置为:从具有用于解释应用于训练的神经网络的输入数据而训练的所述训练的神经网络的相邻层中的相邻节点之间的训练的最终加权连接的所述训练的神经网络,产生一神经网络,其中,所述神经网络具有包括多个节点的多个层;产生神经网络的处理包括:通过将所述训练的神经网络的至少一个层的至少一些训练的最终加权连接去除或设置为零,来将训练的最终加权连接轻量化,其中,所述至少一些训练的最终加权连接的非零加权连接值具有绝对值小于非零变量a的绝对值。
处理器可被配置为:将变量a控制为在产生的神经网络的所述多个层中的至少两个层之间不同。
处理器可被配置为将变量a控制为在产生的神经网络的卷积层的至少两个输出映射通道之间不同。
处理器可被配置为将产生的神经网络的轻量化的加权连接控制为具有分别通过与log2(max-a)对应的位的数量表示的值,其中,max表示轻量化的加权连接的最大绝对值非零整数。
处理器可被配置为:通过将轻量化的加权连接值的绝对值限制为非零变量b的绝对值,控制训练的神经网络的所述至少一个层的所述至少一些训练的最终加权连接的轻量化,或者控制训练的神经网络的所述至少一个层的其他训练的最终加权连接的轻量化。
在控制所述至少一些训练的最终加权连接的轻量化或者控制所述其他训练的最终加权连接的轻量化的处理中,变量b可被控制为在产生的神经网络的所述多个层中的至少两个层之间不同。
在控制所述至少一些训练的最终加权连接的轻量化或者控制所述其他训练的最终加权连接的轻量化的处理中,变量b可被控制为在产生的神经网络的卷积层中的至少两个输出映射通道之间不同。
处理器可被配置为:将产生的神经网络的轻量化的加权连接控制为具有分别通过与log2(b-a)对应的位的数量表示的值。
在一个总体方面,一种神经网络轻量化设备包括:处理器,被配置为:从具有用于解释应用于训练的神经网络的输入数据而训练的所述训练的神经网络的相邻层中的相邻节点之间的训练的最终加权连接的所述训练的神经网络,产生不同的神经网络的轻量化的加权连接,其中,所述神经网络具有包括多个节点的多个层,产生轻量化的加权连接的处理包括:通过执行训练的最终加权连接的正则化,将训练的最终加权连接轻量化。
处理器还可被配置为:产生具有轻量化的加权连接的所述不同的神经网络,并通过将捕获的图像应用于产生的所述不同的神经网络来执行捕获的图像的识别操作。
产生轻量化的加权连接的处理可包括:将训练的最终加权连接的浮点值转换为定点值。
正则化可包括:将训练的神经网络的至少一个层的加权连接值具有小于非零变量a的绝对值的绝对值的至少一些训练的最终加权连接去除或设置为零;将轻量化的训练的最终加权连接的值从变量a的正变体朝向零和/或从变量a的负变体朝向零移位,作为所述不同的神经网络的轻量化的加权连接。
处理器还可被配置为:将具有移位的值的轻量化的加权连接发送到识别设备,其中,识别设备被配置为:远离零地反移位发送的具有移位的值的轻量化的加权连接,以产生具有反移位的发送的轻量化的加权连接的所述不同的神经网络。
处理器还可被配置为压缩轻量化的加权连接。
处理器还可被配置为:通过产生所述训练的神经网络的训练的最终加权连接,执行用于产生所述训练的神经网络的训练,其中,通过重复地将已标注的输入训练数据应用于具有分别调节的用于执行输入训练数据的解释的加权连接直到所述训练的神经网络被确定,来产生训练的神经网络的训练的最终加权连接,调节加权连接的处理包括在用于产生所述训练的神经网络的训练期间的另一不同的正则化。
所示另一不同的正则化可包括高斯正则化或拉普拉斯正则化。
用于产生所述训练的神经网络的训练还可包括:神经网络变体的节点应用激活函数,其中,激活函数将神经网络变体的节点输出值的绝对值限制为大于非零变量b的绝对值的值;训练的最终加权连接的正则化可包括:根据变量b的正变体应用正的加权连接值的截止,和/或根据变量b的负变体应用负的加权连接的截止。
在一个总体方面,一种神经网络设备包括:处理器,被配置为:通过应用神经网络的相邻层中的相邻节点之间的用于解释应用于神经网络的输入数据的轻量化的加权连接,产生神经网络,其中,神经网络具有包括多个节点的多个层,其中,所述多个层中的至少一个层的轻量化的加权连接包括具有绝对值不大于第一非零值的绝对值的值的加权连接,其中,轻量化的加权连接是用于解释输入数据而训练的一训练的神经网络的训练的最终加权连接的轻量化的加权连接,其中,训练的最终加权连接具有最大绝对值大于第一非零值的绝对值的值。
处理器还可被配置为:获得训练的最终加权连接;通过执行获得的训练的最终加权连接的轻量化,产生具有轻量化的加权连接的神经网络,其中,通过将训练的最终加权连接中的值大于第一非零值的正变体的至少一些最终加权连接设置为第一非零值的正变体和/或通过将训练的最终加权连接中的值小于第一非零值的负变体的至少其他一些最终加权连接设置为第一非零值的负变体,来执行获得的训练的最终加权连接的轻量化。
处理器还可被配置为:通过产生训练的神经网络的训练的最终加权连接,执行用于产生训练的神经网络的训练,其中,通过重复地将已标注的输入训练数据应用于具有用于执行输入训练数据的解释的分别调节的加权连接的神经网络变体直到训练的神经网络被确定,来产生训练的神经网络的训练的最终加权连接,其中,用于产生训练的神经网络的训练包括神经网络变体的节点应用激活函数,激活函数将正的节点输出值和负的节点输出值限制为最大绝对值。
第一非零值可在具有轻量化的加权连接的产生的神经网络的所述多个层中的至少两个层之间不同。
第一非零值可在具有轻量化的加权连接的产生的神经网络的卷积层的至少两个输出映射通道之间不同。
轻量化的加权连接可具有分别通过与log2(b-a)对应的位的数量表示的值,其中,b表示所述第一非零值的整数绝对值,a表示与轻量化的加权连接中的加权连接值的截断对应的不同的非零值的整数绝对值。
在一个总体方面,一种处理器实现的识别方法包括:获取与神经网络的至少一个层对应的正则化的参数,其中,正则化的参数是从另一神经网络的训练的最终参数得到的正则化的参数,并且正则化的参数包括至少一些与所述另一神经网络的训练的最终参数不同的参数值;基于与神经网络的所述至少一个层对应的确定的正则化变量,执行正则化的参数的解正则化;通过应用用于产生神经网络的所述至少一个层的解正则化的参数,产生神经网络;通过将输入数据应用于产生的神经网络,执行输入数据的识别操作。
所述识别方法还可包括:获取所述另一神经网络的训练的最终参数,其中,产生神经网络的步骤可包括:使用获取的训练的最终参数中的至少一些来产生神经网络的至少一个其他层。
所述识别方法还可包括:基于确定的不同的正则化变量,执行正则化的参数的另一解正则化,其中,确定的不同的正则化变量对应于神经网络的另外的至少一个层,或者对应于神经网络的所述至少一个层的层的输出映射通道,确定的不同的正则化变量与对应于神经网络的所述至少一个层的所述层的另一输出映射通道的确定的正则化变量不同。
正则化变量可包括表示正则化的参数中的基于零值的移位的偏置。
产生神经网络的步骤可包括:响应于解正则化的参数被确定为对应于m位整数,输入数据是n位实数,n大于m,将解正则化的参数解量化为n位实数;通过应用用于产生神经网络的所述至少一个层的解量化的参数,产生神经网络。
产生神经网络的步骤可包括:确定获取的正则化的参数是否是压缩的正则化的参数;响应于指示获取的正则化的参数是压缩的正则化的参数的确定,获取指示在压缩的正则化的参数的压缩期间哪些对应于所述至少一个层的参数被去除的位序列;基于位序列将解正则化的参数解压缩,应用解压缩的解正则化的参数来产生所述至少一个层。
将解正则化的参数解压缩的步骤可包括:通过将位序列中的第一索引的位值乘以解正则化参数的序列中的第二索引的参数,确定位序列中的第一索引的解压缩的参数;将第二索引增加第一索引的位值;将第一索引增加“1”。
在一个总体方面,提供一种存储指令的非暂时性计算机可读存储介质,当所述指令由处理器执行时,使处理器执行这里描述的操作中的一个、多个或全部。
在一个总体方面,一种识别设备包括:处理器,被配置为:获取与神经网络的至少一个层对应的正则化的参数;基于与神经网络的所述至少一个层对应的确定的正则化变量,执行正则化的参数的解正则化;通过应用用于产生神经网络的所述至少一个层的解正则化的参数,产生神经网络;通过将输入数据应用于产生的神经网络,执行输入数据的识别操作,其中,正则化的参数是从另一神经网络的训练的最终参数得到的正则化的参数,并且正则化的参数包括至少一些与所述另一神经网络的训练的最终参数不同的参数。
所述识别设备还可包括:相机,被配置为捕获图像作为输入数据。
处理器还可被配置为:获取所述另一神经网络的训练的最终参数并产生神经网络,处理器还可被配置为使用获取的训练的最终参数产生神经网络的至少一个其他层。
所述识别设备还可包括:存储器,存储器存储训练的最终参数,其中,处理器还可被配置为:应用训练的最终参数以产生所述另一神经网络,并将解正则化的参数应用于产生的另一神经网络的至少一个层以产生神经网络。
处理器还可被配置为:基于与神经网络的另外的至少一个层对应的或与神经网络的所述至少一个层的层的输出映射通道对应的确定的不同的正则化变量,执行正则化的参数的另一解正则化,其中,确定的不同的正则化变量与神经网络的所述至少一个层的所述层的另一输出映射通道对应的确定的正则化变量不同。
正则化变量可包括表示正则化的变量中的基于零值的移位的偏置。
由处理器产生神经网络的处理可包括:响应于解正则化的参数被确定为对应于m位整数,输入数据是n位实数,n大于m,将解正则化的参数解量化为n位实数,并通过应用用于产生神经网络的所述至少一个层的解量化的参数,产生神经网络。
处理器还可被配置为:确定获取的正则化的参数是否是压缩的正则化的参数,并响应于指示获取的正则化的参数是压缩的正则化的参数的确定,获取指示在压缩的正则化的参数的压缩期间哪些对应于所述至少一个层的参数被去除的位序列,基于位序列将解正则化的参数解压缩,并应用解压缩的解正则化的参数来产生所述至少一个层。
处理器还可被配置为:通过将位序列中的第一索引的位值乘以解正则化参数的序列中的第二索引的参数,确定位序列中的第一索引的解压缩的参数,将第二索引增加第一索引的位值;将第一索引增加“1”,以解压缩解正则化的参数。
在一个总体方面,一种神经网络设备包括:处理器,被配置为:产生具有包括多个节点的多个层的神经网络,并应用在用于解释应用于神经网络的输入数据的神经网络的相邻层中的相邻节点之间的轻量化的加权连接,其中,所述多个层中的至少一个层的轻量化的加权连接包括根据第一正则化而正则化为针对绝对值小于第一非零值的绝对值的各个非零值具有等于零的值的加权连接,其中,为了产生神经网络,处理器被配置为:通过重复地将已标注的输入训练数据应用于具有根据第一正则化而轻量化分别调节的用于执行输入训练数据的解释的轻量化的加权连接的神经网络变体直到神经网络被产生,来执行训练,调节轻量化的加权连接的处理包括在用于产生训练的神经网络的训练期间的第二不同的正则化。
第二不同的正则化可包括高斯正则化或拉普拉斯正则化。
第一正则化还可包括:控制将被正则化为具有绝对值不大于第二非零值的绝对值的值的加权连接,训练的处理可包括神经网络变体的节点应用激活函数,其中,激活函数将正的节点输出值和负的节点输出值限制为大于第二非零值的绝对值的最大绝对值。
其他特征和方面从下面的具体实施方式、附图和权利要求将是清楚的。
附图说明
图1示出根据一个或多个实施例的轻量化设备的操作的示例。
图2示出量化处理的示例。
图3示出截止操作(cutoff operation)的示例。
图4示出截断操作(truncation operation)的示例。
图5A和图5B示出正则化操作的示例和基于正则化操作的参数的分布的示例。
图6是示出迭代的正则化处理的示例的流程图。
图7A和图7B示出确定候选范围的方法的示例。
图8示出通过正则化改变序列的示例。
图9示出通过压缩改变序列的示例。
图10示出通过轻量化改变参数的分布的示例。
图11示出训练的参数的后处理处理的示例。
图12示出训练的参数的参数调谐处理的示例。
图13示出训练处理的示例。
图14示出识别处理的示例。
图15示出通过恢复改变参数的分布的示例。
图16示出通过解压缩改变序列的示例。
图17示出通过除法改变序列的示例。
图18示出通过除法和压缩改变序列的示例。
图19是示出轻量化方法的示例的流程图。
图20是示出识别方法的示例的流程图。
图21是示出根据一个或多个实施例的被配置为实现轻量化操作的电子系统的示例。
贯穿附图和具体实施方式,除非另外被描述或提供,相同的附图参考标号将被理解为表示相同或相似的元件、特征和结构。为了清楚、说明和便利,附图可不按比例,并且附图中的元件的相对大小、比例和描写可被夸大。
具体实施方式
提供下面的详细描述以帮助读者获得对在此描述的方法、设备和/或系统的全面理解。然而,在理解本申请的公开后,在此描述的方法、设备和/或系统的各种变化、修改和等同物将是清楚的。例如,在此描述的操作的顺序仅是示例,操作的顺序不被局限于在此阐述的顺序,除了必须按特定次序发生的操作之外,可在理解本申请的公开后,对在此描述的操作的顺序进行改变将是清楚的。此外,为了更加清楚和简洁,本领域中已知的功能和结构的描述可被省略。
在此描述的特征可以以不同的形式实现,并且不被解释为受限于在此描述的示例。相反,在此描述的示例仅被提供以示出实施在此描述的方法、设备和/或系统的许多可行方式中的一些方式,这在理解本申请的公开之后将是清楚的。
可对这些示例做出各种改变和修改。这里,这些示例不被解释为限制本公开,而应该被理解为包括在本公开的构思和技术范围内的所有的改变、等同物和代替物。
尽管术语“第一”或“第二”可用于解释各种组件,但是逐渐不限于这些术语。这些术语应仅用于将一个组件与另一组件区分开来。例如,在根据本公开的构思的权利的范围内,“第一”组件可被称为“第二”组件,或者,相似地,“第二”组件可被称为“第一”组件。
如在此使用的,除非上下文另外明确指示,否则单数形式也意在包括复数形式。还将理解,当在本说明书中使用时,术语“包括/包含”和/或“具有”指定存在叙述的特征、整体、操作、元件或组件或它们的组,但是不排除存在或添加一个或多个其它特征、整体、操作、元件、组件和/或它们的组。
除非另外定义,否则在此使用的包括技术术语或科学术语的所有术语具有与本公开所属领域普通技术人员通常理解的含义相同的含义。除非另外在此定义,否则在通用字典中定义的术语应被解释为具有与现有技术的背景中的含义一致的含义,并且不将被解释为理想化或过于正式的含义。
在下文中,将参照附图详细描述示例,相同的参考标号始终表示相同的元件,与此相关的重复描述可被省略。
图1示出轻量化神经网络的设备100的示例。在本公开中,轻量化神经网络的设备被称为“轻量化设备”,然而实施例不限制这样的仅执行这样的轻量化操作的设备,而是实施例包括还被配置为训练如下所述的神经网络,并且或者可选地,还在示例识别、分类或其他操作中使用训练的神经网络或轻量化的神经网络的这样的设备。参照图1,轻量化设备100获取与包括在神经网络中的层对应的参数。例如,轻量化设备100可从存储器或通过外部请求获取如在通过轻量化设备100训练神经网络期间由轻量化设备100确定的参数。此外,轻量化设备100可从表示训练的神经网络的一些或所有的训练的加权连接的提供的连接权重向量、矩阵或其他格式的连接权重获取参数。例如,作为通过另一处理设备或服务器训练神经网络的结果,可向轻量化设备100提供连接权重向量、矩阵或其他格式的连接权重。例如,轻量化设备是一个或多个处理器和一个或多个非暂时性存储器的代表,例如,所述非暂时性存储器用于存储这样的参数、用于在神经网络的轻量化期间及之后使用、以及用于存储当通过一个或多个处理器执行时使所述一个或多个处理器实现在此描述的一个或多个或者所有的操作的指令。
神经网络包括多个层,每个层包括多个节点。例如,可存在一个输入层、至少一个隐含层和一个输出层。根据神经网络的架构,包括在相邻层中的节点可根据各个连接权重选择性地被连接。例如,神经网络可通过处理器(即,一个或多个处理器)来实现,其中,处理器被配置为产生具有均包括多个节点的这样的多个层的神经网络结构/架构,并被配置为应用神经网络结构的相邻层中的相邻节点之间的这样的加权连接,以解释应用于神经网络结构的输入数据。仅作为示例,在此这样的输入数据的“解释”可包括执行的识别或拒绝(诸如,语言/声学或图像识别、翻译或拒绝),或者输入数据二态或多类分类、聚类、模式观察、转化和/或回归,以及神经网络的任何其他训练对象。在不同的实施例中,仅作为非限制性示例,神经网络可针对声学和/或语言识别和/或翻译,图像识别、辨别、拒绝或区分,或者电池特性监视或预测(projection)被训练。因此,基于训练数据和期望的解释对象、架构、相邻节点之间的选择性连接和对应的连接权重可在训练期间改变,直到神经网络被训练为针对期望的解释对象的期望的可接受性。训练的神经网络的因而产生的连接权重可被称为神经网络的参数。例如,神经网络可基于已标注的输入图像信息或期望的对应的输出图像、分类或几何参数通过反向传播或模拟退火算法被训练。例如,在训练中,不同隐含层的节点之间的连接权重被递归地调节,直到对应的神经网络模型被训练为具有期望的精确度或低于最大错误率。例如,各个训练的神经网络可被存储在训练设备或识别设备的存储器中。在示例中,训练的神经网络可以以训练的向量、矩阵或其他格式(例如,仅作为示例,向量、矩阵或其他格式的元素表示或表明对应的神经网络结构的对应的训练的加权连接(参数))被存储。存储的训练的神经网络还可包括超参数信息(hyper-parameter information),其中,超参数信息可定义对应的神经网络的示例存储的训练的参数所对应的特定结构或架构。超参数信息可定义输入层和输出层的架构或结构,以及存在多少隐含层和各个隐含层的功能和结构/架构,这样的各个布置和哪些是完全连接层、循环层、卷积层、解卷积层或池化层(pooling layer)仅作为示例。超参数还可包括配置的信息和任意偏差的值和/或神经网络中的与节点的激活函数、节点的类型对应的上下文节点(诸如,长短期记忆节点),并可定义神经网络的可根据训练的神经网络的化身(embodiment)和解释对象而改变的任何循环结构或任何进一步的循环结构。
轻量化设备100将获取的参数轻量化,并可针对神经网络的每个层或针对神经网络的选择的层重复轻量化操作。轻量化设备100使用量化、正则化或压缩中的至少一个来将参数轻量化。量化可用于改变表示方案以减小数据的尺寸,正则化可用于使用截断操作或截止操作中的至少一个来减小参数的值的范围。压缩可用于通过将具有零值的参数与具有非零值的参数进行区分来减小表示参数的数据的尺寸。下面将进一步描述量化、正则化和压缩。
在图1的曲线图中,所示的获取的参数(即,在轻量化之前)的第一范围和所示的轻量化的参数的第二范围中的每个水平轴表示对应参数的值,所示的获取的参数的第一范围和所示的轻量化的参数的第二范围中的每个纵轴表示对应参数的频数。在本公开中,参数的频数可表示参数的数量(例如,针对获取的层存在的参数的数量)。获取的层的参数可对应于节点的先前输入层或先前隐含层与当前隐含层之间的各个连接权重、层内节点之间的连接权重或者节点的当前层与后继层或输出层之间的各个连接权重。在一些层中,一些连接权重还可由多个节点共享。参数根据训练处理将具有各种值,所以训练的神经网络具有唯一且专门的配置,因此轻量化设备100可通过轻量化操作来选择性地限制这些专门训练的参数的值。通过轻量化操作,可限制获取的参数的值并使由此产生的参数分布在比第一范围窄的第二范围中。使用更窄的第二范围,轻量化的参数的分布范围更加受限,因此当实现具有轻量化的参数的神经网络时,可减少存储器使用。在下面的描述中,第一范围与第二范围还可被分别称为“原始范围”与“轻量范围”或“轻量化范围”。
随着包括在神经网络中的层的数量增加(例如,针对更精细的训练),使用尺寸增加的神经网络的识别操作和训练这样的尺寸增加的神经网络所需的处理、存储器和时间资源的量快速增加。相反,在一个或多个实施例中,如果将神经网络轻量化,则可制止这样的资源的增加,并且可能需要更少的资源。
基于神经网络的轻量化,可在能够使用高水平资源的服务器中和可用资源受限的用户装置中训练神经网络。例如,在一个或多个实施例中,用户可使用用户装置(例如,移动终端)实时训练优化的模型。典型的训练可能由于偏离的或过度的训练而导致神经网络中的非故意的过度拟合,这可导致神经网络的性能的下降。通过将神经网络轻量化,可能去除或减少可导致这样的过度拟合的非必要参数。因此,可通过神经网络的轻量化提高神经网络的性能。
将神经网络轻量化的轻量化处理可应用于针对训练和识别的各种操作。例如,轻量化处理可应用于已经完全或最终训练的(即,在最终精度或最小错误率阈值内的)完全或最终训练的参数的后处理或调谐(tune),或者在训练参数期间直接应用。通过轻量化处理,可在轻量化的参数中减少由完全训练的参数占据的存储器空间,并可通过将具有轻量化的参数的神经网络将被过度拟合为原始训练数据的倾向降低(与原始神经网络的这样的过度拟合的倾向相比),提高超过原始神经网络的具有轻量化的参数的神经网络的性能。
轻量化的参数可被存储在轻量化设备100的存储器中,并且对于在识别处理中的使用(例如,通过轻量化设备100或另一恢复设备)是可用的。轻量化设备100或这样的恢复设备可基于被应用于神经网络的获取的参数的轻量化方案,使用解量化、解正则化和解压缩中的至少一个来恢复轻量化的参数。
图2示出量化处理的示例。量化表示用于减小数据尺寸的表示方案的改变。参数基于系统或化身的类型而具有预定的表示方案。例如,图1的示例性的未轻量化的(或者,‘原始的’)参数可通过神经网络的对应的训练操作由小数的浮点数原始地表示。轻量化设备可改变这样的原始参数的表示方案,以减少用于将原始参数轻量化的数据的尺寸。例如,轻量化设备可将原始参数的表示方案从小数的浮点数改变为整数的定点表示(fixed pointrepresentation)。例如,轻量化设备可执行用于量化的量化函数2Q。作为另一示例,原始参数的表示方案可通过这样的量化函数2Q从32位浮点表示改变为16位定点表示。额外的或可选的量化方法也是可用的。
例如,小数范围、整数范围、浮点表示、定点表示仅是不同表示方案的示例,其他的公知表示方案也可应用于量化。此外,尽管原始参数是浮点表示的示例已被提供,但实施例不限于此。此外,量化、正则化和压缩中的至少一个可应用于神经网络的轻量化,因此神经网络可基于正则化和/或压缩被进一步轻量化。为了描述的方便,仅作为非限制性示例,下面描述将原始参数量化为16位定点整数的示例,注意,可选的实施例也是可用的。在这个示例中,量化的参数以-215到215-1的整数范围来表示。
图3示出截止操作(cutoff operation)的示例。参照图3,如上所述,原始参数通过专门的训练处理将具有各种专门训练的值。轻量化设备(诸如,图1的轻量化设备100)可通过截断操作和截止操作中的至少一个将参数(例如,原始参数或量化的参数)正则化。截止操作是将这样的参数设为具有至多最大值和/或具有至少最小值。例如,轻量化设备可将具有大于或等于与b对应的最大值(例如,当示例性的量化也被执行时的2b)的值的参数设置为具有最大值,并可将具有小于或等于与-b对应的最小值(例如,当示例性的量化也被执行时的2-b)的值的参数设置为具有最小值。仅作为示例(诸如,在该示例中,图2的量化未被执行),轻量化设备可将具有大于或等于最大值的原始值的参数设置为b,并可将具有小于或等于最小值的原始值的参数设置为-b,注意,实施例不限于此。因此,在这个示例中,最大值和最小值可基于示例性的变量b(例如,通过变量b的选择性设置)预先被确定。
神经网络的参数中的各个值的存在对使用神经网络的识别器的性能方面是有利的,然而,当这样的参数具有过高的值或过低的值时,可降低识别器的性能。因此,这样的参数的值的范围可通过示例性的截止操作来限制,这可导致使用具有选择性的截止参数的神经网络的识别器的性能的提高。此外,可通过限制原始参数或量化的参数的值来减小表示原始参数或量化的参数所必须的数据的尺寸或量。因此,通过截止操作实现原始参数或量化的参数的轻量化是可行的。为了在减小数据的尺寸的同时提高或至少维持识别器的性能,这样的参数的值可被期望地截止到合适的最大值和/或合适的最小值。下面将进一步描述确定用于截止操作的变量b的处理。此外,尽管参照作为与同一变量b对应的正值或负值来描述合适的最大值和合适的最小值,但实施例不限于此,因此可基于不同的变量或依赖同一变量b的另一替换物来设置合适的最大值和合适的最小值。
图4示出截断操作的示例。这里,图4的截断操作可与图3的截止操作协作地执行,或者代替图3的截止操作来执行。轻量化设备(诸如,图1的轻量化设备100)通过截断操作将参数正则化。参照图4,轻量化设备可将与输入参数(例如,前述的原始参数或量化的参数)之中的截断范围对应的参数设置为零。截断范围可基于示例所示的变量a来确定(例如,截断范围在与-a对应的负值(例如,当示例性的量化也被执行时的-2a)处开始至与a对应的正值(例如,当示例性的量化也被执行时的2a))。仅作为示例(诸如,在该示例中,图2的量化未被执行),截断范围可以是-a至a,注意,实施例不限于此。具有接近零的值的输入参数对实现对应的神经网络的识别器的性能具有相对小的影响,然而,具有零值的输入参数在根据下面将进一步描述的一个或多个实施例的压缩处理中极大地减小数据的尺寸。因此,通过将具有接近零的输入参数设置为零,轻量化可被最大化。然而,为了在减小数据的尺寸的同时提高或至少维持识别器的性能,参数可被期望地截断到合适的截断范围。下面将进一步描述确定用于设置截断操作的截断范围的变量a的处理。与上面相似,尽管对于截断操作的两个限度对变量a进行了讨论,但实施例不限于此,因此可基于不同的变量或依赖同一变量a的另一替换物来设置变量a。
图5A和图5B示出正则化操作的示例和基于正则化操作的参数的分布的示例。图5A示出执行(诸如,前述的原始参数和参照图2讨论的量化的参数的)截止操作和截断操作两者(例如,图3的截止操作和图4的截断操作两者)的示例。轻量化设备(诸如,图1的轻量化设备100)可从原始范围提取合适的轻量范围(例如,图1的分别示出的第一范围和第二范围),以在减小用于实现神经网络所必须的数据的尺寸的同时,提高或至少维持实现具有轻量化的参数的神经网络的识别器的性能。
图5B示出未被正则化的训练的神经网络的原始参数的示例值的分布510和在包括针对轻量范围和轻量范围的分布范围的移位的图5A的截断操作和截止操作的正则化之后的对应参数的值的分布520。在图5B中,x轴表示各个参数的各个序列,y轴描述各个参数的对应的值。原始参数的原始范围对应于原始参数的值所分布的整个范围,并且原始参数的原始范围通过分布510中的y轴上的极小值(例如,-1)与极大值(例如,1)之间的值来表示。轻量范围对应于通过原始范围的正则化提取的不同范围,并且轻量范围被表示为y轴的值所分布的范围(例如,基于与-b对应的最小值至与-a对应的下截断值的范围,和基于与a对应的上截断值至与b对应的最大值的范围)。此外,轻量范围的各个参数的值可(例如,基于下截断值和上截断值(-b+a)至(b-a))分别朝向零移位,由于移位,导致所示的分布520。例如,当前述的量化被执行时,轻量范围可被确定为包括(如下所讨论的)“-2b至-2a”和“2a至2b”的范围。然后,例如,当轻量范围的参数的分布范围被移位并且量化也已被执行时,落入-2b至-2a内的参数值可朝向零移位2a,并且落入2a至2b内的参数值可朝向零移位-2a。再次,这里,轻量范围和移位的分布范围可根据包括变量a和变量b的正则化变量来确定,然而实施例不限于此。
例如,返回参照图5A,轻量化设备可增加变量a,或者可减小变量b,或者可增加变量a并减小变量b,以调节正则化变量。轻量化设备可迭代地调节正则化变量。例如,轻量化设备可针对每次迭代基于性能函数设置正则化变量,并根据设置的正则化变量来获得性能指数。轻量化设备可在迭代地调节正则化变量的同时执行以上操作,直到性能指数满足预设标准。例如,当性能指数满足标准时,轻量化设备可终止以上操作的迭代,并基于最终正则化变量来确定轻量范围。例如,性能指数包括识别率和/或错误率。
在这个示例中,标准可被设置为用于在防止在正则化之后获得的性能小于在正则化之前或的性能的同时实现最大数量的迭代(例如,因此,正则化的参数可能不会导致具有比拥有原始参数的原始神经网络低的性能的神经网络)的第一标准,和/或用于将正则化之后或的性能增大到(诸如,具有更大识别率或更小错误率的)最大性能(即,具有比原始神经网络的性能优秀的性能)的第二标准。当使用第一标准时,可认为轻量化被最大化,并且当使用第二标准时,可认为识别性能被最大化,这些将在下面进一步描述。
图6是示出迭代的正则化处理的示例的流程图。参照图6,目标识别率通过操作625和操作635来确定。在操作625中,基于具有设置的结构并根据原始训练的参数配置的神经网络的操作,从验证数据库(DB)中的验证数据提取特征。验证数据均可包括数据对(例如,一对不同但相关的数据)。例如,验证数据包括与同一人对应的数据对或者与针对其根据原始训练的参数配置的神经网络被训练的不同的人对应的数据对。在这样的示例中,数据对可以是具体的人的两个不同的图像。在操作625中,通过根据原始训练的参数配置的神经网络的操作提取每个验证数据的特征。
在操作635中,可彼此匹配或比较提取的特征,以确定原始训练的参数的目标识别率。例如,通过匹配来自数据对的各个提取的特征来计算识别率。例如,在这个示例中,识别率是从针对数据对的提取的特征指示同一面部的成功的识别率的验证率(VR)。例如,如果提取的特征均是根据原始训练的参数配置的神经网络的输出层的特征向量,则匹配操作可确定两个提取的特征向量之间的相似性。当验证数据的特征匹配结果成功识别或辨别同一人时,识别率可增大。同样地,当验证数据的特征匹配结果未成功地识别或错误地辨别同一人时,识别率可减小。因为提取的特征基于在操作625中的原始训练的参数,所以目标识别率是针对原始训练的参数的识别率。在一个示例中,来自验证数据的数据对可包括用于训练神经网络以获得原始训练的参数的一对训练图像数据,或者来自验证数据的数据对可以是替代的图像。此外,尽管在这个示例中讨论了数据对,但实施例不限于此,因为额外的或替代的验证数据还可被共同地比较来辨别原始训练的参数的识别率。在另一示例中,验证数据还可包括根据其神经网络被训练的不同的人的数据表示,以识别例如未识别的人的表示、还或者或可选地辨别根据原始训练的参数配置的神经网络的错误拒绝率或正确拒绝率。匹配和比较还可仅考虑分别指示的(诸如,由针对数据对的每个输入数据的神经网络的示例输出层的最大概率结果指示的)由每个提取的特征数据表示的识别的人。此外,尽管已参照作为神经网络的输出层的输出结果的提取的特征讨论了示例,但可针对根据原始训练的参数配置的神经网络的每个隐含层或选择的隐含层提取相似的特征。
图6的迭代的正则化处理可以是针对正则化的训练的操作继续搜索轻量范围的迭代的处理,直到(如以上关于图5A至图5B所讨论的)使针对神经网络的每个层的候选正则化变量a(例如,针对截断点)与b(例如,针对截止点)之间的差最小化并且满足这样的前述的示例标准。
例如,通过对操作610、操作620、操作630和操作640进行迭代,可执行迭代的正则化处理。例如,在第一迭代中,在操作610,可(例如,基于第一候选变量a和b)将原始训练的参数正则化。在操作620,从被配置为具有与第一候选变量对应的正则化的参数的神经网络提取验证数据的特征。在操作630,诸如以上关于操作625和操作635所讨论的,通过匹配验证数据的提取的特征来计算候选正则化的识别率。在操作640,将候选正则化的识别率与目标识别率比较。例如,在操作640中,当将候选正则化的识别率确定为大于或等于目标识别率时,通过返回到操作610并重复操作620至操作640来执行第二迭代。在另一示例中,使用错误率而不是识别率。在这个示例中,修改操作640使得当候选正则化的错误率小于目标错误率时迭代地执行迭代正则化处理。
在继第一迭代之后的迭代中,在第一操作610,对在先前的迭代中正则化的参数进行不同地正则化和更新。例如,在第二迭代中,轻量化设备(诸如,图1的轻量化设备)通过增加变量a或者减小变量b,或者通过增加变量a并减小变量b来减小候选范围。例如,候选范围是参数值基于仍未确定的中间正则化变量而分布的范围。
在一个示例中,如上所述,正则化变量还可表示用于对基于零值而正则化的参数进行移位的偏移。轻量化设备可通过移位操作增加或减小正则化变量。例如,当在第一迭代中将变量a和b分别初始设置为“0”和“15”时(例如,在诸如以上关于图2讨论的量化也被执行的示例中),可将候选范围初始确定为包括-215+1至-20和20至215-1的范围。为了减小第二迭代的候选范围,轻量化设备将变量a增大到“1”,并将变量b减小到“14”。在这个示例中,通过移位操作将用于第二迭代的候选范围简单确定为包括-214+1至-21和21至214-1的范围。例如,轻量化设备可包括用于移位操作的移位寄存器。在另一示例中,轻量化设备以小批量(mini-batch)为单位减小候选范围。例如,轻量化设备可以以29为单位减小候选范围。这里,性能由于当以合适大的单位减小候选范围时的迭代而可预见地改变,因此通过以小批量为单位减小候选范围来确定合适的正则化变量。
基于各个可选正则化的参数针对每次迭代执行操作620、操作630和操作640。当正则化的识别率响应于迭代地执行迭代正则化处理而变得小于目标识别率时,可终止迭代的正则化处理,并将根据当时的当前候选变量的正则化的参数输出为操作640中最优正则化的参数。在一个示例中,可使用错误率而不用识别率。在这个示例中,当针对迭代的正则化的错误率大于或等于目标错误率时,输出最优正则化的参数。
例如,可通过图1的轻量化设备100和/或下面将描述的图11的轻量化设备1120来执行上述迭代正则化处理。例如,轻量化设备1120可从训练设备1110接收与原始训练的参数对应的训练的参数和与对应的神经网络的结构相关的信息,并通过图6的迭代的正则化处理输出用于与最优正则化的参数对应的这样的神经网络结构的轻量化的参数。轻量化设备1120可执行量化和压缩以及上面的正则化,这将在下面进一步描述。此外,尽管在此提供以基数2单位执行候选范围的迭代变更的示例,但实施例不限于此,因为针对候选范围的改变的替代单位也是可用的,其中,候选范围包括被不同改变的候选范围的上范围和下范围,并且针对由于示例变量a和b对候选范围的改变可同样或可选地不同地被实施。此外,诸如上述使用示例小批量的示例,例如,根据对应的正则化的识别率与目标识别率或设置的正则化的限度之间的差多大或多小,对候选范围的单位改变在迭代之间可以是不同的。
图7A和图7B示出确定候选范围的方法的示例。参照图7A,当迭代的次数增加时(诸如,在增加图6的操作的迭代中),自鉴定成功率增加迭代的数量,并且然后再次减小。图7A示出当误识率(FAR)在所示迭代之间被维持时自鉴定成功率的变化。
当将原始的训练参数正则化时,原始训练的参数中的至少一些的值可从它们的原始训练的值被改变。不管这些改变,识别率通过多个迭代被示出为增加,因为原始训练参数的正则化可减少或抑制包括在预训练的DB中的错误和噪声的畸变。例如,当截断值或正则化处理的量被控制为增加时,神经网络的节点之间的训练的原始精细连接可被排除,这还导致在所有的正则化的参数值之中的零值的分布的增加。在这个示例中,诸如在图3和图5A中所示,这样的精细的训练的原始连接表示值在截断量处或在截断量下的参数或连接权重。此外,诸如上面在图3和图5A中所讨论的,正则化处理可根据截止值来限制最大参数值的自由度。因此,可通过正则化处理来缓和在预训练的DB中的错误和噪声的畸变。
如上所述,根据一个或多个实施例的轻量化设备对参数正则化进行迭代,直到自鉴定成功率增加并随后再次降低以达到性能阈值。例如,图7A显示性能阈值对应于当自鉴定成功率最终匹配原始训练的参数的识别率时的示例。结果,轻量化设备可基于第一标准确定最优正则化的参数(例如,参数a和b)以使轻量范围最小化,而不是与根据原始训练的参数配置的神经网络相比减小根据正则化的参数配置的神经网络的性能。在一个示例中,轻量化设备可基于第二标准确定正则化的参数,以迭代地执行正则化,直到识别率被最大化(例如,超过根据原始训练的参数配置的神经网络)。针对这个示例性的第二标准,尽管与例如基于第一标准通过迭代处理能够实现的轻量化的最大量相比,轻量化的限度减小,但性能可被最大化。
与示出在正则化处理中考虑自鉴定成功(识别)率的示例相比,图7B示出在正则化处理中考虑错误率的示例。错误率可被不同地定义。例如,错误率可对应于指示面部识别中的漏失(loss)的面部分类训练漏失。还可考虑替代的错误率。
如在图7B中所示,随着迭代的次数增加(诸如,在增加图6的操作的迭代中),针对迭代次数的错误率降低,然后再次增加。例如,初始错误率可被认为是第一参考值,其中,第一参考值还可对应于根据原始训练的参数配置的神经网络的错误率。如在图7B中所示,响应于i1个迭代,错误率已降低为第二参考值。错误率然后随着迭代次数从i1增加到i2而逐渐增加返回到第一参考值。
如上所述,在正则化处理考虑错误率的示例中,为了使轻量化最大化,轻量化设备可基于前述的第一标准将基于针对第i2次重复的对应的变量a和b的候选范围确定为用于原始训练的参数的正则化的最终轻量范围。在正则化处理考虑错误率的另一示例中,轻量化设备可基于前述的第二标准确定最终轻量范围,因此将基于针对第i1次重复的对应的变量a和b的候选范围确定为最终轻量范围,以使性能和原始训练的参数的一些轻量化一起最大化为中间水平。在这个第二标准的示例中,尽管(诸如,根据第一标准的)轻量化的限度没有被最大化,但性能可被最大化。
实施例还包括考虑第一标准和第二标准两者,以将最终轻量范围确定为在与轻量化的最大限度对应的候选范围和与性能的最大提高(例如,识别率的最大增加或错误率的最大降低)对应的候选范围之间。例如,用户可根据所述两个标准设置所述两个各自的候选范围之间的加权或比例,以定义从最大轻量化到最大性能增加,期望的重点应处于哪儿。
此外,参数还可在训练参数期间(即,在训练具有用于得到原始训练参数的预设训练输入的神经网络期间)被正则化。例如,通过训练设备训练的中间参数可被正则化,因此,根据实施例,这样的正则化还可对原始训练处理造成影响,这将参照图12和图13进一步描述,并且还可基于与以上关于图7A和图7B的讨论相似的第一标准和第二标准来确定这样的训练和正则化的迭代的次数。
图8示出通过正则化改变序列的示例。图8示出未被正则化的参数的序列810和被正则化之后的参数的序列820。在序列810和序列820中,vi表示具有非零值的参数,i表示具有非零值的参数的索引,因此,序列810和序列820分别示出非零参数v1至v9。这里,尽管在序列810和序列820中的每个序列的参数的数量是“16”,但是实施例不限于此,图8还示出16个参数仅9个是非零值。在这个示例中,序列810和序列820的参数分别对应于模型的不同层(例如,具有特定结构的神经网络的不同层)的相邻节点之间的加权连接。例如,如以上关于图2所描述的,量化可包括序列810的参数从32位浮点值量化为16位定点整数。在一个示例中,前述的序列810的索引信息还可被获得和使用,因此序列810的量化仅有选择地将序列810的非零参数量化。序列810的浮点参数均可在存储器或存储中具有或需要使用或预留16位。
因此,通过正则化,轻量化设备(诸如,图1的轻量化设备100或图11的轻量化设备1120)根据轻量范围减小表示参数的数据的尺寸。因为用于表示参数的位的数量基于从原始范围到根据在此描述的这样的正则化处理的轻量范围的参数的分布范围的减小而减少,所以与未正则化的参数的原始范围的值的先前未限制的或更大的限度相比,轻量化设备可例如基于包括在轻量范围中的值的范围的改变的限度,使用比用于表示针对原始范围的序列810所必须的更小的位的数量,来表示序列820的正则化的参数中的每个。例如,轻量化设备可确定用于表示与轻量范围对应的有限集合中的元素的位的最小数量,并可基于确定的位的最小数量来表示正则化的参数。例如,对于图8的示例,轻量化设备可将满足条件“2x≤a”的最大的x确定为m,并可将满足条件“2x≥b”的最小的x确定为n。在这个示例中,序列820的正则化的参数均可具有“n-m”位的尺寸。因为轻量范围比原始范围窄,所以“n-m”的值小于“16”。因此,经由正则化,可将每个参数的位尺寸减小值“16-(n-m)”。
如下所讨论的,仅作为一个示例,当正则化包括轻量范围的分布范围朝向零的移位时(例如,将全部最大参数值从±2b减小到±2(b-a)以及在正则化中根据±2a通过截断产生的零的去除),可(或者,额外地)实现这样的用于表示每个参数所需的位的减少。
图9示出通过压缩改变序列的示例。未被压缩的和具有零值的参数可通常占据或需要与具有非零值的参数相同的存储器空间。例如,如参照图8所示,序列820中的正则化的参数可需要或预留用于所有参数的存储器空间,即使一些参数具有零值。通过压缩使由具有零值的参数占据或需要的存储器空间最小化,可进一步使基于正则化的轻量化最大化(例如,图8的序列820的正则化的参数被压缩为仅占据或需要用于“9”个(v1-v9)正则化的参数的空间)。
例如,图9示出序列910、非零序列920和位序列930。序列910是没有压缩的参数序列,因此,序列910包括用于零值的参数的空间或空间预留。非零序列920和位序列930通过压缩序列910而获得。与关于图8的上面内容相似,vi表示具有非零值的参数,i表示这样的非零值参数的索引。例如,当序列910表示图8的序列820的正则化的参数时,序列910的参数由于正则化而均具有“n-m”位的尺寸。轻量化设备可基于具有零值的参数的辨别来无损地压缩序列910。例如,无损压缩表示恢复的序列910可以是从序列920并基于用于相等地匹配原始序列910的索引信息能够恢复的序列。例如,索引信息可以是在压缩期间获得的用于辨别原始序列910的哪些参数是非零和/或哪些是零的位序列930,因此,压缩对应于无损压缩。
如上所述,轻量化设备可在压缩操作期间产生非零序列920和位序列930。可选地,可在压缩之前产生位序列930,或者另外基于对原始序列910的考虑在压缩之后得到位序列930。在上面的示例中,非零序列920仅包括序列910中的所有的正则化的参数之中具有非零值的正则化的参数,并且位序列930可提供关于序列910的索引信息,因此,位序列930可指示原始序列910的参数是否具有零值或原始序列910的哪个参数具有零值,和/或原始序列910的哪些参数具有非零值。在位序列930中,仅作为示例,每个数据被表示为1位。例如,由于位序列930中的位分别与序列910的参数对应,位序列930可具有与序列910的参数的数量相同的位的数量。如在图9中所示,位序列930中的位值“1”指示序列910中的对应的参数不具有零值,位序列930中的位值“0”指示序列910中的对应的参数具有零值。可选地,位值“0”可用于表示非零值参数,位值“1”可用于表示零值参数具有与值“n-m”和参数的总数量之积相同的全部位尺寸的序列910通过与参数的总数量相同的位的数量来表示,同时,通过上述无损压缩,序列920可具有更少的根据值“n-m”与具有非零值的序列910的参数的数量之积的全部位尺寸。
例如,如上面关于图5B的分布520所讨论的,在正则化包括根据变量a的截断的这样的示例中,在执行这样的压缩以去除零值参数之后,可调节轻量范围(例如,量化的-2b至-2a和2a至2b)内的剩余的非零值参数值,以移位示例性的剩余参数值的分布范围(例如,朝向零将在-2b至-2a之间的每个参数值移位2a,并朝向零将在2a至2b之间的每个参数值移位-2a)。因此,由于正则化处理,需要较少数量的位来表示序列920中的每个正则化的参数。下面还将参照图10的分布1040进一步讨论这种移位,并且可以可选地作为上述的正则化处理的部分执行这种移位。
上面的压缩效果随着具有零值的参数的数量增加而更加最大化。例如,随着在图4和图5A中所示的正则化处理,正则化的参数零值的数量可增加而超过任何原始零值参数的数量,并且剩余参数值可被移位,以调节正则化的参数的分布范围,因此,可通过压缩这样的正则化的参数进一步降低存储器需求。
此外,例如,虽然原始训练的参数可表示对应训练的原始神经网络的相邻层的节点之间的连接权重,并因此表示具有与训练的参数对应的加权连接和所有的节点的训练的神经网络结构,但是当执行对原始训练的参数的轻量化(诸如,包括上述的量化、截断与截止、分布范围移位和/或压缩操作)时,存在于原始神经网络中的加权连接可不再存在或具有零值,然后,根据轻量化的参数的新的神经网络将具有没有这样的不存在的加权连接的不同的结构。此外,如果所有先前的到任意原始节点的加权连接也不再存在于轻量化的参数中,则根据轻量化的参数配置的新的神经网络也可不包括那些对应的原始节点。因此,通过特定结构的神经网络的原始训练的参数的轻量化,由此产生的轻量化的参数可定义与原始神经网络结构不同的神经网络结构,因此,与针对意图的识别、分类或其他操作的原始神经网络的效率或性能相比,可更有效地和/或具有更好性能地执行相同的原始意图的识别、分类或其他操作。
图10示出根据一个或多个实施例的通过轻量化改变参数的分布的示例。例如,图10示出(诸如,通过上面关于图2至图9描述的处理中的一个或多个或所有的处理实现的)未被轻量化的原始参数的分布1010、由原始参数的量化产生的量化的参数的分布1020、由量化的参数的正则化产生的正则化的参数的分布1030和由所述正则化的参数的压缩产生的压缩的参数的分布1040。如通过分布1010至分布1040所示,参数的分布越大,参数的值就越靠近零值,例如,最多数量的参数集中在零值周围,而分布越小越远离零。换句话说,参数的频数随着参数值的增加而降低,使得存在的大值参数比小值参数少。这里,如在分布1010与分布1020之间所示,尽管量化导致参数的表示方案改变,但是对应的分布由于量化可能不改变。
在正则化处理中,截断范围中的参数(例如,与-a至a对应的范围(例如,-2a至2a))可通过截断操作被设置为零。此外,在正则化处理中,具有大于或等于与b对应的最大值(例如,2b)的参数和具有小于或等于与-b对应的最小值(例如,-2b)的参数可通过截止操作被设置为具有与b对应的最大值或与-b对应的最小值。因此,在分布1030中,具有零值的参数的频数由于截断操作而增加,并且具有与b对应的最大值和与-b对应的最小值的参数的频数由于截止操作而增加。
在压缩处理中,如在分布1040中所示,分布1030中具有零值的参数已被去除,分布范围已朝向零被移位,其中,分布范围针对小于零的参数值对应于分布1030中的-b与-a之间的范围,针对大于零的参数值对应于分布1030中的a与b之间的范围。因此,分布1040由于压缩和对分布范围的移位而包括上述具有非零值的参数。例如,具有零值的参数通过上述图9的位序列930被辨别出。在分布1030中,参数被分布在与变量-b和-a对应的范围和与变量a和b对应的范围,否则以零值进行分布,这与轻量范围对应。如上所述,以零分布的参数值可通过压缩操作来去除,轻量范围的分布范围可之后通过轻量化设备将轻量范围的参数的绝对值减少与变量a对应的值来移位,从而将与变量-b和-a对应的范围内的参数值朝向零移位,并将与变量a和b对应的范围内的参数值朝向零移位,以进一步使用于表示来自正则化处理的参数的位的数量最小化。因此,在分布1040中,轻量范围值b的移位限度由于参数的绝对值的减小而被减小为与“b-a”对应的值,因此用于表示参数的位的数量减少。因此,移位的轻量范围通过与“b-a”对应的参数值被确定为与“-(b-a)”对应的范围参数值。此外,移位的轻量范围中的每个参数此时可通过与log2(b-a)对应的位的数量来表示,例如,与原始训练的参数值相比,基本减少了用于表示参数值所需要的位的数量。例如,当参数值是轻量范围内的整数时,针对每个参数的情况的数量可通过“2×(b-a)+1”来获得。因此,每个参数可通过大于或等于“log2(2×(b-a)+1)”的值的最小自然数的位来表示。
仅作为一个示例,在一个或多个实施例中,训练的神经网络可以是深度卷积神经网络(DCNN),实施例还可包括基于多个采样训练图像或其他的非图像训练数据,通过多个迭代(诸如,通过反向传播训练)调节连接权重,来训练DCNN,直到DCNN准确地识别输入图像或执行期望的目标。例如,在下面的示例中,神经网络被表示为具有十个卷积层,然而实施例不限于此,但可比示例性的十个卷积层更多或更少。作为另一示例,DCNN可具有LeNET-5架构、平移不变神经网络架构、神经抽象金字塔架构或其他架构形式。此外,DCNN可具有卷积在各个并行层中同时执行的并行架构,其执行结果最终在相同的后继层中被组合。DCNN的各个层可基于每个层的功能或操作来分类,并且DCNN可包括:被配置为分别通过对输入数据执行的各个卷积产生例如可提取的或可存储的特征的一个或多个卷积层、被配置为执行用于将来自先前层的多个像素或值映射到更少数量的像素和值的提取的池化层、分别通过各个卷积产生特征的一个或多个另外的卷积层、另外的池化层等、以及被配置为将例如从一个或多个先前层传送的特征进行分类的示例性的一个或多个全连接层。全连接层或致密层可包括多个全连接层或多个致密层。可存在多个卷积层,其中,例如,通过所述卷积层均输出尺寸可取决于对应的卷积层的过滤器尺寸的三维盒所述多个卷积层分别对例如来自先前层的连接的结果执行卷积过滤。此外,可存在到每个卷积层的与对应的卷积层的每个像素对应的并针对对应的卷积层的每个过滤器的加权连接。通过穿过每个卷积层中的像素的多个过滤器的卷积,由于每个卷积层的各个配置,可识别(从先前层或输入层)输入的示例图像的区别特征。例如,DCNN还可包括均可分别对来自先前层的输入像素或三维盒降下采样(例如,不进行加权)的多个池化层。因此,DCNN可具有复杂的架构,其中,DCNN的能够或可能在训练处理期间改变直到具有可接受的错误率的DCNN的训练的参数和超参数的多个参数被找到为止。
例如,针对具有均拥有针对S×宽度×高度的输入连接权重(参数)和各个T输出连接权重的十个卷积层的DCNN,各个典型连接权重参数和示例典型存储器需求可如下面的表1。
表1
如上面表1中所示,注意,这样的DCNN可包括额外的连接权重将被或已被训练的进一步的示例性的连接或全连接隐含层,大量的资源可花费在存储训练的连接权重以及花费在在识别操作中使用训练的DCNN,例如,特别是当每个连接权重可表示将由示例识别设备的一个或多个处理器针对输入数据或捕获的数据(诸如,捕获的图像)执行的各个计算时。
当以上任意一个或上述轻量化处理的任意组合被应用到这样的神经网络中的多个层中的每个层时(例如,在DCNN的训练已完成从而针对现在特定的DCNN专门限定最终训练的参数之后),可针对每个层差异地(例如,针对DCNN的示例性的十个卷积层中的每个差异地)应用轻量化处理。例如,可实现以上关于图2至图10描述的轻量化操作中的一个或多个,并且它们可被差异地选择性地应用于不同的层。例如,轻量化可不应用于以上示例性的第一层,仅通过截止操作的轻量化可应用于示例性的第二层至示例性的第八层,并且仅通过截止操作和截断操作的轻量化可应用于示例性的第九层。此外,仅通过截断操作的轻量化可应用于示例性的第十层,或者可选择性地执行图2至图10的这样选择的一个或多个或所有的轻量化操作的任意组合。
与以上表1的示例的操作相比,在可极大减小针对根据各个轻量化的参数配置的新的DCNN神经网络的模型尺寸的同时,这样的根据一个或多个示例(例如,根据以上对DCNN的不同的层执行的选择的轻量化操作)的最优轻量化的神经网络的识别性能可等于或优于在轻量化之前获得的识别性能。
因此,一个或多个实施例提供可包括改善识别设备的处理操作、减小空间需求、提高存储器访问速度和/或改善识别结果的技术改进。此外,例如,使用一个或多个实施例,可在具有较小容量的处理系统(诸如,在移动示例中)上执行更复杂和更精细的训练的神经网络,然而这样的训练的神经网络在没有在此描述的模型轻量化的情况下对于实施是不可用的,或者不能够以足够的速度执行以在这样的识别设备的操作期间实时操作。例如,这样的模型轻量化还可减小或消除先前的必需物,以针对远程服务器减轻用于图像或其他数据识别的处理。此外,尽管已参照深度卷积神经网络(DCNN)或具有卷积层的神经网络进行了讨论,但实施例不限于此,并且实施例包括其他神经网络和模型方法。
此外,当对多个层(例如,卷积层)中的每个层中的输出映射通道进行分类时,可针对每个输出映射通道差异地应用轻量化处理,因此,针对单个层,可存在执行的多个轻量化操作,并且这样的轻量化操作中的一个或多个或所有的轻量化操作可以是不同的,或者它们可以是全部相同的。在一个示例中,卷积层可包括与对应于卷积层的核或过滤器的通道的数量相同数量的输出映射通道。
作为另一示例,针对包括均包含节点的多个层以及连接相邻层中的节点的加权连接的神经网络,大于零并小于与正则化变量a对应的值的加权连接的值被全部或至少部分地设置为零,其中,与正则化变量a对应的值也大于零。在这个示例中,设置为零的连接权重对应于连接来自多个层之中的相邻层的节点的加权连接。正则化变量a可针对多个层中的每个层和/或针对预定层(例如,当该层是卷积层时)中的每个输出映射通道而被差异地设置。这里,还应注意,卷积层还可在神经网络内具有不同的结构。
在另一示例中,可将通过截断操作和截止操作的正则化应用于这样的神经网络,因此,具有大于与正则化变量b对应的值的值的连接权重(即,参数)被全部或至少部分地设置为与正则化变量b对应的值,其中,与正则化变量b对应的值也大于与正则化变量a对应的值。与其他非零正则化的连接权重相似,设置为与正则化变量b对应的值的连接权重对应于连接多个层之中的相邻层的加权连接。这里,正则化变量b可针对多个层中的每个层和/或针对预定层(例如,当该层时卷积层时)中的每个输出映射通道而被差异地设置。
在另一示例中,可将通过截止操作的正则化应用于神经网络,使得具有大于与正则化变量b对应的值的值的连接权重被全部或至少部分地设置为与正则化变量b对应的值,其中,与正则化变量b对应的值大于零。在这个示例中,与其他非零正则化的连接权重相似,设置为与正则化变量b对应的值的连接权重对应于连接多个层之中的相邻层的加权连接。正则化变量b可针对多个层中的每个层和/或针对预定层(例如,当该层是卷积层时)中的每个输出映射通道而被差异地设置。
图11示出训练的参数的后处理处理的示例。参照图11,如上面关于图10以及包括仅作为示例的深度卷积或其他神经网络的示例性的基于参数的模型所描述的,训练设备1110包括:训练DB 111、参数调节器1112和多个层1113(例如,第一层、第二层或第n层)。
因此,如上所述,训练设备1110基于训练DB 1111来训练多个层1113。仅作为示例,训练DB可包括已标注的图像(例如,属性或关联均已知使得多个层可被训练以产生或提供与这样的已知属性或关联一致的输出的图像)。在这个示例中,训练可被认为是有监督的训练,然而实施例不限于此。在训练中,参数调节器1112基于通过第一层至第n层(诸如,通过仅作为示例的迭代的反向传播算法)确定的损失调节多个层1113的参数。损失可以是log损失、多类log损失、均方误差或平方误差、交叉熵误差等。在该示例中,使用反向传播或梯度下降算法来执行训练,例如,神经网络的节点的连接权重的各个梯度可被确定,连接权重基于梯度被迭代地调节。为了最终产生训练的参数,通过参数调节器1112调节的参数还可并入到迭代训练操作的特定额外操作(诸如,模型选择、修剪、高斯或拉普拉斯正则化、以及层/节点丢弃),其中,尽管这样的轻量化操作还可包括这样的额外操作中的任一个,但是每个额外的操作与在此描述的轻量化操作相区别。训练设备1110将训练的参数发送到轻量化设备1120。训练设备1110典型地包括暂时性存储器(诸如,用于存储训练DB 1111和训练的参数)。在训练设备1110、轻量化设备1120和存储器1130被包括在单个最终或系统中的一个示例中,训练的参数还可或可选地被存储在存储器1130中。可选地,轻量化设备1120与训练设备1110分开或远离(诸如,轻量化设备1120是远程服务器或者是也包括存储器1130的识别设备的代表,远程服务器或识别设备可被提供训练的参数例如作为第一配置,或者更新远程服务器或识别设备的现有的神经网络,诸如,通过推送训练的参数或响应于远程服务器或识别设备请求训练的参数)。例如,训练的参数针对多个或各个层以向量、矩阵或其他格式被存储。因此,轻量化设备1120通过后处理(即,在训练的参数针对对应的神经网络的成功训练已最终通过训练设备1110确定之后)将训练的参数轻量化。轻量化设备1120基于量化、正则化、压缩或者它们的任意组合以及上面已在图1至图10中描述的或者下面将进一步描述的操作将训练的参数轻量化。轻量化设备1120将轻量化的参数存储在存储器1130中。在存储器1130中存储的轻量化的参数之后可用在用于通过具有不同配置的神经网络(即,在根据轻量化的参数专门配置的神经网络中)执行与通过训练的参数定义的神经网络相似的识别的识别处理中。轻量化设备1120还可将轻量化的参数提供给这样的识别设备,或者当轻量化设备是识别设备时,轻量化设备1120还可通过例如捕获或者获得图像,并将图像应用于根据轻量化的参数配置的专门的神经网络来执行识别。如上所述,尽管训练设备1110、轻量化设备1120和存储器1130可以是物理上独立的装置,但实施例不限于此,如训练设备1110、轻量化设备1120和存储器1130中的至少两个可被包括在单个设备中。例如,轻量化设备1120的轻量化操作还可仅通过专门配置的硬件模块来实现或通过硬件和存储在非暂时性介质中/上的指令来实现,其中,当该指令由硬件的一个或多个处理器执行时,使处理器实现量化、正则化和压缩操作中的任一个操作或全部操作。
图12示出参数调谐处理的示例。参照图12,参数调谐设备1220包括训练DB 1221和多个层1222(例如,第一层、第二层至第n层)。为了执行从训练设备1210接收的并被训练的参数的精细调谐,参数调谐设备1220使用训练DB 1221训练多个层1222。例如,训练设备1210可对应于图11和上面关于图10讨论的训练设备1110,然而实施例不限于此。训练DB1221可包括与由用于产生训练的参数的训练设备1210使用的训练数据相同的训练数据,或者可仅包括一些图像或不同的图像。在一个示例中,训练设备DB 1221可对应于图6的验证DB,轻量化设备1230和参数调谐设备1220可协同操作以执行图6的操作(诸如,通过选择性地改变例如前述的正则化变量a和b来迭代地训练选择的层的参数)。
参数调谐设备1220将从训练设备1210接收的训练的参数应用于多个层1222,并额外地训练多个层1222中的第一层至第n层中的每个层。多个层1222可初始地被配置为与通过输入的训练的参数定义的神经网络相同,因此,多个层1222可初始地被配置为与通过训练设备1210训练的神经网络相同的配置。除了将被额外地训练的层之外的层的参数被固定为它们的如从训练设备1210输入的原始值。例如,如在图12中的多个层的第一行中所示,当参数调谐设备1220额外地训练第n层时,第一层至第(n-1)层的参数可被固定。例如,参数调谐设备1220还可被包括在图11的轻量化设备中。
对于这样的额外的训练,轻量化设备1230被使用。如上所述,轻量化设备1230基于用于估计特征向量的损失的函数来正则化将被额外训练的层的参数。例如,轻量化设备1230可将使特征向量的损失最小化的候选范围设置为轻量范围,或者针对对应的层、层部分或神经网络使对应的误差或损失全部最小化或使对应的性能最大化,因此执行如上所述的正则化。如上所述,尽管未在图12中示出,但轻量化设备1230还可将参数量化。
轻量化设备1230还通过压缩正则化的参数来将参数轻量化。例如,在正则化或压缩中,轻量化设备1230还可朝向零移位在正则化操作中已被截断或截止的参数的分布范围,以减小参数的最大值来进一步减小参数的位尺寸。轻量化设备1230将轻量化的参数存储在存储器1240中。存储在存储器1240中的参数可用在识别处理中。
在图12中,第一层至第n层在多个层1222中重叠,然而,这仅是用于方便描述的示例。例如,单个第一层至单个第n层可被包括用于每个操作(例如,每个并行执行操作)。在这个示例中,单个第一层至单个第n层可被顺序地训练或调谐。在图12的示例中,与多个参数改变经过变化层被调节相比,每个选择的不同的单个层分别通过并行轻量化操作处理被独立地调谐,由于对应的选择的单个层的参数的改变而导致的各个的整体误差或性能改变可更容易被观察到(即,通过这样的单层调节方法,将特定的当前正效果或负效果改变为单个层的参数而可更容易被观察到)。例如,整体错误率或识别率针对根据训练的参数配置的原始神经网络可以是已知的,整体错误率和识别率中的一个或两个可针对并行轻量化操作中的每个(诸如,上面参照图6至图7B讨论的)与输出层(例如,第n层)的各个输出进行比较。
在图12中,训练设备1210、参数调谐设备1220、轻量化设备1230和存储器1240可以是物理独立的装置,然而实施例不限于此。例如,训练设备1210、参数调谐设备1220、轻量化设备1230或存储器1240中的至少两个可被包括在单个设备中(诸如,上面参照图11所讨论的)。例如,轻量化设备1230的轻量化操作和/或参数调谐设备1220的调谐操作还可仅通过专门配置的硬件模块来实现,或通过硬件和存储在非暂时性介质中/上的指令来实现,其中,当指令由硬件的一个或多个处理器执行时,使处理器实现参数调谐、量化、正则化和压缩操作中的任一个或所有的操作。
图13示出训练处理的示例。参照图13,训练设备1310包括训练DB 1311、多个层1312和轻量化设备1320。轻量化设备1320在多个层1312的训练期间将参数正则化。
轻量化设备1320基于由具有通过根据一个或多个实施例的轻量化而减小了尺寸的数据表示的参数来训练多个层1312。轻量化设备1320可对应于任意上述轻量化设备。例如,如关于图10至图12所讨论的,训练设备1310基于训练DB 1311来训练多个层1312。例如,训练设备1310可通过多通路反向传播来执行迭代训练以减小损失,并且迭代训练操作还可包括用于确定初步最终参数的特定额外操作(诸如,模型选择、修剪、高斯或拉普拉斯正则化、以及层/节点丢弃丢失)。诸如,在如上所述的训练处理期间,在通过训练设备1310基于训练DB 1311的多个层1312的迭代训练之后,或者在训练处理期间当比较在第n层的反向传播期间的对应的损失时,轻量化设备1320可量化这样的第n层的初步最终参数,并正则化第n层的所述参数,以便使第n层的损失最小化。在这样的示例中,正则化的参数被压缩并被储存在存储器1330中。此外,正则化的参数被解量化,并被应用于第n层。例如,当轻量化设备1320在通过训练设备1310基于训练DB 1311的迭代训练处理期间执行这样的轻量化时,轻量化可在训练的每条通路(pass)之后或在迭代训练处理中的多条通路之后被执行,并且选择的层或所有的层可在相同时间或不同时间(诸如,在不同通路中)通过轻量化设备1320被轻量化。仅作为一个示例,如上面关于图12所讨论的,当轻量化设备1320在迭代训练处理之后执行这样的轻量化时,训练设备1310之后可重新使用训练的第一层至第n层,从而重新训练各个层。与第n层相似,轻量化设备1320可例如分别朝向和通过示例性的第一层来执行第(n-1)层的量化、正则化、压缩和解量化。轻量化的参数可被储存在存储器1330中,并在识别处理中被使用。
在图13中,训练设备1310被示出为包括轻量化设备1320。然而,训练设备1310和轻量化设备1320可以是物理上独立的装置。此外,在图13中,训练设备1310和存储器1330被示出为彼此独立,然而,存储器1330可被包括在训练设备1310中。例如,训练设备1310还可以是识别设备,并且被配置为捕获或获得图像并应用根据轻量化的参数专门配置的轻量化的神经网络。轻量化设备1320的轻量化操作和/或训练设备1310的训练操作还可仅通过专门配置的硬件模块来实现,或者通过硬件和存储在非暂时性介质中/上的指令来实现,其中,当指令被硬件的一个或多个处理器执行时,使处理器实现参数训练、量化、正则化和压缩操作中的任一个或所有的操作。
图14示出识别设备(诸如,任意上面讨论的识别设备示例实施方式)的识别处理的示例。参照图14,识别设备1410包括具有多个层1411的模型、识别器1412和恢复设备1420。例如,模型可以是神经网络,然而在此参照实现轻量化操作中的一个或多个或所有的轻量化操作的这样的神经网络实施的操作不限于神经网络。恢复设备1420恢复轻量化的参数并将恢复的参数应用于多个层1411,或者基于轻量化的参数和/或任意额外的参数和/或包括有轻量化的参数的超参数信息来产生多个层1411。轻量化的参数可已经通过任意以上轻量化设备或处理被产生。多个层1411基于应用的参数(例如,通过由轻量化的参数分别表示的多个层的节点之间的连接权重的应用)从输入数据提取各个特征向量,识别器1412基于特征向量在输入数据中识别对象。识别器1412可分析第n层(例如,根据轻量化的参数专门配置的神经网络的输出柔性最大层(output softmax layer))的输出,并确定识别结果。仅作为一个示例,识别器1412可确定示例性的输出柔性最大层的输出指示输入数据表示已知用户或个人、哪个已知用户或个人、个人是否不是已知的、或一些其他对象或对象的特性,值得注意的是,识别器1412可根据原始神经网络的原始训练目标来实现不同的操作。识别器1412还可控制识别设备1410的其他操作(诸如,用于授权个人进入安全区域的操作、操作锁定的用户界面或特征的操作或使用储存的用于支付的信用卡信息的操作,这些仅作为非限制性示例)。
此外,轻量化的参数还可包括从它们的原始值固定的参数(例如,被轻量化的层和/或未被轻量化的层的参数),因此,尽管示出第一层至第n层,额外的层还可根据轻量化的参数被产生或使用。例如,当输入的轻量化的参数仅包括被轻量化的层的参数时,识别设备1410还可单独接收未轻量化的层的未轻量化的参数,或者识别设备1410可具有先前接收的或先前获得的未轻量化的参数的参数(诸如,在识别设备1410接收原始训练的参数并请求任意以上轻量化设备将该参数轻量化的示例中,在此情况下,当前接收的轻量化的参数将响应于该请求),应注意,可选的和/或额外的实施例也是可用的。例如,在这个示例中,如果识别设备1410先前接收所有的原始训练的参数,则第一层至第n层可基于原始训练的参数自原始训练的参数的先前的产生就存在,并且一个或多个层可根据轻量化的参数被重新配置,以产生新的轻量化的神经网络。如上所述,识别设备1410还可包括任意前述的轻量化设备。
例如,恢复设备1420可从上述图13的存储器1330获取轻量化的参数。存储器1330还可以是能够基于来自识别设备1410的请求提供轻量化的参数或者能够将轻量化的参数推送到识别设备1410的服务器。恢复设备1420通过任意上述轻量化设备基于应用于轻量化的参数的确定的方案来选择性地执行解正则化、解量化和解压缩中的至少一个以恢复参数。这样的方案可通过包括有轻量化的参数的方案信息来确定,或从轻量化的参数的格式来辨别(诸如,轻量化的参数是否处于定点格式(可建议应该执行解量化)、前述的压缩索引信息是否也包括有轻量化的参数(可建议应该执行解压缩))。作为另一示例,如果轻量化的参数包括任何零值参数,并且如果确定不期望解压缩,则可建议应该执行解正则化。可选地,如果轻量化的参数的值被限制为低于最大原始参数值的典型的绝对值的值(例如,在-1与1之间),则还可确定应该执行解正则化。在一个示例中,当正则化被应用于轻量化的参数时,恢复设备1420解正则化轻量化的输出。在这个示例中,恢复设备1420通过将参数的绝对值增加与变量a对应的值(例如,通过解正则化)来执行反移位(inverse-shift)操作。如上所述,变量a可通过轻量化设备被确定为用于实现原始训练的参数的截断操作的正则化变量,因此,变量a还可用在朝向零截断或截止参数值的由轻量化设备执行的分布范围的移位中。因此,在解正则化中,正的轻量化的参数的值增加变量a的值,负的轻量化的参数的值减小变量a的值。变量a的信息可被包括在接收的轻量化的参数中。
在另一示例中,当量化被确定为在产生轻量化的参数时已被应用时,恢复设备1420将轻量化的参数解量化。例如,恢复设备1420通过解量化将量化的参数的表示方案改变为适用于系统的方案(诸如,当轻量化的参数被确定为例如从原始训练的参数的32位浮点实数方案被量化为16位定点整数时,恢复设备1420将参数解量化为32位浮点实数)。根据示例,当定点数据类型被用于原始的多个层1411时,可不执行解量化。此外,尽管32位浮点实数方案被描述为用于原始训练的参数值的表示方案,但实施例不限于此,原始训练的参数值可根据替代的方案来表示。
在另一示例中,当压缩被确定为在轻量化的参数的产生中已被应用时,恢复设备1420解压缩轻量化的参数。恢复设备1420基于非零序列和位序列(例如,关于图9描述的前述示例性的压缩索引,压缩索引指示在由轻量化设备压缩之前原始训练的参数是否具有零值或哪些正则化的参数具有零值)来解压缩轻量化的参数。在一个示例中,具有零值的参数基于解压缩被产生,因此,恢复设备1420可在解正则化、解量化和解压缩之中最后应用解压缩,以防止资源由于用于具有零值的参数的数据处理而造成不必要的消耗。
图15示出通过恢复(诸如,通过图14的识别设备1410的接收的轻量化的参数的恢复)改变参数的分布的示例。图15示出轻量化的参数的分布1510、解正则化的参数的分布1520、解量化的参数的分布1530和解压缩的参数的分布1540。在分布1510中,轻量化的参数分布在与作为轻量范围的“-(b-a)”至“(b-a)”对应的范围。在分布1520中,参数的绝对值基于解正则化而增加与变量a对应的值,从而远离零地移位对应的分布范围,因此移位的参数被分布在与-b至-a对应的范围和与a至b对应的范围中。如在分布1530中所示,由于解量化影响数据的表示格式,因此参数的分布不会由于解量化而从分布1520改变。在分布1540中,具有零值的大量参数通过解压缩被产生。
图16示出通过解压缩改变序列的示例。图16示出具有非零参数v1-v9的非零序列Vk,位序列LOi和通过解压缩获得的由此产生的序列Wi,i和k表示各自序列的索引。如上所述,位序列LOi可通过识别或恢复设备诸如连同提供的或获得的轻量化的参数的非零序列Vk一起来提供或获得,并基于位序列LOi和非零序列Vk产生序列Wi。例如,仅作为一个示例,恢复设备可基于下面的表2简单执行解压缩。
表2
在表2中,Len表示位序列LOi的长度。参照表2和图16,恢复设备通过将位序列LOi中的索引i的位值乘以非零序列Vk中的索引k的参数来确定序列Wi中的解压缩的参数v1,索引i和k具有零值。恢复设备将索引k增加位序列LOi中的索引i的位值“1”。因此,索引k仅当位序列LOi中的位值是“1”时而增加。恢复设备将索引i增加“1”。通过重复基于表2的以上操作,获得序列Wi。然而,图16的解压缩仅是一个示例,因此,其他压缩和解压缩方案可用于压缩和解压缩轻量化的参数。
图17示出通过除法改变序列的示例,图18示出通过除法和压缩改变序列的示例。这里,图17和图18示出用于基于此减少用于存储轻量化的参数所需要的位或者针对在任意后续的轻量化操作或识别操作中使用这样的轻量化的参数必须预留的位的操作。
因此,图17示出序列1710和根据应用于序列1710的除法操作获得的序列1720。如上所述,当具有零值的参数的数量在压缩处理中增加时,压缩效果增加(例如,通常,序列中存在的零值元素越多,该序列更加能够被压缩)。因此,通过除法操作,可导致具有零值的参数的数量增加。例如,可通过将序列1710的参数v除以预设的除数来产生序列1720。在序列1720中,子参数vq对应于各个商,子参数vr对应于各个序列1710的对应索引的余数。参照图2和图15,参数通常具有相对小的值(诸如,在-1与1之间或在0与1之间)。因此,通过合理地选择针对序列1710中的参数的除数,可针对反映在序列1720中的一个或多个参数的商来获得零值,因此,在序列1720中的具有零值的参数的数量可大于在序列1710的具有零值的参数的数量。这里,尽管描述了一个除数被选择性地用于将序列1710转换为序列1720的示例,但额外的除数可用于选择性地产生额外的零值参数。
图18示出序列1810、通过应用于序列1810的除法操作获得的序列1820、压缩的非零序列1830和作为非零参数(例如,序列1820中的非零参数)的压缩索引的位序列1840。序列1810的参数具有“n-m”位的尺寸,序列1820的参数具有“(n-m)/2”位的尺寸。例如,序列1810可以是正则化的参数(例如,作为以上轻量化操作中的任意一个或任意组合的结果的正则化的参数)的序列。与图17的讨论相似,在序列1820的示例中,序列1810中的每个正则化的参数已除以预设的或确定的/选择的除数2(n-m)/2,同时获得作为来自将参数v2、v4和v5除以除数2(n-m)/2的各个商的零值。因为v2、v4和v5的商由于除法变为零,这指示参数v2、v4和v5的值均小于2(n-m)/2。因此,如在序列1820中所指示的,将由此产生的具有零值的商通过除法在对应的子参数索引中被产生,从而增加零值项的数量。
非零序列1830仅包括在序列1820中的商和余数之中的具有非零值的这些商和余数子参数。位序列1840是指示商和余数子参数(例如,在未压缩的序列1820中的商和余数子参数)是否具有零值/哪些商和余数子参数(例如,在未压缩的序列1820中的商和余数子参数)具有零值。在序列1810中,位的总数是“(n-m)”的值与参数的总数的乘积,因此,这个位的总数将需要用于存储序列1810、用于在后续操作中使用序列1810、以及用于发送序列1810。在一个示例中,如果压缩操作被应用于序列1810(例如,在执行描述的除法操作以产生序列1820之前),则作为结果的压缩的序列将具有与将“n-m”乘以具有非零值的序列1810的参数的数量的值对应的位的总数,同时压缩索引序列具有等于序列1810中的参数的总数的位的总数。相反,在另一示例中,如果压缩基于应用于序列1810的除法操作被应用于以上序列1820,则作为结果的压缩的序列1830将具有与将“(n-m)/2”乘以具有非零值的子参数的数量的值对应的位的总数,同时压缩索引序列具有位等于序列1820中的子参数的总数的位的总数。因此,序列1830和序列1840的位的总数可少于压缩的序列1810和对应的压缩索引序列的位的总数,因此,使用上述除法操作和压缩操作可实现更大的压缩。
图19是示出轻量化方法的示例的流程图。参照图19,在操作1910中,轻量化设备获取与根据最终训练的参数配置的对应的神经网络的至少一个层对应的最终训练的参数。最终训练的参数具有原始范围中的参数。在操作1920中,轻量化设备基于预定义的性能函数,将具有原始范围的最终训练的参数转换为具有与原始范围的部分(即,小于原始范围的部分)对应的具有轻量范围的轻量化的参数。在操作1930中,轻量化设备基于轻量范围(诸如,通过朝向零的轻量的分布的移位和/轻量化的参数的压缩)减小表示参数的数据的尺寸。上述在图1至图18中的操作还可适用于轻量化方法,因此,这里将不再重复轻量化方法的进一步描述。
图20是示出识别方法的示例的流程图。参照图20,在操作2010中,识别设备获取正则化的参数,其中,正则化的参数通过根据以上关于图1至图19讨论的轻量化操作中的一个或多个或所有的轻量化操作的原始神经网络的原始训练的参数的分布的改变已被正则化。正则化的参数对应于神经网络的至少一个层。在操作2020中,识别设备基于与该层对应的正则化变量将正则化的变量解正则化。在操作2030中,识别设备将解正则化的参数应用于神经网络的对应的层。这里,操作2030还可包括产生神经网络的对应的层。操作2030可包括产生具有根据解正则化的参数专门配置的所有层的神经网络。可选地,操作2030还可包括:产生根据解正则化的参数专门配置的神经网络的多个层,并通过将产生的多个层与基于原始训练的参数中的一些参数而专门产生的先前产生的层进行组合来产生神经网络。操作可包括:预先产生根据原始训练的参数配置的原始神经网络的所有层,使用解正则化的参数改变原始神经网络的选择的层的配置以产生新的轻量化的神经网络。在操作2040,识别设备使用基于解正则化的参数的神经网络来识别输入数据。上述操作适用于该识别方法,因此,这里不再重复该识别方法的进一步描述。
图21是示出电子系统或装置2100的示例。参照图21,电子系统或装置2100包括:传感器2110、处理器2120、存储器2130、显示器2150和用户界面(UI)2160。传感器2110、处理器2120、存储器2130、显示器2150和UI 2160经由总线240彼此通信。例如,上述的轻量化设备、恢复设备、训练设备和识别设备中的任意一个可被实现为电子系统或装置2100中的至少一部分。例如,处理器2120可表示被配置为以上轻量化设备、恢复设备、调谐设备、训练设备和识别设备中的任意一个或任意组合的一个或多个处理器,或者轻量化设备、恢复设备、调谐设备、训练设备和识别设备中的一个或多个可以是电子系统或装置2100中的独立的组件,并通过总线240彼此通信。
例如,传感器2110包括用于感测视频数据和音频数据以识别对象的麦克风和/或图像传感器或相机。传感器2110使用公知方案(例如,将光学图像转换为电信号的方案)来感测图像。传感器2110的输出被传送到处理器2120或存储器2130。
处理器2120对应于参照图1至图20描述的轻量化设备、恢复设备、调谐设备、训练设备和识别设备中的一个或多个或者包括于此的处理器,并且处理器2120可被配置为执行参照图1至图20描述的处理中的一个或多个或所有的处理。例如,为了执行轻量化,处理器2120可被配置为获取与具有拥有原始范围分布的参数的神经网络的至少一个层对应的最终训练的参数,基于预定义的性能函数将具有原始范围的参数转换为具有与原始范围的部分对应的轻量范围的轻量化的参数,并减小表示转换的参数的数据的尺寸。此外,例如,为了识别对象,处理器2120可被配置为获取具有轻量范围分布的这样的正则化的参数,基于与对应的层对应的正则化变量将正则化的参数解正则化以具有更大的范围分布,将解正则化的参数应用于该层以产生轻量化的神经网络,并基于轻量化的神经网络识别输入数据。识别的结果可通过显示器2150被输出。此外,在此讨论的轻量化操作的操作的用户调节可通过可包括触摸屏或其他输入装置/系统的UI 2160提供。在一个示例中,处理器2120可以是图像处理单元(GPU)、可重构处理器、或者具有任何其他类型的多处理器配置或单处理器配置。
存储器2130是非暂时性介质,并存储正则化变量、性能函数、性能指数和上述的这样的轻量化的或正则化的参数。此外,存储器2130还可存储计算机可读指令,其中,当计算机可读指令由处理器2120执行时,使处理器2120实现上述操作。例如,存储器2130是易失性存储器和非易失性存储器,并还可对应于以上关于图1至图20另外讨论的任何存储器。
存储器2130还可存储指令,其中,当指令由处理器2120执行时,使处理器2120执行电子系统或装置2100(诸如,电子系统的用户界面)的额外的操作、功能和控制。电子系统或装置2100可经由电子系统的输入/输出装置连接到外部装置(例如,个人计算机(PC)或网络),以与外部装置交换数据。电子系统或装置2100可以是各种电子装置(仅作为非限制性示例,移动装置(例如,移动电话、智能电话、个人数字助理(PDA)、平板计算机或膝上型计算机)、计算装置(例如,PC、平板计算机或笔记本计算机)、电子产品(例如,电视(TV)、智能TV)或用于门控的安全装置)。在一个示例中,仅作为示例,用户可通过将原始神经网络的参数轻量化,使用这样的轻量化的参数来将现有的神经网络改变为轻量化的神经网络,并使用轻量化的神经网络,来训练与电子系统或装置2100对应的用户装置(例如,移动装置)中的模型。
例如,通过被配置为执行在本申请中描述的由硬件组件所执行的操作的硬件组件来实现执行在本申请中描述的操作的在图1至图21中的轻量化设备、恢复设备、调谐设备、训练设备、识别设备、处理器、存储器、轻量化设备100、验证DB、训练设备1110、训练DB1111、参数调节器1112、模型层1113、轻量化设备1120、存储器1130、训练设备1210、参数调谐设备1220、训练DB 1221、模型层1222、轻量化设备1230、存储器1240、训练设备1310、训练DB 1311、模型层1312、轻量化设备1320、存储器1330、识别设备1410、模型层1411、识别器1412、恢复设备1420、电子系统或装置2100、总线2140、处理器2120、传感器2110、存储器2130、显示器2150和用户接口2160。可用于执行在本申请中的适当位置描述的操作的硬件组件的示例包括:控制器、传感器、产生器、驱动器、存储器、比较器、算术逻辑单元、加法器、减法器、乘法器、除法器、积分器和被配置为执行在本申请中描述的操作的任何其他电子组件。在其他示例中,执行在本申请中描述的操作的硬件组件中的一个或多个硬件组件通过计算机硬件(例如,通过一个或多个处理器或计算机)来实现。可通过一个或多个处理元件(诸如,逻辑门阵列、控制器和算术逻辑单元)、数字信号处理器、微型计算机、可编程逻辑控制器、现场可编辑门阵列、可编程逻辑阵列、微处理器或被配置为以限定的方式响应并执行指令来实现期望的结果的任何其他装置或装置的组合,来实现处理器或计算机。在一个示例中,处理器或计算机包括或被连接到,存储由处理器或计算机执行的指令或软件的一个或多个存储器。通过处理器或计算器实现的硬件组件可执行指令或软件(诸如,操作系统(OS)和在OS上运行的一个或多个软件应用),以执行在本申请中描述的操作。硬件组件还可响应于指令或软件的执行,访问、操纵、处理、创建和存储数据。为了简明,单数术语“处理器”或“计算机”可用于本申请中描述的示例的描述中,但在其他示例中,可使用多个处理器或多个计算机,或者一个处理器或一个计算机可包括多个处理元件或多种类型的处理元件或者两者。例如,可通过单个处理器或者两个或更多个处理器、或者一个处理器和一个控制器,来实现单个硬件组件或者两个或更多个硬件组件。可通过一个或多个处理器、或者一个处理器和一个控制器,来实现一个或多个硬件组件,并且可通过一个或多个其他处理器、或者另一处理器和另一控制器,来实现一个或多个其他硬件组件。一个或多个处理器、或者一个处理器和一个控制器可实现单个硬件组件、或者两个或更多个硬件组件。硬件组件可具有任意一个或多个不同的处理配置,不同的处理配置的示例包括:单处理器、独立处理器、并行处理器、单指令单数据(SISD)多处理、单指令多数据(SIMD)多处理、多指令单数据(MISD)多处理以及多指令多数据(MIMD)多处理。
通过计算硬件(例如,通过一个或多个处理器或计算机)来执行在图1至图21中所示的执行在本申请中描述的操作的方法,其中,计算硬件被实现为如上所述地执行指令或软件,以执行在本申请中描述的由所述方法所执行的操作。例如,单个操作或者两个或更多个操作可通过单处理器、或者两个或更多个处理器、或者一个处理器和一个控制器来执行。一个或多个操作可通过一个或多个处理器、或者一个处理器和一个控制器来执行,且一个或多个其他操作可通过一个或多个其他处理器、或者另一处理器和另一控制器来执行。一个或多个处理器、或者一个处理器和一个控制器可执行单个操作、或者两个或更多个操作。
为了单独地或共同地指示或配置一个或多个处理器或计算机按照机器或专用计算机那样进行操作,以执行由硬件组件和如上所述的方法执行的操作,用于控制计算硬件(例如,一个或多个处理器或计算机)实现硬件组件并执行如上所述的方法的指令或软件可被写为计算机程序、代码段、指令或它们的任意组合。在一个示例中,指令或软件包括直接由一个或多个处理器或计算机执行的机器代码(诸如,由编译器产生的机器代码)。在另一示例中,指令或软件包括由一个或多个处理器或计算机使用解释器执行的高级代码。可基于附图中示出的框图和流程图以及说明书中的相应描述使用任意编程语言编写指令或软件,其中,附图中示出的框图和流程图以及说明书中的相应描述公开了用于执行由硬件组件和如上所述的方法执行的操作的算法。
用于控制计算硬件(例如,一个或多个处理器或计算机)实现硬件组件并执行如上所述的方法的指令或软件、以及任何相关联的数据、数据文件以及数据结构可被记录、存储或固定在一个或多个非暂时性计算机可读存储介质中或上。非暂时性计算机可读存储介质的示例包括:只读存储器(ROM)、随机存取存储器(RAM)、闪存、CD-ROM、CD-R、CD+R、CD-RW、CD+RW、DVD-ROM、DVD-R、DVD+R、DVD-RW、DVD+RW、DVD-RAM、BD-ROM、BD-R、BD-R LTH、BD-RE、磁带、软盘、磁光数据存储装置、光学数据存储装置、硬盘、固态盘、和任何其他设备,该任何其他设备被配置为以非暂时方式存储指令或软件、以及任何相关联的数据、数据文件以及数据结构,并向一个或多个处理器或计算机提供指令或软件、以及任何相关联的数据、数据文件以及数据结构,以便一个或多个处理器或计算机能够执行指令。在一个示例中,指令或软件、以及任何相关联的数据、数据文件以及数据结构分布在联网的计算机系统上,以便指令和软件、以及任何相关联的数据、数据文件以及数据结构被一个或多个处理器或计算机以分布式方式存储、访问和执行。
尽管本公开包括特定示例,但是在不脱离权利要求和它们的等同物的精神和范围的情况下,可在这些示例中做出形式和细节上的各种改变,这在理解本申请的公开后将是清楚的。在此描述的示例被认为仅是描述性的,而非为了限制的目的。在每一示例中的特征或方面的描述将被认为适用于其他示例中的相似特征或方面。如果描述的技术以不同的顺序被执行,和/或如果在描述的系统、架构、装置、或电路中的组件以不同的方式组合,和/或被其他组件或它们的等同物代替或补充,则可实现合适的结果。因此,公开的范围不是由具体实施方式限定,而是由权利要求和它们的等同物限定,并且在权利要求和它们的等同物的范围内的所有变化将被解释为被包括在本公开中。

Claims (34)

1.一种神经网络设备,包括:
相机,被配置为捕获图像作为输入数据;
处理器,被配置为:通过应用神经网络的相邻层中的相邻节点之间的用于解释应用于神经网络的图像的轻量化的加权连接,产生神经网络,其中,神经网络具有包括多个节点的多个层;通过将图像应用于产生的神经网络,来解释图像,
其中,所述多个层中的至少一个层的轻量化的加权连接包括针对绝对值小于第一非零值的绝对值的各个非零值具有等于零的值的加权连接,
其中,处理器还被配置为:获取正则化的参数作为所述至少一个层的轻量化的加权连接;
其中,获取正则化的参数作为所述至少一个层的轻量化的加权连接的处理包括:
基于具有设置的结构并根据原始训练的参数配置的神经网络的操作,从验证数据库中的验证数据提取特征,验证数据均包括数据对,数据对是具体的人的两个不同的图像;
彼此匹配或比较提取的特征,以确定原始训练的参数的目标识别率,识别率是从针对数据对的提取的特征指示同一面部的成功的识别率的验证率;
将原始训练的参数正则化;
从被配置为具有与第一候选变量对应的正则化的参数的神经网络提取验证数据的特征;
通过匹配验证数据的提取的特征来计算正则化的识别率;
当正则化的识别率响应于迭代地执行迭代正则化处理而变得小于目标识别率时,终止迭代的正则化处理,并将根据当时的当前候选变量的正则化的参数输出为所述至少一个层的轻量化的加权连接,或者
其中,在获取正则化的参数作为所述至少一个层的轻量化的加权连接的处理中,使用错误率代替识别率,错误率对应于指示面部识别中的漏失的面部分类训练漏失,并且当正则化的错误率响应于迭代地执行迭代正则化处理而变得大于目标错误率时,终止迭代的正则化处理,并将根据当时的当前候选变量的正则化的参数输出为所述至少一个层的轻量化的加权连接。
2.如权利要求1所述的神经网络设备,其中,所述至少一个层的轻量化的加权连接是由一训练的神经网络的对应的至少一个层的训练的最终加权连接的轻量化产生的轻量化的加权连接,其中,轻量化的加权连接包括针对小于第一非零值的正变体的各个值和/或针对大于第一非零值的负变体的各个值具有至少一些非零值的加权连接,产生的神经网络表示与用于解释图像而训练的所述训练的神经网络对应的轻量化的神经网络。
3.如权利要求2所述的神经网络设备,其中,处理器还被配置为:获得训练的最终加权连接,并通过执行所述对应的至少一个层的获得的训练的最终加权连接的轻量化,产生具有轻量化的加权连接的神经网络,其中,通过将所述对应的至少一个层的训练的最终加权连接中的至少一些最终加权连接设置为零来执行所述轻量化,所述至少一些最终加权连接的值小于第一非零值的正变体和/或大于第一非零值的负变体。
4.如权利要求2所述的神经网络设备,其中,处理器还被配置为:基于作为第一非零值的与神经网络的所述至少一个层对应的确定的正则化变量,执行正则化的参数的解正则化;通过应用用于产生神经网络的所述至少一个层的解正则化的参数,产生神经网络;通过将图像应用于产生的神经网络,执行图像的识别操作。
5.如权利要求2所述的神经网络设备,其中,训练的最终加权连接具有以32位浮点表示格式的值,轻量化的加权连接具有以16位定点表示格式的值。
6.如权利要求1所述的神经网络设备,其中,所述至少一个层的轻量化的加权连接或者所述至少一个层的其他轻量化的加权连接包括具有绝对值不大于与第一非零值不同的第二非零值的绝对值的值的加权连接。
7.如权利要求6所述的神经网络设备,其中,第二非零值在具有轻量化的加权连接的所述多个层中的至少两个层之间不同。
8.如权利要求6所述的神经网络设备,其中,第二非零值在具有轻量化的加权连接的产生的神经网络的卷积层的至少两个输出映射通道之间不同。
9.如权利要求6所述的神经网络设备,其中,轻量化的加权连接具有分别由与log2(b-a)对应的位的数量表示的值,其中,b表示第二非零值的整数绝对值,a对应于第一非零值的整数绝对值。
10.如权利要求1所述的神经网络设备,其中,第一非零值在具有轻量化的加权连接的所述多个层中的至少两个层之间不同。
11.如权利要求1所述的神经网络设备,其中,第一非零值在具有轻量化的加权连接的产生的神经网络的卷积层的至少两个输出映射通道之间不同。
12.如权利要求1所述的神经网络设备,其中,轻量化的加权连接具有分别通过与log2(max-a)对应的位的数量表示的值,其中,max表示轻量化的加权连接的最大非零正整数,a表示第一非零值的整数绝对值。
13.一种神经网络设备,包括:
相机,被配置为捕获图像作为输入数据;
处理器,被配置为:通过应用神经网络的相邻层中的相邻节点之间的用于解释应用于神经网络的图像的轻量化的加权连接,产生神经网络,其中,神经网络具有包括多个节点的多个层;通过将图像应用于产生的神经网络,来解释图像,
其中,所述多个层中的至少一个层的轻量化的加权连接包括具有绝对值不大于第一非零值的绝对值的值的加权连接,
其中,轻量化的加权连接是用于解释图像而训练的一训练的神经网络的训练的最终加权连接的轻量化的加权连接,其中,轻量化的加权连接具有最大绝对值大于第一非零值的绝对值的值,
其中,处理器还被配置为:获取正则化的参数作为所述至少一个层的轻量化的加权连接;
其中,获取正则化的参数作为所述至少一个层的轻量化的加权连接的处理包括:
基于具有设置的结构并根据原始训练的参数配置的神经网络的操作,从验证数据库中的验证数据提取特征,验证数据均包括数据对,数据对是具体的人的两个不同的图像;
彼此匹配或比较提取的特征,以确定原始训练的参数的目标识别率,识别率是从针对数据对的提取的特征指示同一面部的成功的识别率的验证率;
将原始训练的参数正则化;
从被配置为具有与第一候选变量对应的正则化的参数的神经网络提取验证数据的特征;
通过匹配验证数据的提取的特征来计算正则化的识别率;
当正则化的识别率响应于迭代地执行迭代正则化处理而变得小于目标识别率时,终止迭代的正则化处理,并将根据当时的当前候选变量的正则化的参数输出为所述至少一个层的轻量化的加权连接,或者
其中,在获取正则化的参数作为所述至少一个层的轻量化的加权连接的处理中,使用错误率代替识别率,错误率对应于指示面部识别中的漏失的面部分类训练漏失,并且当正则化的错误率响应于迭代地执行迭代正则化处理而变得大于目标错误率时,终止迭代的正则化处理,并将根据当时的当前候选变量的正则化的参数输出为所述至少一个层的轻量化的加权连接。
14.如权利要求13所述的神经网络设备,其中,处理器还被配置为:获得训练的最终加权连接;通过执行获得的训练的最终加权连接的轻量化,产生具有轻量化的加权连接的神经网络,其中,通过将训练的最终加权连接中的值大于第一非零值的正变体的至少一些最终加权连接设置为第一非零值的正变体和/或通过将训练的最终加权连接中的值小于第一非零值的负变体的至少一些其他的最终加权连接设置为第一非零值的负变体,来执行所述轻量化。
15.如权利要求13所述的神经网络设备,其中,处理器还被配置为:通过产生训练的神经网络的训练的最终加权连接,执行用于产生训练的神经网络的训练,其中,通过重复地将已标注的训练图像应用于具有用于执行训练图像的解释的分别调节的加权连接的神经网络变体直到训练的神经网络被确定,来产生训练的神经网络的训练的最终加权连接,其中,用于产生训练的神经网络的训练包括神经网络变体的节点应用激活函数,激活函数将正的节点输出值和负的节点输出值限制为最大绝对值。
16.如权利要求13所述的神经网络设备,其中,第一非零值在具有轻量化的加权连接的产生的神经网络的所述多个层中的至少两个层之间不同。
17.如权利要求13所述的神经网络设备,其中,第一非零值在具有轻量化的加权连接的产生的神经网络的卷积层的至少两个输出映射通道之间不同。
18.如权利要求13所述的神经网络设备,其中,轻量化的加权连接具有分别通过与log2(b-a)对应的位的数量表示的值,其中,b表示所述第一非零值的整数绝对值,a表示与轻量化的加权连接中的加权连接值的截断对应的与b不同的非零值的整数绝对值。
19.一种处理器实现的识别方法,包括:
捕获图像作为输入数据;
获取与神经网络的至少一个层对应的正则化的参数,其中,正则化的参数包括从另一神经网络的训练的最终参数得到的正则化的参数,并且正则化的参数包括至少一些与所述另一神经网络的训练的最终参数不同的参数值;
基于与神经网络的所述至少一个层对应的确定的正则化变量,执行正则化的参数的解正则化;
通过应用用于产生神经网络的所述至少一个层的解正则化的参数,产生神经网络;
通过将图像应用于产生的神经网络,执行图像的识别操作,
其中,获取与神经网络的至少一个层对应的正则化的参数的步骤包括:
基于具有设置的结构并根据原始训练的参数配置的神经网络的操作,从验证数据库中的验证数据提取特征,验证数据均包括数据对,数据对是具体的人的两个不同的图像;
彼此匹配或比较提取的特征,以确定原始训练的参数的目标识别率,识别率是从针对数据对的提取的特征指示同一面部的成功的识别率的验证率;
将原始训练的参数正则化;
从被配置为具有与第一候选变量对应的正则化的参数的神经网络提取验证数据的特征;
通过匹配验证数据的提取的特征来计算正则化的识别率;
当正则化的识别率响应于迭代地执行迭代正则化处理而变得小于目标识别率时,终止迭代的正则化处理,并将根据当时的当前候选变量的正则化的参数输出为与神经网络的所述至少一个层对应的正则化的参数,或者
其中,在获取正则化的参数作为所述至少一个层的轻量化的加权连接的处理中,使用错误率代替识别率,错误率对应于指示面部识别中的漏失的面部分类训练漏失,并且当正则化的错误率响应于迭代地执行迭代正则化处理而变得大于目标错误率时,终止迭代的正则化处理,并将根据当时的当前候选变量的正则化的参数输出为与神经网络的所述至少一个层对应的正则化的参数。
20.如权利要求19所述的识别方法,还包括:获取所述另一神经网络的训练的最终参数,
其中,产生神经网络的步骤包括:使用获取的训练的最终参数中的至少一些来产生神经网络的至少一个其他层。
21.如权利要求19所述的识别方法,还包括:
基于确定的不同的正则化变量,执行正则化的参数的另一解正则化,其中,确定的不同的正则化变量对应于神经网络的另外的至少一个层,或者对应于神经网络的所述至少一个层的层的输出映射通道,其中,确定的不同的正则化变量与对应于神经网络的所述至少一个层的所述层的另一输出映射通道的确定的正则化变量不同。
22.如权利要求19所述的识别方法,其中,正则化变量包括表示正则化的参数中的基于零值的移位的偏置。
23.如权利要求19所述的识别方法,其中,产生神经网络的步骤包括:响应于解正则化的参数被确定为对应于m位整数,输入数据是n位实数,n大于m,将解正则化的参数解量化为n位实数;通过应用用于产生神经网络的所述至少一个层的解量化的参数,产生神经网络。
24.如权利要求19所述的识别方法,其中,产生神经网络的步骤包括:
确定获取的正则化的参数是否是压缩的正则化的参数;响应于指示获取的正则化的参数是压缩的正则化的参数的确定,获取指示在压缩的正则化的参数的压缩期间哪些对应于所述至少一个层的参数被去除的位序列;基于位序列将解正则化的参数解压缩,应用解压缩的解正则化的参数来产生所述至少一个层。
25.如权利要求24所述的识别方法,其中,将解正则化的参数解压缩的步骤包括:
通过将位序列中的第一索引的位值乘以解正则化参数的序列中的第二索引的参数,确定位序列中的第一索引的解压缩的参数;
将第二索引增加第一索引的位值;
将第一索引增加“1”。
26.一种存储指令的非暂时性计算机可读存储介质,当所述指令由处理器执行时,使处理器执行如权利要求19所述的方法。
27.一种识别设备,包括:
相机,被配置为捕获图像作为输入数据;
处理器,被配置为:获取与神经网络的至少一个层对应的正则化的参数;基于与神经网络的所述至少一个层对应的确定的正则化变量,执行正则化的参数的解正则化;通过应用用于产生神经网络的所述至少一个层的解正则化的参数,产生神经网络;通过将图像应用于产生的神经网络,执行图像的识别操作,
其中,正则化的参数包括从另一神经网络的训练的最终参数得到的正则化的参数,并且正则化的参数包括至少一些与所述另一神经网络的训练的最终参数不同的参数,
其中,获取与神经网络的至少一个层对应的正则化的参数的处理包括:
基于具有设置的结构并根据原始训练的参数配置的神经网络的操作,从验证数据库中的验证数据提取特征,验证数据均包括数据对,数据对是具体的人的两个不同的图像;
彼此匹配或比较提取的特征,以确定原始训练的参数的目标识别率,识别率是从针对数据对的提取的特征指示同一面部的成功的识别率的验证率;
将原始训练的参数正则化;
从被配置为具有与第一候选变量对应的正则化的参数的神经网络提取验证数据的特征;
通过匹配验证数据的提取的特征来计算正则化的识别率;
当正则化的识别率响应于迭代地执行迭代正则化处理而变得小于目标识别率时,终止迭代的正则化处理,并将根据当时的当前候选变量的正则化的参数输出为与神经网络的所述至少一个层对应的正则化的参数,或者
其中,在获取正则化的参数作为所述至少一个层的轻量化的加权连接的处理中,使用错误率代替识别率,错误率对应于指示面部识别中的漏失的面部分类训练漏失,并且当正则化的错误率响应于迭代地执行迭代正则化处理而变得大于目标错误率时,终止迭代的正则化处理,并将根据当时的当前候选变量的正则化的参数输出为与神经网络的所述至少一个层对应的正则化的参数。
28.如权利要求27所述的识别设备,其中,处理器还被配置为获取所述另一神经网络的训练的最终参数并产生神经网络,处理器还被配置为使用获取的训练的最终参数产生神经网络的至少一个其他层。
29.如权利要求27所述的识别设备,还包括:存储器,存储器存储训练的最终参数,
其中,处理器还被配置为:应用训练的最终参数以产生所述另一神经网络,并将解正则化的参数应用于产生的另一神经网络的至少一个层以产生神经网络。
30.如权利要求27所述的识别设备,其中,处理器还被配置为:基于与神经网络的另外的至少一个层对应的或与神经网络的所述至少一个层的层的输出映射通道对应的确定的不同的正则化变量,执行正则化的参数的另一解正则化,其中,确定的不同的正则化变量与神经网络的所述至少一个层的所述层的另一输出映射通道对应的确定的正则化变量不同。
31.如权利要求27所述的识别设备,其中,正则化变量包括表示正则化的变量中的基于零值的移位的偏置。
32.如权利要求27所述的识别设备,其中,由处理器产生神经网络的处理包括:响应于解正则化的参数被确定为对应于m位整数,输入数据是n位实数,n大于m,将解正则化的参数解量化为n位实数,并通过应用用于产生神经网络的所述至少一个层的解量化的参数,产生神经网络。
33.如权利要求27所述的识别设备,其中,处理器还被配置为:确定获取的正则化的参数是否是压缩的正则化的参数,并响应于指示获取的正则化的参数是压缩的正则化的参数的确定,获取指示在压缩的正则化的参数的压缩期间哪些对应于所述至少一个层的参数被去除的位序列,基于位序列将解正则化的参数解压缩,并应用解压缩的解正则化的参数来产生所述至少一个层。
34.如权利要求33所述的识别设备,其中,处理器还被配置为:通过将位序列中的第一索引的位值乘以解正则化的参数的序列中的第二索引的参数,确定位序列中的第一索引的解压缩的参数,将第二索引增加第一索引的位值;将第一索引增加“1”,以解压缩解正则化的参数。
CN201710629393.6A 2016-07-28 2017-07-28 神经网络方法和设备 Active CN107665364B (zh)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
KR20160096173 2016-07-28
KR10-2016-0096173 2016-07-28
KR1020170020034A KR102608467B1 (ko) 2016-07-28 2017-02-14 뉴럴 네트워크의 경량화 방법, 이를 이용한 인식 방법, 및 그 장치
KR10-2017-0020034 2017-02-14

Publications (2)

Publication Number Publication Date
CN107665364A CN107665364A (zh) 2018-02-06
CN107665364B true CN107665364B (zh) 2023-09-22

Family

ID=59384063

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710629393.6A Active CN107665364B (zh) 2016-07-28 2017-07-28 神经网络方法和设备

Country Status (3)

Country Link
US (4) US11222263B2 (zh)
EP (1) EP3276540B1 (zh)
CN (1) CN107665364B (zh)

Families Citing this family (72)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11222263B2 (en) * 2016-07-28 2022-01-11 Samsung Electronics Co., Ltd. Neural network method and apparatus
DE112016007312T5 (de) * 2016-10-03 2019-07-04 Mitsubishi Electric Corporation Netzwerk-bildungsvorrichtung und netzwerk-bildungsverfahren
US10402628B2 (en) * 2016-10-10 2019-09-03 Gyrfalcon Technology Inc. Image classification systems based on CNN based IC and light-weight classifier
US10366302B2 (en) * 2016-10-10 2019-07-30 Gyrfalcon Technology Inc. Hierarchical category classification scheme using multiple sets of fully-connected networks with a CNN based integrated circuit as feature extractor
US11238334B2 (en) 2017-04-04 2022-02-01 Hailo Technologies Ltd. System and method of input alignment for efficient vector operations in an artificial neural network
US11544545B2 (en) 2017-04-04 2023-01-03 Hailo Technologies Ltd. Structured activation based sparsity in an artificial neural network
US10387298B2 (en) 2017-04-04 2019-08-20 Hailo Technologies Ltd Artificial neural network incorporating emphasis and focus techniques
US11615297B2 (en) 2017-04-04 2023-03-28 Hailo Technologies Ltd. Structured weight based sparsity in an artificial neural network compiler
US11551028B2 (en) 2017-04-04 2023-01-10 Hailo Technologies Ltd. Structured weight based sparsity in an artificial neural network
US11107189B2 (en) * 2017-04-07 2021-08-31 Intel Corporation Methods and systems using improved convolutional neural networks for image processing
US11934934B2 (en) * 2017-04-17 2024-03-19 Intel Corporation Convolutional neural network optimization mechanism
US11106976B2 (en) * 2017-08-19 2021-08-31 Wave Computing, Inc. Neural network output layer for machine learning
CN108875923A (zh) * 2018-02-08 2018-11-23 北京旷视科技有限公司 用于神经网络的数据处理方法、装置和系统及存储介质
EP3528181B1 (en) * 2018-02-14 2024-04-17 Samsung Electronics Co., Ltd. Processing method of neural network and apparatus using the processing method
CN108664893B (zh) * 2018-04-03 2022-04-29 福建海景科技开发有限公司 一种人脸检测方法及存储介质
US10924087B2 (en) 2018-04-13 2021-02-16 Telefonaktiebolaget Lm Ericsson (Publ) Method and apparatus for adaptive signal processing
US11948073B2 (en) 2018-04-20 2024-04-02 Advanced Micro Devices, Inc. Machine learning inference engine scalability
US11219405B2 (en) * 2018-05-01 2022-01-11 International Business Machines Corporation Epilepsy seizure detection and prediction using techniques such as deep learning methods
US20210110260A1 (en) * 2018-05-14 2021-04-15 Sony Corporation Information processing device and information processing method
US11151450B2 (en) * 2018-05-21 2021-10-19 Fair Isaac Corporation System and method for generating explainable latent features of machine learning models
CN108932548A (zh) * 2018-05-22 2018-12-04 中国科学技术大学苏州研究院 一种基于fpga的稀疏度神经网络加速系统
TWI672643B (zh) * 2018-05-23 2019-09-21 倍加科技股份有限公司 應用在深度神經網路的全指數運算方法、電腦裝置及電腦可讀取的記錄媒體
CN110580523B (zh) * 2018-06-07 2022-08-02 清华大学 一种模拟神经网络处理器的误差校准方法及装置
US11551077B2 (en) * 2018-06-13 2023-01-10 International Business Machines Corporation Statistics-aware weight quantization
CN109146057B (zh) * 2018-06-26 2020-12-08 杭州雄迈集成电路技术股份有限公司 一种基于查表计算的高精度的神经网络工程化方法
RU2710942C1 (ru) * 2018-12-06 2020-01-14 Самсунг Электроникс Ко., Лтд. Одновременное распознавание атрибутов лиц и идентификации личности при организации фотоальбомов
US11222196B2 (en) 2018-07-11 2022-01-11 Samsung Electronics Co., Ltd. Simultaneous recognition of facial attributes and identity in organizing photo albums
CN109343826B (zh) * 2018-08-14 2021-07-13 西安交通大学 一种面向深度学习的可重构处理器运算单元
CN109242091B (zh) * 2018-09-03 2022-03-22 郑州云海信息技术有限公司 图像识别方法、装置、设备及可读存储介质
CN109242029A (zh) * 2018-09-19 2019-01-18 广东省智能制造研究所 识别分类模型训练方法和系统
US20210232894A1 (en) * 2018-10-10 2021-07-29 Leapmind Inc. Neural network processing apparatus, neural network processing method, and neural network processing program
KR20200043169A (ko) * 2018-10-17 2020-04-27 삼성전자주식회사 뉴럴 네트워크의 파라미터를 양자화하는 방법 및 장치
US20210382157A1 (en) * 2018-10-25 2021-12-09 Koninklijke Philips N.V. Method and system for adaptive beamforming of ultrasound signals
US11769041B2 (en) 2018-10-31 2023-09-26 Advanced Micro Devices, Inc. Low latency long short-term memory inference with sequence interleaving
KR20200061164A (ko) 2018-11-23 2020-06-02 삼성전자주식회사 뉴럴 네트워크 연산 수행을 위한 뉴럴 네트워크 장치, 뉴럴 네트워크 장치의 동작 방법 및 뉴럴 네트워크 장치를 포함하는 애플리케이션 프로세서
FR3089329A1 (fr) * 2018-11-29 2020-06-05 Stmicroelectronics (Rousset) Sas Procédé d’analyse d’un jeu de paramètres d’un réseau de neurones en vue d’obtenir une amélioration technique, par exemple un gain en mémoire.
CN111291882A (zh) * 2018-12-06 2020-06-16 北京百度网讯科技有限公司 一种模型转换的方法、装置、设备和计算机存储介质
CN111353575A (zh) 2018-12-20 2020-06-30 超威半导体公司 用于卷积神经网络的图块化格式
CN109766800B (zh) * 2018-12-28 2022-09-30 华侨大学 一种移动端花卉识别模型的构建方法
CN109840588B (zh) * 2019-01-04 2023-09-08 平安科技(深圳)有限公司 神经网络模型训练方法、装置、计算机设备及存储介质
CN111723918A (zh) * 2019-03-18 2020-09-29 超威半导体公司 用于卷积内核的自动生成和调谐工具
US11853877B2 (en) * 2019-04-02 2023-12-26 International Business Machines Corporation Training transfer-focused models for deep learning
CN110135465B (zh) * 2019-04-22 2022-12-09 腾讯科技(深圳)有限公司 模型参数表示空间大小估计方法及装置、推荐方法
US20200364552A1 (en) * 2019-05-13 2020-11-19 Baidu Usa Llc Quantization method of improving the model inference accuracy
CN110598731B (zh) * 2019-07-31 2021-08-20 浙江大学 一种基于结构化剪枝的高效图像分类方法
CN112446472A (zh) * 2019-08-28 2021-03-05 上海寒武纪信息科技有限公司 用于处理数据的方法、装置以及相关产品
WO2021036255A1 (zh) * 2019-08-26 2021-03-04 上海寒武纪信息科技有限公司 用于处理数据的方法、装置以及相关产品
CN110558972B (zh) * 2019-08-27 2022-04-12 安徽心之声医疗科技有限公司 一种心电信号深度学习模型的轻量化方法
JP7322620B2 (ja) * 2019-09-13 2023-08-08 富士通株式会社 情報処理装置、情報処理方法および情報処理プログラム
EP3796231A1 (en) * 2019-09-19 2021-03-24 Robert Bosch GmbH Device and method for generating a compressed network from a trained neural network
US11620435B2 (en) * 2019-10-10 2023-04-04 International Business Machines Corporation Domain specific model compression
US11816565B2 (en) * 2019-10-16 2023-11-14 Apple Inc. Semantic coherence analysis of deep neural networks
US20210125042A1 (en) * 2019-10-25 2021-04-29 Alibaba Group Holding Limited Heterogeneous deep learning accelerator
KR20210083624A (ko) 2019-12-27 2021-07-07 삼성전자주식회사 신경망의 데이터 입력 및 출력을 제어하는 제어 방법 및 장치
JP7008221B2 (ja) * 2019-12-27 2022-01-25 パナソニックIpマネジメント株式会社 ニューラルネットワーク最適化方法、ニューラルネットワーク最適化装置およびプログラム
CN111178546B (zh) * 2019-12-31 2023-05-23 华为技术有限公司 机器学习模型的搜索方法及相关装置、设备
US11861467B2 (en) * 2020-03-05 2024-01-02 Qualcomm Incorporated Adaptive quantization for execution of machine learning models
US20210312278A1 (en) * 2020-04-06 2021-10-07 Samsung Electronics Co., Ltd. Method and apparatus with incremental learning moddel
CN113537666B (zh) * 2020-04-16 2024-05-03 马上消费金融股份有限公司 评测模型训练方法、评测和业务审核方法、装置及设备
WO2021225262A1 (en) * 2020-05-07 2021-11-11 Samsung Electronics Co., Ltd. Neural architecture search based optimized dnn model generation for execution of tasks in electronic device
CN111563593B (zh) * 2020-05-08 2023-09-15 北京百度网讯科技有限公司 神经网络模型的训练方法和装置
CN111652308B (zh) * 2020-05-13 2024-02-23 三峡大学 基于超轻量级全卷积神经网络的花卉识别方法
CN111783957B (zh) * 2020-07-02 2024-05-03 厦门美图之家科技有限公司 模型量化训练方法、装置、机器可读存储介质及电子设备
CN113947177A (zh) * 2020-07-15 2022-01-18 安徽寒武纪信息科技有限公司 一种量化校准方法、计算装置和计算机可读存储介质
US11836600B2 (en) 2020-08-20 2023-12-05 D5Ai Llc Targeted incremental growth with continual learning in deep neural networks
CN111931865B (zh) * 2020-09-17 2021-01-26 平安科技(深圳)有限公司 图像分类模型的训练方法、装置、计算机设备及存储介质
US11237894B1 (en) 2020-09-29 2022-02-01 Hailo Technologies Ltd. Layer control unit instruction addressing safety mechanism in an artificial neural network processor
US11874900B2 (en) 2020-09-29 2024-01-16 Hailo Technologies Ltd. Cluster interlayer safety mechanism in an artificial neural network processor
US11811421B2 (en) 2020-09-29 2023-11-07 Hailo Technologies Ltd. Weights safety mechanism in an artificial neural network processor
US11221929B1 (en) 2020-09-29 2022-01-11 Hailo Technologies Ltd. Data stream fault detection mechanism in an artificial neural network processor
US11263077B1 (en) 2020-09-29 2022-03-01 Hailo Technologies Ltd. Neural network intermediate results safety mechanism in an artificial neural network processor
CN113554104B (zh) * 2021-07-28 2022-09-30 哈尔滨工程大学 一种基于深度学习模型的图像分类方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5497430A (en) * 1994-11-07 1996-03-05 Physical Optics Corporation Method and apparatus for image recognition using invariant feature signals
US6269351B1 (en) * 1999-03-31 2001-07-31 Dryken Technologies, Inc. Method and system for training an artificial neural network

Family Cites Families (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB9024332D0 (en) * 1990-11-08 1990-12-19 British Telecomm Method of training a neural network
US7469237B2 (en) 1996-05-02 2008-12-23 Cooper David L Method and apparatus for fractal computation
US6006179A (en) * 1997-10-28 1999-12-21 America Online, Inc. Audio codec using adaptive sparse vector quantization with subband vector classification
CN101241735B (zh) * 2003-07-07 2012-07-18 罗威所罗生股份有限公司 重放加密的视听内容的方法
KR100828411B1 (ko) 2006-10-20 2008-05-09 연세대학교 산학협력단 3차원 얼굴 인식을 위한 전역적 특징 추출 방법
KR20080067793A (ko) 2007-01-17 2008-07-22 전준철 부분공간과 선형벡터양자화 분류기에 기반한 실시간 얼굴인식
KR100859246B1 (ko) 2007-03-21 2008-09-18 한국원자력연구원 옥타브 밴드의 표준편차를 이용한 액체금속로의 증기발생기에서의 물 누출 음향 감지 방법 및 장치
WO2010106587A1 (ja) 2009-03-18 2010-09-23 パナソニック株式会社 ニューラルネットワークシステム
JP2012235796A (ja) * 2009-09-17 2012-12-06 Sharp Corp 診断処理装置、診断処理システム、診断処理方法、診断処理プログラム及びコンピュータ読み取り可能な記録媒体、並びに、分類処理装置
US8700552B2 (en) * 2011-11-28 2014-04-15 Microsoft Corporation Exploiting sparseness in training deep neural networks
US9153230B2 (en) * 2012-10-23 2015-10-06 Google Inc. Mobile speech recognition hardware accelerator
US9047566B2 (en) 2013-03-12 2015-06-02 Oracle International Corporation Quadratic regularization for neural network with skip-layer connections
US9323498B2 (en) 2013-03-13 2016-04-26 Wisconsin Alumni Research Foundation Multiplier circuit with dynamic energy consumption adjustment
US10055434B2 (en) * 2013-10-16 2018-08-21 University Of Tennessee Research Foundation Method and apparatus for providing random selection and long-term potentiation and depression in an artificial network
US9730643B2 (en) * 2013-10-17 2017-08-15 Siemens Healthcare Gmbh Method and system for anatomical object detection using marginal space deep neural networks
US10339447B2 (en) 2014-01-23 2019-07-02 Qualcomm Incorporated Configuring sparse neuronal networks
JP2015215837A (ja) 2014-05-13 2015-12-03 株式会社デンソー 演算処理装置
KR101568590B1 (ko) 2014-06-27 2015-11-11 인천대학교 산학협력단 영역 기반의 역전달 인공 신경망을 이용한 영상 디인터레이싱 시스템 및 그 방법
US9953425B2 (en) 2014-07-30 2018-04-24 Adobe Systems Incorporated Learning image categorization using related attributes
US9928410B2 (en) * 2014-11-24 2018-03-27 Samsung Electronics Co., Ltd. Method and apparatus for recognizing object, and method and apparatus for training recognizer
US10373050B2 (en) * 2015-05-08 2019-08-06 Qualcomm Incorporated Fixed point neural network based on floating point neural network quantization
GB201511887D0 (en) * 2015-07-07 2015-08-19 Touchtype Ltd Improved artificial neural network for language modelling and prediction
US10831444B2 (en) * 2016-04-04 2020-11-10 Technion Research & Development Foundation Limited Quantized neural network training and inference
US11222263B2 (en) * 2016-07-28 2022-01-11 Samsung Electronics Co., Ltd. Neural network method and apparatus
US10685285B2 (en) * 2016-11-23 2020-06-16 Microsoft Technology Licensing, Llc Mirror deep neural networks that regularize to linear networks

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5497430A (en) * 1994-11-07 1996-03-05 Physical Optics Corporation Method and apparatus for image recognition using invariant feature signals
US6269351B1 (en) * 1999-03-31 2001-07-31 Dryken Technologies, Inc. Method and system for training an artificial neural network

Also Published As

Publication number Publication date
EP3276540A3 (en) 2018-03-07
US11625601B2 (en) 2023-04-11
US20220138576A1 (en) 2022-05-05
US20230021306A9 (en) 2023-01-19
US11222263B2 (en) 2022-01-11
US20180032866A1 (en) 2018-02-01
EP3276540A2 (en) 2018-01-31
US10452977B2 (en) 2019-10-22
CN107665364A (zh) 2018-02-06
EP3276540B1 (en) 2022-03-30
US20180032867A1 (en) 2018-02-01
US20200005146A1 (en) 2020-01-02

Similar Documents

Publication Publication Date Title
CN107665364B (zh) 神经网络方法和设备
US11508146B2 (en) Convolutional neural network processing method and apparatus
WO2020238603A1 (zh) 深度神经网络的压缩方法、芯片、电子设备及介质
US20210089922A1 (en) Joint pruning and quantization scheme for deep neural networks
KR102608467B1 (ko) 뉴럴 네트워크의 경량화 방법, 이를 이용한 인식 방법, 및 그 장치
US11221990B2 (en) Ultra-high compression of images based on deep learning
US11481613B2 (en) Execution method, execution device, learning method, learning device, and recording medium for deep neural network
Khashman et al. Image compression using neural networks and Haar wavelet
EP3942807A1 (en) Video compression using deep generative models
CN109377532B (zh) 基于神经网络的图像处理方法及装置
US11335034B2 (en) Systems and methods for image compression at multiple, different bitrates
Ayoobkhan et al. Prediction-based Lossless Image Compression
WO2021042857A1 (zh) 图像分割模型的处理方法和处理装置
CN110633735A (zh) 基于小波变换的渐进式深度卷积网络图像识别方法及装置
EP3803712A1 (en) An apparatus, a method and a computer program for selecting a neural network
Wei et al. Auto-generating neural networks with reinforcement learning for multi-purpose image forensics
Zhao et al. Image and Graphics: 10th International Conference, ICIG 2019, Beijing, China, August 23–25, 2019, Proceedings, Part III
CN113591987B (zh) 图像识别方法、装置、电子设备和介质
KR102516812B1 (ko) 기계학습을 이용하여 이미지 압축 품질을 최적화하는 방법 및 시스템
US20240070925A1 (en) Method and data processing system for lossy image or video encoding, transmission and decoding
CN113574882B (zh) 使用深度生成性模型的视频压缩
Boualleg et al. An improved Weber-face-based method for face recognition under uncontrolled illumination conditions
WO2023023229A1 (en) Systems and methods for joint optimization training and encoder side downsampling
CN115577796A (zh) 用重用transformer利用注意力中的冗余
CN115294364A (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
GR01 Patent grant
GR01 Patent grant