CN110084357A - 经由选择性修剪来加速长短期记忆网络 - Google Patents

经由选择性修剪来加速长短期记忆网络 Download PDF

Info

Publication number
CN110084357A
CN110084357A CN201910025315.4A CN201910025315A CN110084357A CN 110084357 A CN110084357 A CN 110084357A CN 201910025315 A CN201910025315 A CN 201910025315A CN 110084357 A CN110084357 A CN 110084357A
Authority
CN
China
Prior art keywords
weight matrix
weight
shot
long term
standard deviation
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.)
Granted
Application number
CN201910025315.4A
Other languages
English (en)
Other versions
CN110084357B (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
Application filed by Samsung Electronics Co Ltd filed Critical Samsung Electronics Co Ltd
Publication of CN110084357A publication Critical patent/CN110084357A/zh
Application granted granted Critical
Publication of CN110084357B publication Critical patent/CN110084357B/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/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/08Learning methods
    • G06N3/082Learning methods modifying the architecture, e.g. adding, deleting or silencing nodes or connections
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/217Validation; Performance evaluation; Active pattern learning techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06F18/241Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
    • G06F18/2413Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on distances to training or reference patterns
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06F18/241Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
    • G06F18/2413Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on distances to training or reference patterns
    • G06F18/24133Distances to prototypes
    • G06F18/24143Distances to neighbourhood prototypes, e.g. restricted Coulomb energy networks [RCEN]
    • 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
    • G06N3/044Recurrent networks, e.g. Hopfield networks
    • 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
    • G06N3/045Combinations of networks
    • 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
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/82Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Evolutionary Computation (AREA)
  • Data Mining & Analysis (AREA)
  • Artificial Intelligence (AREA)
  • General Physics & Mathematics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • Biophysics (AREA)
  • Biomedical Technology (AREA)
  • Molecular Biology (AREA)
  • Mathematical Physics (AREA)
  • Computational Linguistics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Evolutionary Biology (AREA)
  • Medical Informatics (AREA)
  • Multimedia (AREA)
  • Databases & Information Systems (AREA)
  • Neurology (AREA)
  • Image Analysis (AREA)

Abstract

一种用于修剪的系统和方法。神经网络包括多个长短期记忆单元,每个长短期记忆单元包括具有权重矩阵Wc的输入、具有权重矩阵Wi的输入门、具有权重矩阵Wf的遗忘门、以及具有权重矩阵Wo的输出门。在一些实施例中,在初始训练之后,修剪权重矩阵Wi、Wf和Wo中的一个或多个,并且保留权重矩阵Wc不变。然后,对神经网络进行再训练,在再训练期间将经修剪的权重约束成保持为零。

Description

经由选择性修剪来加速长短期记忆网络
相关申请的交叉引用
本申请要求于2018年1月25日提交的题为“ACCELERATING LONG SHORT-TERMMEMORY NETWORKS VIA SELECTIVE PRUNING”的美国临时申请No.62/622,083的优先权和权益,其全部内容通过引用并入本文中。
技术领域
根据本公开的实施例的一个或多个方面涉及机器学习,并且更具体地涉及用于在长短期记忆网络中进行选择性修剪的系统和方法。
背景技术
神经网络可以用于各种应用,包括诸如图像识别、语音识别以及话音识别之类的模式识别应用和翻译。用于一些此类应用的神经网络可能充分大到消耗大量功率或操作缓慢。在这种情况下,可以通过各种技术来改善性能和功耗,然而,这样的技术可能导致准确度损失。
因此,需要一种弥补上述问题的改进系统和方法。
发明内容
本公开的实施例的方面涉及用于修剪的系统和方法。神经网络包括多个长短期记忆单元,每个长短期记忆单元包括具有权重矩阵Wc的输入、具有权重矩阵Wi的输入门、具有权重矩阵Wf的遗忘门、以及具有权重矩阵Wo的输出门。在一些实施例中,在初始训练之后,修剪权重矩阵Wi、Wf和Wo中的一个或多个,并且保留权重矩阵Wc不变。然后,对神经网络进行再训练,在再训练期间将经修剪的权重约束成保持为零。
根据本发明的实施例,提供了一种用于在包括一个或多个长短期记忆单元在内的第一神经网络中执行机器学习的方法,一个或多个长短期记忆单元中的第一长短期记忆单元包括:具有第一权重矩阵Wc的输入;具有第二权重矩阵Wi的输入门;具有第三权重矩阵Wf的遗忘门;以及具有第五权重矩阵Wo的输出门,该方法包括:维持第一权重矩阵Wc不变;以及修剪第三权重矩阵Wf,对第三权重矩阵Wf的修剪包括:计算针对所述第三权重矩阵Wf的元素的子集的标准差;确定在所述第三权重矩阵Wf中的第一位置处的第一元素无法满足第一阈值,所述第一阈值基于第二阈值和所述标准差;基于确定在第三权重矩阵Wf中的第一位置处的第一元素无法满足第一阈值,在第三权重矩阵Wf中的第一位置处将第一元素设置为零;确定在第三权重矩阵Wf中的第二位置处的第二元素满足第一阈值;以及基于确定在所述第三权重矩阵Wf中的第二位置处的所述第二元素满足所述第一阈值,维持所述第二元素不变。
在一个实施例中,一个或多个长短期记忆单元中的第二长短期记忆单元包括具有第五权重矩阵Wf的输入门,以及对标准差的计算包括:计算针对第三权重矩阵Wf和第五权重矩阵Wf的所有元素的标准差。
在一个实施例中,第三权重矩阵Wf的元素的子集包括第三权重矩阵Wf的所有元素。
在一个实施例中,一个或多个长短期记忆单元中的第二长短期记忆单元包括第五权重矩阵Wf,以及对标准差的计算包括:计算针对第三权重矩阵Wf和第五权重矩阵Wf中的第一位置处的所有元素的标准差。
在一个实施例中,该方法包括:修剪第二权重矩阵Wi
在一个实施例中,该方法包括:修剪第四权重矩阵Wo
在一个实施例中,第一神经网络还包括多个人工神经元以及人工神经元之间的多个连接,每个连接具有权重,以及该方法还包括:计算针对所述连接的权重的标准差;当权重的量值小于阈值与标准差的乘积时,将多个连接中的连接的权重设置为零;以及否则,保留连接的权重不变。
在一个实施例中,该方法包括:对第一神经网络进行再训练,再训练包括:维持第一元素等于零。
在一个实施例中,该方法包括:操作第二神经网络,第二神经网络的权重矩阵Wf等于第一神经网络的权重矩阵Wf,操作包括:用第二神经网络对图像进行分类,以及基于对图像的分类来控制车辆。
根据本发明的实施例,提供了一种用于执行机器学习的系统,该系统包括第一处理电路,该第一处理电路被配置为:实例化包括一个或多个长短期记忆单元在内的第一神经网络,一个或多个长短期记忆单元中的第一长短期记忆单元包括:具有第一权重矩阵Wc的输入;具有第二权重矩阵Wi的输入门;具有第三权重矩阵Wf的遗忘门;以及具有第四权重矩阵Wo的输出门,维持第一权重矩阵Wc不变;以及修剪第三权重矩阵Wf,对第三权重矩阵Wf的修剪包括:计算针对所述第三权重矩阵Wf的元素的子集的标准差;确定在所述第三权重矩阵Wf中的第一位置处的第一元素无法满足第一阈值,所述第一阈值基于第二阈值和所述标准差;基于确定在第三权重矩阵Wf中的第一位置处的第一元素无法满足第一阈值,在第三权重矩阵Wf中的第一位置处将第一元素设置为零;确定在第三权重矩阵Wf中的第二位置处的第二元素满足所述第一阈值;以及基于确定在所述第三权重矩阵Wf中的第二位置处的所述第二元素满足所述第一阈值,维持所述第二元素不变。
在一个实施例中,一个或多个长短期记忆单元中的第二长短期记忆单元包括具有第五权重矩阵Wf的输入门,以及对标准差的计算包括:计算针对第三权重矩阵Wf和第五权重矩阵Wf的所有元素的标准差。
在一个实施例中,第三权重矩阵Wf的元素的子集包括第三权重矩阵Wf的所有元素。
在一个实施例中,一个或多个长短期记忆单元中的第二长短期记忆单元包括第五权重矩阵Wf,以及对标准差的计算包括:计算针对第三权重矩阵Wf和第五权重矩阵Wf中的第一位置处的所有元素的标准差。
在一个实施例中,第一处理电路还被配置为:修剪第二权重矩阵Wi
在一个实施例中,第一处理电路还被配置为:修剪第四权重矩阵Wo
在一个实施例中,该系统还包括多个人工神经元和人工神经元之间的多个连接,每个连接具有权重,以及第一处理电路还被配置为:计算针对所述连接的权重的标准差;当权重的量值小于阈值与标准差的乘积时,将多个连接中的连接的权重设置为零;以及否则,保留所述连接的权重不变。
在一个实施例中,第一处理电路还被配置为:对第一神经网络进行再训练,再训练包括:保留第一元素等于零。
在一个实施例中,该系统包括第二处理电路,第二处理电路被配置为:实例化第二神经网络,第二神经网络的权重矩阵Wf等于第一神经网络的权重矩阵Wf,以及第二处理电路被配置为:用第二神经网络对图像进行分类,以及基于对图像的分类来控制车辆。
根据本发明的实施例,提供了一种用于在包括一个或多个长短期记忆单元在内的第一神经网络中执行机器学习的方法,一个或多个长短期记忆单元中的第一长短期记忆单元包括:具有第一权重矩阵Wc的输入;具有第二权重矩阵Wi的输入门;具有第三权重矩阵Wf的遗忘门;以及具有第四权重矩阵Wo的输出门,该方法包括:维持第一权重矩阵Wc不变;以及执行用于修剪第三权重矩阵Wf的步骤。
在一个实施例中,执行用于修剪的步骤包括:计算针对第三权重矩阵Wf的元素的子集的标准差;确定在第三权重矩阵Wf中的第一位置处的第一元素无法满足第一阈值,第一阈值基于第二阈值和标准差;基于确定在第三权重矩阵Wf中的第一位置处的第一元素无法满足第一阈值,在第三权重矩阵Wf中的第一位置处将第一元素设置为零;确定在第三权重矩阵Wf中的第二位置处的第二元素满足第一阈值;以及基于确定在第三权重矩阵Wf中的第二位置处的第二元素满足第一阈值,维持第二元素不变。
附图说明
参考说明书、权利要求和附图,将明白和理解本公开的这些和其他特征和优点,其中:
图1A是根据本公开的实施例的神经网络的示意图;
图1B是根据本公开的实施例的用于修剪的方法的流程图;
图2是根据本公开的实施例的类神经元节点的框图;
图3是根据本公开的实施例的长短期记忆单元的网络的框图;
图4是根据本公开的实施例的长短期记忆单元的框图;
图5A是根据本公开的实施例的描述长短期记忆单元的操作的公式集合;
图5B是根据本公开的实施例的描述长短期记忆单元的操作的公式集合;以及
图5C是根据本公开的实施例的描述长短期记忆单元的操作的公式。
具体实施方式
以下结合附图给出的详细描述旨在作为对根据本公开提供的用于在长短期记忆网络中进行选择性修剪的系统和方法的示例实施例的描述,且并不旨在表示可以构建或利用本公开的仅有形式。该描述结合所示实施例阐述了本公开的特征。然而,应该理解的是:相同或等价的功能和结构可以通过不同的实施例来实现,这些实施例也旨在被包含在本公开的范围内。如本文其他地方所表示的,相似的元素编号旨在表示相似的元素或特征。
参考图1A,在一些实施例中,如图所示,神经网络包括:包括第一多个人工神经元在内的输入层110、以及第一隐藏层120。输入层110的每个人工神经元通过一个或多个连接130连接到第一隐藏层120的一个或多个人工神经元。长短期记忆单元140的网络(下面进一步详细描述)还通过一个或多个连接130连接到第一隐藏层,第二隐藏层150通过一个或多个连接130连接到长短期记忆单元140的网络,以及输出层160通过一个或多个连接130连接到第二隐藏层150。长短期记忆单元140的网络可以具有一个层或多个层,每个层包括一个或多个长短期记忆单元140。每个连接130可以具有相关联的权重,该相关联的权重在概念上可以等价于对信号(当从一个人工神经元向另一个人工神经元发送时)应用的增益或乘法因子。因此,连接130的权重可以确定:通过该连接所连接的两个人工神经元中的一个人工神经元影响通过该连接所连接的两个人工神经元中的另一个人工神经元的程度。
在图1A的神经网络中,为了简单起见,每个层(除了输出层160)的每个人工神经元被示出为仅连接到后一层的一个或两个人工神经元,但是本公开不限于这样的实施例,且通常可以存在更多或更少的连接。例如,在一些实施例中,各层之一的一个或多个人工神经元各自连接到后一层的所有人工神经元。在一些实施例中,在长短期记忆单元140的网络之前或之后存在更多或更少的隐藏层,或者可以不存在输入层110和输出层160中的一者或两者(使得:神经网络的输入为长短期记忆单元140的输入,以及/或者神经网络的输出为长短期记忆单元140的输出)。
参考图1B,在一些实施例中,用于训练神经网络的方法包括:在170处,训练(或“预训练”)长短期记忆单元的网络,以确定长短期记忆单元的网络内的权重(如下面进一步详细所讨论);在180处,修剪权重(例如,根据下面进一步详细讨论的多种方法中的一种或多种,将某些权重设置为零);然后在190处,对长短期记忆单元的网络进行再训练(例如,确定在受到保留经修剪权重的值等于零的约束下的权重)。
长短期记忆单元的网络的结构可以基于类神经元节点(例如图2所示的节点)的网络,每个节点包括反馈环路,使得在任何时间步骤处的节点的输出均取决于在前一时间步骤处的节点的输出和取决于外部输入信号这二者。可以展开图2的节点以形成图3的网络,图3的网络包括多个长短期记忆单元310,每个长短期记忆单元310接收相应的“外部”输入信号xi并且产生“外部”输出信号zi。除了最后一个之外的每个长短期记忆单元还产生“相邻”输出信号hi,并且除了第一个之外的每个长短期记忆单元还接收“相邻”输出信号hi-1。在具有多于一层的长短期记忆单元的网络中,一层的每个外部输出zi可以连接到后续层的相应的外部输入xi
每个长短期记忆单元310可以具有图4所示的内部结构。向输入405、输入门410、遗忘门415和输出门420馈送外部的和相邻的输入信号。每个长短期记忆单元310还可以具有三个逐元素乘法器425、(逐元素)加法器430、和将信号延迟一个时间步骤的延迟435。输入405、输入门410、遗忘门415和输出门420可以实现图5A的公式,然后可以通过图5B的公式给出状态和输出。输入405、输入门410、遗忘门415和输出门420中的每一个实现了在图5C的公式中定义的S形(sigmoid)函数S()。图5A~图5C中的具有斜体字体的符号与本文其他地方的除了具有非斜体字体之外相同的符号具有相同的含义。从概念上讲,在操作中,Ct总结了直至当前时间步骤为止学到的“知识”,ft从Ct中删除旧的“冗余”信息,总结了来自xt和ht-1的新信息,以及it向Ct增加新的“有用”信息。Wf、bf、Wi、bi、Wc、bc、Wo和bo中的每一个是在训练期间要学习的矩阵或向量。可以从图5A的公式看出,量值bf、bi、bc和bo是偏置向量(bias vector)。权重(或“权重矩阵”)Wf、Wi、Wc、和Wo中的每一个为矩阵。在图5A的公式中,tanh()和sigmoid(S())函数是逐元素函数,并且将逗号分隔的两个值(每个值是列向量)围起来的一对方括号标识通过垂直串接(concatenate)这两个值所形成的向量。
可以使用具有训练数据集的监督学习来训练神经网络。在训练期间,可以迭代地调整权重和其他学习到的参数,以便最小化针对训练数据来评估的成本函数。一旦完成训练,则一些权重可以具有充分小的值,在本文称为“修剪”的过程中将它们设置为零,然后对神经网络进行再训练(同时将经修剪的权重约束成保持为零)得到了神经网络,该神经网络的准确度与未经修剪的神经网络的准确度几乎相同。这种修剪可以得到能够更快地操作(即,执行分类)和/或具有更低的功耗(即,针对执行的每个分类所消耗的能量更低)的神经网络。这些益处在功率、质量或体积受限的实现中(例如,在移动设备或汽车系统中)可能特别重要。
在一些实施例中,可以制造专用硬件(例如,专用集成电路),其利用不存在与经修剪权重相对应的信号路径或计算电路的优点。例如,如果使用专用处理电路(而不是例如可能导致存储程序计算机实例化长短期记忆单元310的软件或固件)来制造长短期记忆单元310,则如果权重Wf、Wi或Wc之一的元素为零,那么在其他情况下将存在以实现相应的门(或输入,针对Wi)中的相应操作的电路可以完全不存在于该专用硬件中,从而导致成本、体积和质量节省并且可能导致功率节省。如果长短期记忆单元的网络以软件或固件(例如,用于在诸如图形处理单元之类的存储程序计算机上执行的软件或固件)来实现,则修剪可以导致所需的存储器的大小减小、以及伴随的功率、质量和体积节省,并且还可以通过使得可以省略如果执行则将始终产生相同输出(例如,零输出、或等于常数偏置的输出)的操作成为可能而导致更快地执行。
每个权重可以是矩阵。针对长短期记忆单元的网络的一层,对神经网络的长短期记忆单元310的权重进行修剪可以如下进行。例如,针对权重Wf,可以针对权重Wf的元素的子集来计算标准差(其中,该子集可以是真子集或可以包括所有元素),例如,(i)针对该层的所有权重Wf的所有元素,或(ii)针对该层的一个权重Wf的所有元素,或(iii)针对权重Wf中的某个位置处的所有元素(例如,位于相应的权重矩阵Wf的第i列和第j行处的每个元素)。然后,可以将标准差乘以修剪阈值(或者如果计算若干标准差,则乘以相应的修剪阈值),并且可以将具有比阈值(或者如果使用真子集来计算标准差并且存在多个阈值,则相应的阈值)与标准差(或相应的标准差)的乘积小的绝对值(或“量值”)的每个元素设置为零。其他元素(即,不具有比阈值与标准差的乘积小的绝对值的元素)可以保留不变。
可以以类似的方式修剪权重Wi和Wo。在每种情况下,可以凭经验来确定相应的修剪阈值,例如,通过逐渐增加该相应的修剪阈值,直到神经网络的准确度降低到以下程度为止:对于作为修剪结果而实现的益处,是不可接受的成本。权重Wc可以保留不变(即,这些权重可以免予修剪)。表1示出了使用示例性神经网络进行测试的结果,证明了对权重Wf、Wi和Wo的修剪仅导致适度的准确度损失,而对Wc的修剪导致准确度的显著下降。
表1
可以以类似的方式修剪连接130的权重,例如,可以计算两层之间(例如,输入层110和第一隐藏层120之间)的连接130的权重的标准差,并且可以将比(在经验上确定的)阈值和标准差的乘积小的任何权重设置为零。
一旦神经网络被训练、修剪和再训练,则具有由训练、修剪和再训练过程产生的“最终”权重的神经网络或神经网络的一个或多个副本可被用作分类神经网络(而非用于执行训练或再训练的神经网络)。可以构造这样的分类神经网络(例如,通过制造合适的专用硬件或通过编译合适的软件或固件)以在小型低功率平台上有效地运行。
在一些实施例中,如本文所述的经训练、经修剪和经再训练的神经网络(或这样的神经网络的副本)可以用于执行各种分类任务,例如语音或话音识别、或图像识别。分类操作可以是用于车辆的自动驾驶或其他机器人的控制、或用于翻译的系统和方法(例如,具有麦克风和扬声器的系统,其在接收到说出的单词时使用根据本公开的实施例的神经网络来识别单词,将该单词翻译为另一种语言,并将翻译后的单词作为音频信号从扬声器输出)的一部分。
在一些实施例中,分类神经网络被实现在处理电路中执行的软件或固件中。术语“处理电路”在本文中用来表示用于处理数据或数字信号的硬件、固件和软件的任何组合。处理电路硬件可以包括例如专用集成电路(ASIC)、通用或专用中央处理单元(CPU)、数字信号处理器(DSP)、图形处理单元(GPU)以及可编程逻辑器件(例如,现场可编程门阵列(FPGA))。在处理电路中,如本文所使用的,每个功能或者由被配置(即硬连线)为执行该功能的硬件来执行,或者由被配置为执行非暂时性存储介质中存储的指令的更通用硬件(例如CPU)来执行。处理电路可被制造在单个印刷电路板(PCB)上或者分布在让若干互连的PCB上。处理电路可以包含其他处理电路;例如,处理电路可以包括在PCB上互连的两个处理电路:FPGA和CPU。在一些实施例中,第一处理电路(例如,拥有相当大的处理能力并且可能消耗大量功率并占据相对大的体积的处理电路)可以用于执行训练、修剪和再训练,并且第二处理电路(例如,移动设备中或汽车中的小型低功率处理电路)可以用于使用由第一处理电路产生的权重和偏置来执行分类。
例如,每个长短期记忆单元310可以在存储器(例如,作为对象)中由图形处理单元利用相关联的权重来创建。在其他情况下将用于存储与被修剪的权重相对应的数据的存储器位置可以用于其他目的,并且针对经修剪的权重可以省略在其他情况下将执行的操作。
将理解,虽然本文中可以使用术语“第一”、“第二”、“第三”等来描述各种元素、组件、区域、层和/或部,但是这些元素、组件、区域、层和/或部不应受这些术语限制。这些术语仅用于区分一个元素、组件、区域、层或部与另一元素、组件、区域、层或部。因此,本文讨论的第一元素、组件、区域、层或者部可被称为第二元素、组件、区域、层或者部,而不脱离本发明构思的精神和范围。
本文中可以使用空间相对术语如“下方”、“之下”、“下部”、“下面”、“上方”、“之上”等,以便于描述在附图中示出的一个元素或特征相对于另一元素或特征的关系。将理解的是:空间相对术语除了包括附图中示出的取向之外,还意在包含设备在使用中或操作中的不同取向。例如,如果附图中的设备被翻转,则被描述为在其他元素或者特征“之下”或者“下方”或者“下面”的元素将定向在其它元素或者特征“之上”。因此,示例性术语“之下”和“下面”可以涵盖之上和之下的定向。设备可以以其它方式定向(例如,旋转90度或在其它方向),且应当可以相应地解释本文中使用的空间相对描述符。此外,还将理解:当层被称为在两层“之间”时,其可以是两层之间的唯一层,或者也可以存在一个或多个中间层。
本文所用术语仅用于描述特定实施例的目的,而不是为了限制本发明构思。如本文所使用的,术语“基本”、“大约”和类似的术语被用作近似的术语而不是程度的术语,并且意图解释测量值或计算值中的固有偏差,其将被本领域普通技术人员认识到。
如本文中使用的,单数形式“一”和“一个”意在还包括复数形式,除非上下文明确地给出相反的指示。还将理解,术语“包括”和/或“包含”当在本说明书中使用时,规定了存在所声明的特征、整数、步骤、操作、元素和/或组件,但是并没有排除存在或添加一个或多个其他特征、整数、步骤、操作、元素、组件和/或其组合。本文中所使用的术语“和/或”包括相关联列出项目中的一个或多个的任意和所有组合。诸如“……中的至少一项”之类的表述在元素列表之前时修饰整个元素列表,而不是修饰列表中的单独元素。此外,当描述本发明构思的实施例时使用“可以”是指“本公开的一个或多个实施例”。此外,术语“示例性”意在指代示例或说明。如本文所使用的,术语“使用”、“正在使用”和“使用的”可以分别被认为与术语“利用”、“正在利用”和“利用的”同义。
将理解,当元素或层被称为在另一元素或层“上”、“连接到”、“耦合到”或“邻近于”另一元素或层时,其可以直接在另一元素或层上、直接连接到、耦合到或邻近于另一元素或层,或者可以存在中间元素或层。相反,当元素或层被称为“直接”在另一元素或层“上”、“直接连接到”、“直接耦合到”或“紧邻近于”另一元素或层时,不存在中间元素或层。
本文列举的任何数值范围旨在包括所列举范围内纳入的具有相同数值精度的所有子范围。例如,“1.0至10.0”的范围旨在包括所述最小值1.0和所述最大值10.0之间(并且包括所述最小值1.0和所述最大值10.0)的所有子范围,即具有等于或大于1.0的最小值和等于或小于10.0的最大值的所有子范围,例如2.4至7.6。本文列举的任何最大数值限制旨在包括其中纳入的所有较低数值限制,并且本说明书中列举的任何最小数值限制旨在包括其中纳入的所有较高数值限制。
尽管本文已具体描述和说明了用于长短期记忆网络中的选择性修剪的系统和方法的示例性实施例,但是许多修改和变化对于本领域技术人员而言将是显而易见的。因此,应理解:在用于根据本公开的原理构造的长短期记忆网络中进行选择性修剪的系统和方法可以以不同于本文具体描述的方式来实施。还在所附权利要求及其等同物中限定了本发明。

Claims (20)

1.一种用于在包括一个或多个长短期记忆单元在内的第一神经网络中执行机器学习的方法,所述一个或多个长短期记忆单元中的第一长短期记忆单元包括:
具有第一权重矩阵Wc的输入;
具有第二权重矩阵Wi的输入门;
具有第三权重矩阵Wf的遗忘门;以及
具有第四权重矩阵Wo的输出门,
所述方法包括:
维持所述第一权重矩阵Wc不变;以及
修剪所述第三权重矩阵Wf,对所述第三权重矩阵Wf的修剪包括:
计算针对所述第三权重矩阵Wf的元素的子集的标准差;
确定在所述第三权重矩阵Wf中的第一位置处的第一元素无法满足第一阈值,所述第一阈值基于第二阈值和所述标准差;
基于确定在所述第三权重矩阵Wf中的第一位置处的所述第一元素无法满足所述第一阈值,将在所述第三权重矩阵Wf中的第一位置处的所述第一元素设置为零;
确定在所述第三权重矩Wf中的第二位置处的第二元素满足所述第一阈值;以及
基于确定在所述第三权重矩阵Wf中的第二位置处的所述第二元素满足所述第一阈值,维持所述第二元素不变。
2.根据权利要求1所述的方法,其中,所述一个或多个长短期记忆单元中的第二长短期记忆单元包括具有第五权重矩阵Wf的输入门,以及对所述标准差的计算包括:计算针对所述第三权重矩阵Wf和所述第五权重矩阵Wf的所有元素的标准差。
3.根据权利要求1所述的方法,其中,所述第三权重矩阵Wf的元素的子集包括所述第三权重矩阵Wf的所有元素。
4.根据权利要求1所述的方法,其中,所述一个或多个长短期记忆单元中的第二长短期记忆单元包括第五权重矩阵Wf,以及对所述标准差的计算包括:计算针对所述第三权重矩阵Wf和所述第五权重矩阵Wf中的第一位置处的所有元素的标准差。
5.根据权利要求1所述的方法,还包括:修剪所述第二权重矩阵Wi
6.根据权利要求1所述的方法,还包括:修剪所述第四权重矩阵Wo
7.根据权利要求1所述的方法,其中,所述第一神经网络还包括多个人工神经元以及所述人工神经元之间的多个连接,每个连接具有权重,以及所述方法还包括:
计算针对所述连接的权重的标准差;
当所述权重的量值小于阈值与所述标准差的乘积时,将所述多个连接中的连接的权重设置为零;以及
否则,保留所述连接的权重不变。
8.根据权利要求1所述的方法,还包括:对所述第一神经网络进行再训练,所述再训练包括:维持所述第一元素为零。
9.根据权利要求8所述的方法,还包括:操作第二神经网络,所述第二神经网络的权重矩阵Wf等于所述第一神经网络的第三权重矩阵Wf或第五权重矩阵Wf,所述操作包括:
用所述第二神经网络对图像进行分类,以及
基于对所述图像的分类来控制车辆。
10.一种用于执行机器学习的系统,所述系统包括第一处理电路,所述第一处理电路被配置为:
实例化包括一个或多个长短期记忆单元在内的第一神经网络,所述一个或多个长短期记忆单元中的第一长短期记忆单元包括:
具有第一权重矩阵Wc的输入;
具有第二权重矩阵Wi的输入门;
具有第三权重矩阵Wf的遗忘门;以及
具有第四权重矩阵Wo的输出门,
维持所述第一权重矩阵Wc不变;以及
修剪所述第三权重矩阵Wf,对所述第三权重矩阵Wf的修剪包括:
计算针对所述第三权重矩阵Wf的元素的子集的标准差;
确定在所述第三权重矩阵Wf中的第一位置处的第一元素无法满足第一阈值,所述第一阈值基于第二阈值和所述标准差;
基于确定在所述第三权重矩阵Wf中的第一位置处的所述第一元素无法满足所述第一阈值,将在所述第三权重矩阵Wf中的第一位置处的所述第一元素设置为零;
确定在所述第三权重矩阵Wf中的第二位置处的第二元素满足所述第一阈值;以及
基于确定在所述第三权重矩阵Wf中的第二位置处的所述第二元素满足所述第一阈值,维持所述第二元素不变。
11.根据权利要求10所述的系统,其中,所述一个或多个长短期记忆单元中的第二长短期记忆单元包括具有第五权重矩阵Wf的输入门,以及对所述标准差的计算包括计算针对所述第三权重矩阵Wf和所述第五权重矩阵Wf的所有元素的标准差。
12.根据权利要求10所述的系统,其中,所述第三权重矩阵Wf的元素的子集包括所述第三权重矩阵Wf的所有元素。
13.根据权利要求10所述的系统,其中,所述一个或多个长短期记忆单元中的第二长短期记忆单元包括第五权重矩阵Wf,以及对所述标准差的计算包括:计算针对所述第三权重矩阵Wf和所述第五权重矩阵Wf中的第一位置处的所有元素的标准差。
14.根据权利要求10所述的系统,其中,所述第一处理电路还被配置为:修剪所述第二权重矩阵Wi
15.根据权利要求10所述的系统,其中,所述第一处理电路还被配置为:修剪所述第四权重矩阵Wo
16.根据权利要求10所述的系统,其中,所述系统还包括多个人工神经元以及所述人工神经元之间的多个连接,每个连接具有权重,以及所述第一处理电路还被配置为:
计算针对所述连接的权重的标准差;
当所述权重的量值小于阈值与所述标准差的乘积时,将所述多个连接中的连接的权重设置为零;以及
否则,保留所述连接的权重不变。
17.根据权利要求10所述的系统,其中,所述第一处理电路还被配置为:对所述第一神经网络进行再训练,所述再训练包括:保留所述第一元素等于零。
18.根据权利要求17所述的系统,还包括第二处理电路,所述第二处理电路被配置为实例化第二神经网络,所述第二神经网络的权重矩阵Wf等于所述第一神经网络的第三权重矩阵Wf或第五权重矩阵Wf,以及所述第二处理电路被配置为:
用所述第二神经网络对图像进行分类,以及
基于对所述图像的分类来控制车辆。
19.一种用于在包括一个或多个长短期记忆单元在内的第一神经网络中执行机器学习的方法,所述一个或多个长短期记忆单元中的第一长短期记忆单元包括:
具有第一权重矩阵Wc的输入;
具有第二权重矩阵Wi的输入门;
具有第三权重矩阵Wf的遗忘门;以及
具有第四权重矩阵Wo的输出门,
所述方法包括:
维持所述第一权重矩阵Wc不变;以及
执行用于修剪所述第三权重矩阵Wf的步骤。
20.根据权利要求19所述的方法,其中,用于修剪的步骤包括:
计算针对所述第三权重矩阵Wf的元素的子集的标准差;
确定在所述第三权重矩阵Wf中的第一位置处的第一元素无法满足第一阈值,所述第一阈值基于第二阈值和所述标准差;
基于确定在所述第三权重矩阵Wf中的第一位置处的所述第一元素无法满足所述第一阈值,将在所述第三权重矩阵Wf中的第一位置处的所述第一元素设置为零;
确定在所述第三权重矩阵Wf中的第二位置处的第二元素满足所述第一阈值;以及
基于确定在所述第三权重矩阵Wf中的第二位置处的所述第二元素满足所述第一阈值,维持所述第二元素不变。
CN201910025315.4A 2018-01-25 2019-01-10 经由选择性修剪来加速长短期记忆网络 Active CN110084357B (zh)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US201862622083P 2018-01-25 2018-01-25
US62/622,083 2018-01-25
US15/937,558 US10657426B2 (en) 2018-01-25 2018-03-27 Accelerating long short-term memory networks via selective pruning
US15/937,558 2018-03-27

Publications (2)

Publication Number Publication Date
CN110084357A true CN110084357A (zh) 2019-08-02
CN110084357B CN110084357B (zh) 2024-02-27

Family

ID=67298737

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910025315.4A Active CN110084357B (zh) 2018-01-25 2019-01-10 经由选择性修剪来加速长短期记忆网络

Country Status (3)

Country Link
US (2) US10657426B2 (zh)
KR (1) KR20190090687A (zh)
CN (1) CN110084357B (zh)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10210860B1 (en) 2018-07-27 2019-02-19 Deepgram, Inc. Augmented generalized deep learning with special vocabulary
US11010132B2 (en) * 2018-09-28 2021-05-18 Tenstorrent Inc. Processing core with data associative adaptive rounding
US11847567B1 (en) 2018-12-05 2023-12-19 Perceive Corporation Loss-aware replication of neural network layers
US12045725B1 (en) 2018-12-05 2024-07-23 Perceive Corporation Batch normalization for replicated layers of neural network
US11868901B1 (en) 2019-05-21 2024-01-09 Percieve Corporation Compiler for optimizing memory allocations within cores
US11816574B2 (en) 2019-10-25 2023-11-14 Alibaba Group Holding Limited Structured pruning for machine learning model
US11995555B1 (en) 2019-12-17 2024-05-28 Perceive Corporation Training a neural network with quantized weights
KR20210084123A (ko) * 2019-12-27 2021-07-07 삼성전자주식회사 전자 장치 및 그 제어 방법
US12093816B1 (en) 2020-07-07 2024-09-17 Perceive Corporation Initialization of values for training a neural network with quantized weights

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130325768A1 (en) * 2012-06-04 2013-12-05 Brain Corporation Stochastic spiking network learning apparatus and methods
US20170148431A1 (en) * 2015-11-25 2017-05-25 Baidu Usa Llc End-to-end speech recognition
EP3179415A1 (en) * 2015-12-11 2017-06-14 Baidu USA LLC Systems and methods for a multi-core optimized recurrent neural network
CN107038476A (zh) * 2016-02-03 2017-08-11 谷歌公司 经压缩的递归神经网络模型
CN107239859A (zh) * 2017-06-05 2017-10-10 国网山东省电力公司电力科学研究院 基于串联长短期记忆循环神经网络的供热负荷预测方法
CN107293288A (zh) * 2017-06-09 2017-10-24 清华大学 一种残差长短期记忆循环神经网络的声学模型建模方法
US20170344829A1 (en) * 2016-05-31 2017-11-30 Microsoft Technology Licensing, Llc Skeleton -based action detection using recurrent neural network
CN107578124A (zh) * 2017-08-28 2018-01-12 国网山东省电力公司电力科学研究院 基于多层改进gru神经网络的短期电力负荷预测方法

Family Cites Families (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5920852A (en) * 1996-04-30 1999-07-06 Grannet Corporation Large memory storage and retrieval (LAMSTAR) network
US7080053B2 (en) 2000-08-16 2006-07-18 Research Foundation Of State University Of New York Neural network device for evolving appropriate connections
US7627540B2 (en) * 2005-06-28 2009-12-01 Neurosciences Research Foundation, Inc. Addressing scheme for neural modeling and brain-based devices using special purpose processor
US8510244B2 (en) * 2009-03-20 2013-08-13 ISC8 Inc. Apparatus comprising artificial neuronal assembly
SG188867A1 (en) * 2009-09-11 2013-04-30 Agency Science Tech & Res Electrocardiogram signal processing system
US8489529B2 (en) * 2011-03-31 2013-07-16 Microsoft Corporation Deep convex network with joint use of nonlinear random projection, Restricted Boltzmann Machine and batch-based parallelizable optimization
US9620108B2 (en) * 2013-12-10 2017-04-11 Google Inc. Processing acoustic sequences using long short-term memory (LSTM) neural networks that include recurrent projection layers
US10783900B2 (en) 2014-10-03 2020-09-22 Google Llc Convolutional, long short-term memory, fully connected deep neural networks
US11087167B2 (en) * 2014-12-22 2021-08-10 Robert Bosch Gmbh First-person camera based visual context aware system
US10664888B2 (en) * 2015-06-26 2020-05-26 Walmart Apollo, Llc Method and system for attribute extraction from product titles using sequence labeling algorithms
US10289509B2 (en) * 2016-04-06 2019-05-14 Nec Corporation System failure prediction using long short-term memory neural networks
EP3451239A4 (en) * 2016-04-29 2020-01-01 Cambricon Technologies Corporation Limited APPARATUS AND METHOD FOR PERFORMING RECURRENT NEURONAL NETWORK AND LTSM CALCULATIONS
US9760806B1 (en) 2016-05-11 2017-09-12 TCL Research America Inc. Method and system for vision-centric deep-learning-based road situation analysis
US10740676B2 (en) 2016-05-19 2020-08-11 Nec Corporation Passive pruning of filters in a convolutional neural network
US9767557B1 (en) * 2016-06-23 2017-09-19 Siemens Healthcare Gmbh Method and system for vascular disease detection using recurrent neural networks
US10387769B2 (en) * 2016-06-30 2019-08-20 Samsung Electronics Co., Ltd. Hybrid memory cell unit and recurrent neural network including hybrid memory cell units
KR20180003123A (ko) * 2016-06-30 2018-01-09 삼성전자주식회사 메모리 셀 유닛 및 메모리 셀 유닛들을 포함하는 순환 신경망
US10154051B2 (en) * 2016-08-31 2018-12-11 Cisco Technology, Inc. Automatic detection of network threats based on modeling sequential behavior in network traffic
US10922604B2 (en) * 2016-09-09 2021-02-16 Cylance Inc. Training a machine learning model for analysis of instruction sequences
US10255269B2 (en) * 2016-12-30 2019-04-09 Microsoft Technology Licensing, Llc Graph long short term memory for syntactic relationship discovery
US11636317B2 (en) * 2017-02-16 2023-04-25 International Business Machines Corporation Long-short term memory (LSTM) cells on spiking neuromorphic hardware
CN107688849B (zh) * 2017-07-28 2021-04-13 赛灵思电子科技(北京)有限公司 一种动态策略定点化训练方法及装置
CN107688850B (zh) * 2017-08-08 2021-04-13 赛灵思公司 一种深度神经网络压缩方法
US20190050735A1 (en) * 2017-08-11 2019-02-14 Samsung Electronics Co., Ltd. Methods and algorithms of reducing computation for deep neural networks via pruning
US20200210818A1 (en) * 2017-11-02 2020-07-02 Tdk Corporation Array device including neuromorphic element and neural network system
US11461628B2 (en) * 2017-11-03 2022-10-04 Samsung Electronics Co., Ltd. Method for optimizing neural networks
US10258304B1 (en) * 2017-11-29 2019-04-16 Siemens Healthcare Gmbh Method and system for accurate boundary delineation of tubular structures in medical images using infinitely recurrent neural networks
US11361215B2 (en) * 2017-11-29 2022-06-14 Anaflash Inc. Neural network circuits having non-volatile synapse arrays
US11250325B2 (en) * 2017-12-12 2022-02-15 Samsung Electronics Co., Ltd. Self-pruning neural networks for weight parameter reduction
US10162794B1 (en) * 2018-03-07 2018-12-25 Apprente, Inc. Hierarchical machine learning system for lifelong learning
US11287894B2 (en) * 2018-03-09 2022-03-29 Adobe Inc. Utilizing a touchpoint attribution attention neural network to identify significant touchpoints and measure touchpoint contribution in multichannel, multi-touch digital content campaigns

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130325768A1 (en) * 2012-06-04 2013-12-05 Brain Corporation Stochastic spiking network learning apparatus and methods
US20170148431A1 (en) * 2015-11-25 2017-05-25 Baidu Usa Llc End-to-end speech recognition
EP3179415A1 (en) * 2015-12-11 2017-06-14 Baidu USA LLC Systems and methods for a multi-core optimized recurrent neural network
CN107038476A (zh) * 2016-02-03 2017-08-11 谷歌公司 经压缩的递归神经网络模型
US20170344829A1 (en) * 2016-05-31 2017-11-30 Microsoft Technology Licensing, Llc Skeleton -based action detection using recurrent neural network
CN107239859A (zh) * 2017-06-05 2017-10-10 国网山东省电力公司电力科学研究院 基于串联长短期记忆循环神经网络的供热负荷预测方法
CN107293288A (zh) * 2017-06-09 2017-10-24 清华大学 一种残差长短期记忆循环神经网络的声学模型建模方法
CN107578124A (zh) * 2017-08-28 2018-01-12 国网山东省电力公司电力科学研究院 基于多层改进gru神经网络的短期电力负荷预测方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
M. AUGASTA等: "Pruning algorithms of neural networks — a comparative study", 《OPEN COMPUTER SCIENCE》, vol. 3, no. 3, pages 105 - 115, XP035347857, DOI: 10.2478/s13537-013-0109-x *

Also Published As

Publication number Publication date
US11151428B2 (en) 2021-10-19
US10657426B2 (en) 2020-05-19
CN110084357B (zh) 2024-02-27
US20200234089A1 (en) 2020-07-23
US20190228274A1 (en) 2019-07-25
KR20190090687A (ko) 2019-08-02

Similar Documents

Publication Publication Date Title
CN110084357A (zh) 经由选择性修剪来加速长短期记忆网络
KR102699827B1 (ko) 음성 인식 모델을 개인화하는 방법 및 장치
CA2839279C (en) Method and apparatus for a local competitive learning rule that leads to sparse connectivity
US20170091619A1 (en) Selective backpropagation
CN107688855A (zh) 针对于复杂神经网络的分层量化方法与装置
KR102154676B1 (ko) 인공 신경망의 하향식 선택적 주의집중 트레이닝 방법
CN109523014B (zh) 基于生成式对抗网络模型的新闻评论自动生成方法及系统
WO2014060001A1 (en) Multitransmitter model of the neural network with an internal feedback
Ochiai et al. Automatic node selection for deep neural networks using group lasso regularization
CN106909972A (zh) 一种传感器数据校准模型的学习方法
US20230004816A1 (en) Method of optimizing neural network model and neural network model processing system performing the same
WO2020195940A1 (ja) ニューラルネットワークのモデル縮約装置
CN114511042A (zh) 一种模型的训练方法、装置、存储介质及电子装置
Mulligan et al. Dog breed identification with a neural network over learned representations from the xception cnn architecture
Liang et al. Distributed large neural network with centralized equivalence
Ramanan et al. Unbalanced decision trees for multi-class classification
CN114611692A (zh) 模型训练方法、电子设备以及存储介质
KR101855360B1 (ko) 신경망의 학습 최적화를 위한 신경망 구성 방법 및 장치
Saphra et al. Language models learn POS first
KR20210103912A (ko) 뉴럴 네트워크를 학습시키는 학습 방법 및 장치, 뉴럴 네트워크를 이용한 데이터 처리 방법 및 장치
CN113777965B (zh) 喷涂质量控制方法、装置、计算机设备及存储介质
Shen et al. A fast learning algorithm of neural network with tunable activation function
CN105183646B (zh) Rnn代码测试方法及装置
JP7395063B2 (ja) ニューラルネットワーク制御器
CN113378993B (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