CN112819151A - 用于识别图像的方法和设备以及训练方法 - Google Patents
用于识别图像的方法和设备以及训练方法 Download PDFInfo
- Publication number
- CN112819151A CN112819151A CN202010642022.3A CN202010642022A CN112819151A CN 112819151 A CN112819151 A CN 112819151A CN 202010642022 A CN202010642022 A CN 202010642022A CN 112819151 A CN112819151 A CN 112819151A
- Authority
- CN
- China
- Prior art keywords
- neural network
- network model
- deep neural
- data
- output data
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/047—Probabilistic or stochastic networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/048—Activation functions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/084—Backpropagation, e.g. using gradient descent
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/088—Non-supervised learning, e.g. competitive learning
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Evolutionary Computation (AREA)
- Molecular Biology (AREA)
- Artificial Intelligence (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Probability & Statistics with Applications (AREA)
- Image Analysis (AREA)
- Machine Translation (AREA)
Abstract
提供了用于识别图像的方法和设备以及训练方法。所述用于识别图像的方法包括:获得待识别的图像数据作为输入数据;通过使用输入数据执行深度神经网络(DNN)模型,从DNN生成第一输出数据;改变DNN模型;通过使用输入数据执行改变的DNN模型,生成改变的DNN模型的第二输出数据;和通过组合第一输出数据和第二输出数据来确定指示图像识别结果的结果数据。
Description
本申请要求于2019年11月18日在韩国知识产权局提交的第10-2019-0147821号韩国专利申请的权益,所述韩国专利申请的全部公开出于所有目的通过引用包含于此。
技术领域
下面的描述涉及具有神经网络模型的数据处理方法和设备,更具体地,涉及用于识别图像的方法和设备以及训练方法。
背景技术
图像识别可通过神经网络来实现。神经网络是通过参照计算架构来实现的处理器实现的计算系统。神经网络具有实现简单功能的大量处理装置可并联连接的操作结构,并且被广泛用作在图像识别中解决通过实施典型技术可能难以解决的问题的新技术。神经网络可具有用于基于训练的结果针对尚未被用于训练的输入图像生成相对正确的输出的泛化能力。
发明内容
提供本发明内容以便以简化的形式介绍以下在具体实施方式中进一步描述的构思的选择。本发明内容不意在确定要求权利的主题的关键特征或必要特征,也不意在用于帮助确定要求权利的主题的范围。
在一个总体方面,一种用于识别图像的方法包括:获得待识别的图像数据作为输入数据;通过使用输入数据执行深度神经网络(DNN)模型,从DNN模型生成第一输出数据;改变DNN模型;通过使用输入数据执行改变的DNN模型,生成改变的DNN模型的第二输出数据;和通过组合第一输出数据和第二输出数据来确定指示图像识别结果的结果数据。
在一个总体方面,一种用于识别图像的方法包括:通过改变训练的初始深度神经网络模型(DNN)来生成第一改变的DNN模型;通过使用作为输入数据的图像数据执行第一改变的DNN模型,从第一改变的DNN模型生成第一输出数据;通过改变初始DNN模型来生成第二改变的DNN模型;通过使用输入数据执行第二改变的DNN模型,从第二改变的DNN模型生成第二输出数据;和通过组合第一输出数据和第二输出数据来确定指示图像识别结果的结果数据。
在一个总体方面,一种用于图像识别的神经网络的训练方法包括:改变深度神经网络(DNN)模型;通过使用作为训练数据的图像数据执行改变的DNN模型,从改变的DNN模型生成输出数据;基于生成的输出数据来更新DNN模型的参数;和通过重复地执行改变的步骤、生成的步骤和更新的步骤来训练DNN模型。
在一个总体方面,一种用于识别图像的设备包括:一个或多个处理器,被配置为:获得待识别的图像数据作为输入数据;通过使用输入数据执行深度神经网络(DNN)模型来生成DNN模型的第一输出数据;改变DNN模型;通过使用输入数据执行改变的DNN模型,从改变的DNN模型生成第二输出数据;和通过组合第一输出数据和第二输出数据来确定指示图像识别结果的结果数据。
在一个总体方面,一种用于识别图像的设备包括:一个或多个处理器,被配置为:通过改变训练的初始深度神经网络(DNN)模型来生成第一改变的DNN模型;通过使用作为输入数据的图像数据执行第一改变的DNN模型,生成第一改变的DNN模型的第一输出数据;通过改变初始DNN模型来生成第二改变的DNN模型;通过使用输入数据执行第二改变的DNN模型,从第二改变的DNN模型生成第二输出数据;和通过组合第一输出数据和第二输出数据来确定指示图像识别结果的结果数据。
在一个总体方面,一种用于识别图像的方法包括:获得待识别的图像数据作为输入数据;用输入数据执行初始神经网络模型;通过将量化的第一噪声值施加到初始神经网络的连接权重来执行第一改变的神经网络模型;将输入数据输入到第一改变的神经网络模型;从第一改变的神经网络模型生成第一输出数据;将量化的第二噪声值施加到第一改变的神经网络模型以获得第二改变的神经网络模型;将输入数据输入到第二改变的神经网络模型;从第二改变的神经网络模型生成第二输出数据;基于第一输出数据和第二输出数据生成融合的输出数据;和从融合的输出数据生成指示图像识别结果的最终输出结果。
在一个总体方面,一种处理器实现的方法包括:使用输入数据来执行深度神经网络(DNN)模型;通过执行DNN模型,从DNN模型生成第一输出数据;改变DNN模型;通过使用输入数据来执行改变的DNN模型,生成改变的DNN模型的第二输出数据;和通过组合第一输出数据和第二输出数据来确定结果数据。
输入数据可以是推断输入数据。
改变DNN模型的步骤可包括:改变DNN模型的至少一个连接权重。
改变DNN模型的步骤可包括:基于噪声模型确定噪声值;和将确定的噪声值施加到DNN模型的至少一个连接权重。
确定噪声值的步骤可包括:使用高斯模型确定噪声值。
噪声值可以是量化的噪声值。
DNN模型可以是单个DNN模型。
DNN模型可以是面部认证模型、活性模型、翻译模型和对象识别模型以及对象检测模型中的一个。
在一个总体方面,一种处理器实现的数据处理方法包括:通过改变训练的初始深度神经网络(DNN)模型来生成第一改变的DNN模型;通过使用输入数据执行第一改变的DNN模型,从第一改变的DNN模型生成第一输出数据;通过改变初始DNN模型来生成第二改变的DNN模型;通过使用输入数据执行第二改变的DNN模型,从第二改变的DNN模型生成第二输出数据;和通过组合第一输出数据和第二输出数据来确定结果数据。
生成第一改变的DNN模型的步骤可包括:改变初始DNN模型的至少一个连接权重,生成第二改变的DNN模型的步骤包括:改变初始DNN模型的至少一个连接权重,并且第一改变的DNN模型不同于第二改变的DNN模型。
所述方法可包括:基于初始DNN模型的输出来确定结果数据。
在一个总体方面,一种处理器实现的训练方法包括:改变深度神经网络(DNN)模型;使用训练的输入数据来执行改变的DNN模型;通过执行改变的DNN模型,从改变的DNN模型生成输出数据;基于生成的输出数据来更新DNN模型的参数;和通过重复地执行改变的步骤、生成的步骤和更新的步骤来训练DNN模型。
改变DNN模型的步骤可包括:改变DNN模型的至少一个连接权重。
改变DNN模型的步骤可包括:基于噪声模型确定噪声值;和将确定的噪声值施加到DNN模型的至少一个连接权重。
噪声值可以是量化的噪声值。
生成输出数据的步骤可包括:通过将包含噪声的训练数据输入到改变的DNN模型来生成输出数据。
在一个总体方面,一种设备包括:一个或多个处理器,所述一个或多个处理器被配置为:使用输入数据来执行深度神经网络(DNN)模型;通过执行DNN模型来生成DNN模型的第一输出数据;改变DNN模型;通过使用输入数据执行改变的DNN模型,从改变的DNN模型生成第二输出数据;和通过组合第一输出数据和第二输出数据来确定结果数据。
处理器还可被配置为:改变DNN模型的至少一个连接权重。
处理器还可被配置为:基于噪声模型来确定噪声值,并且将确定的噪声值施加到DNN模型的至少一个连接权重,以改变DNN模型的所述至少一个连接权重。
所述设备可包括存储指令的存储器,所述指令在被所述一个或多个处理器执行时,将所述一个或多个处理器配置为执行生成第一输出数据的步骤、改变DNN模型的步骤、生成第二输出数据的步骤以及确定结果数据的步骤。
所述设备可包括:图像捕获装置,被配置为捕获输入数据。
在一个总体方面,一种设备包括:一个或多个处理器,所述一个或多个处理器被配置为:通过改变训练的初始深度神经网络(DNN)模型来生成第一改变的DNN模型;通过使用输入数据执行第一改变的DNN模型,生成第一改变的DNN模型的第一输出数据;通过改变初始DNN模型来生成第二改变的DNN模型;通过使用输入数据执行第二改变的DNN模型,从第二改变的DNN模型生成第二输出数据;和通过组合第一输出数据和第二输出数据来确定结果数据。
处理器还可被配置为:通过改变DNN模型的至少一个连接权重来生成第一改变的DNN模型;和通过改变DNN模型的至少一个连接权重来生成第二改变的DNN模型,并且其中,第一改变的DNN模型不同于第二改变的DNN模型。
所述设备可包括存储指令的存储器,所述指令在被所述一个或多个处理器执行时,将所述一个或多个处理器配置为:执行生成第一改变的DNN模型的步骤、生成第一输出数据的步骤、生成第二改变的DNN模型的步骤、生成第二输出数据的步骤以及确定结果数据的步骤。
所述设备可包括:图像捕获装置,被配置为捕获输入数据。
在一个总体方面,一种处理器实现的方法包括:用输入数据执行初始神经网络模型;通过将第一量化的噪声值施加到初始神经网络的连接权重来执行第一改变的神经网络模型;将输入数据输入到第一改变的神经网络模型,从第一改变的神经网络模型生成第一输出数据;将第二量化的噪声值施加到第一改变的神经网络模型以获得第二改变的神经网络模型;将输入数据输入到第二改变的神经网络模型,从第二改变的神经网络模型生成第二输出数据;基于第一输出数据和第二输出数据来生成融合的输出数据;和从融合的数据生成最终输出结果。
神经网络模型可以是深度神经网络模型。
第一改变的神经网络模型可不同于第二改变的神经网络模型。
第一噪声值可不同于第二噪声值。
从下面的具体实施方式、附图以及权利要求,其它特征和方面将是清楚的。
附图说明
图1示出根据一个或多个实施例的深度神经网络(DNN)模型的示例。
图2是示出根据一个或多个实施例的训练DNN模型的示例训练方法的流程图。
图3是示出根据一个或多个实施例的使用DNN模型的示例数据处理方法的流程图。
图4示出根据一个或多个实施例的使用DNN模型的示例数据处理过程。
图5是示出根据一个或多个实施例的使用DNN模型的示例数据处理方法的流程图。
图6示出根据一个或多个实施例的使用DNN模型的示例数据处理过程。
图7是示出根据一个或多个实施例的示例训练设备的框图。
图8是示出根据一个或多个实施例的示例数据处理设备的框图。
贯穿附图和具体实施方式,除非另外描述或提供,否则相同的附图参考标号将被理解为表示相同的元件、特征和结构。附图可不按比例,并且为了清楚、说明和方便,附图中的元件的相对尺寸、比例和描绘可被夸大。
具体实施方式
提供下面的具体实施方式以帮助读者获得对在此描述的方法、设备和/或系统的全面理解。然而,在理解本申请的公开之后,在此描述的方法、设备和/或系统的各种改变、修改和等同物将是清楚的。例如,在此描述的操作的顺序仅是示例,并且不限于在此阐述的那些顺序,而是除了必须以特定的顺序发生的操作之外,可如在理解本申请的公开之后将是清楚的那样被改变。此外,为了更加清楚和简明,可省略在理解申请的公开之后已知的特征的描述。
在此使用的术语仅用于描述各种示例,并且将不用于限制公开。除非上下文另外清楚地指示,否则单数形式也意在包括复数形式。术语“包含”、“包括”和“具有”说明存在阐述的特征、数量、操作、构件、元件和/或它们的组合,但不排除存在或添加一个或多个其它特征、数量、操作、构件、元件和/或它们的组合。
贯穿说明书,当诸如层、区域或基底的元件被描述为“在”另一元件“上”、“连接到”或“结合到”另一元件时,所述元件可直接“在”所述另一元件“上”、“连接到”或“结合到”所述另一元件,或者可存介于它们之间的在一个或多个其它元件。相反,当元件被描述为“直接在”另一元件“上”、“直接连接到”或“直接结合到”另一元件时,可不存在介于它们之间的其它元件。
如在此使用的,术语“和/或”包括相关联的所列项中的任意一个以及任意两个或更多个的任意组合。
尽管在此可使用诸如“第一”、“第二”和“第三”的术语来描述各种构件、组件、区域、层或部分,但是这些构件、组件、区域、层或部分不应被这些术语所限制。相反,这些术语仅用于将一个构件、组件、区域、层或部分与另一构件、组件、区域、层或部分进行区分。因此,在不脱离示例的教导的情况下,在此描述的示例中所称的第一构件、第一组件、第一区域、第一层或第一部分也可被称为第二构件、第二组件、第二区域、第二层或第二部分。
除非另有定义,否则在此使用的所有术语(包括技术术语和科学术语)具有与由本公开所属领域的普通技术人员在理解本申请的公开的之后通常理解的含义相同的含义。除非在此明确地如此定义,否则术语(诸如,在通用词典中定义的那些术语)应被解释为具有与它们在相关领域的上下文和本申请的公开中的含义一致的含义,并且不应以理想化或过于形式化的含义被解释。
图1示出深度神经网络(DNN)模型100的示例。例如,模式识别或分析的技术自动化已经通过处理器实现的神经网络模型被实现为专用计算架构,在大量训练之后的专用计算架构可提供输入模式与输出模式之间的计算上直观的映射或输入模式的模式识别。生成这样的映射或执行这样的模式识别的训练能力可被称为神经网络的学习能力。这种训练能力也可使专用计算架构能够将这种输入模式或输入模式的部分分类为属于一个或多个预定组的成员。此外,由于专门训练,从而这样的专门训练的神经网络可具有针对例如神经网络可能尚未针对其进行训练的输入模式生成相对准确或可靠的输出的泛化能力。
参照图1,DNN模型100可包括多个层。例如,DNN模型100可包括输入层110、多个隐藏层120和130以及输出层140。每个层包括多个节点(或神经元)。每个节点是具有输入和输出的计算的单元,并且节点彼此连接。简言之,对“神经元”的这样的引用不意在传递关于神经网络架构如何计算地映射或由此直观地识别信息与人类的神经元如何操作的任何相关性。换句话说,术语“神经元”仅仅是指示硬件实现的神经网络的节点的领域的术语,并且将具有与神经网络的节点的含义相同的含义。
在一个示例中,根据用于处理信息的算法,DNN可以是全连接网络、卷积神经网络、循环神经网络等中的一个或多个,或者可包括分别具有这样的全连接、卷积连接或循环连接的不同或重叠的神经网络部分。神经网络100可被配置为:通过基于深度学习以非线性关系相互映射输入数据与输出数据,来执行作为非限制性示例的图像识别。作为非限制性示例,这样的深度学习指示用于根据数据集解决问题(诸如,与自动图像识别相关的问题)的处理器实现的机器学习方案。在此,注意的是,关于示例或实施例使用术语“可”(例如,关于示例或实施例可包括或实现什么)表示:存在包括或实现这样的特征的至少一个示例或实施例,而所有示例和实施例不限于此。
参照图1,输入层110可包括数据不经过与其它节点有关的链路而被直接输入到的一个或多个节点(例如,节点I1至In)。输出层140可包括不具有与其它节点有关的输出节点的一个或多个节点(例如,节点O1至On)。隐藏层120和130对应于DNN模型100中的除了输入层110和输出层140之外的层,并且包括对应于与其它节点有关的输入节点或输出节点的节点H11至H1n和H21至H2n。图1的DNN模型100是为了便于描述的示例,并且示例的范围不应被解释为被DNN模型100的结构限制。示例中使用的DNN模型可具有各种不同的结构。基于各种示例,包括在DNN模型100中的隐藏层的数量、包括在每个层中的节点的数量和/或节点之间的连接关系可被改变。
在一个示例中,包括在一个层中的一个节点的输出可被输入到包括在另一层中的至少一个节点。例如,包括在输入层110中的节点112的输出可被传送到至少一个节点(例如,隐藏层120的节点122)。节点通过“链路”(或加权连接)彼此连接,并且通过这样的链路连接的节点形成输入节点与输出节点之间的关系。输入节点和输出节点的概念是相对的,并且针对一个节点与输出节点有关的任何节点可针对另一节点与输入节点有关,或者反之亦然。
在包括多个层的DNN中,相邻层中的相对高的层可接收通过将相对低的层的输出值或者将前一层的输出值乘以连接权重并向其施加偏置而获得的值,并且输出特定的运算值或激活值,输出值可以以相似的方式施加到与该层相邻的另一较高的层或随后的层例如作为输入。
因此,针对节点之间的链路可设置连接权重。针对节点112与122之间的链路115可设置预定连接权重。在输入层的节点与隐藏层的节点之间、每个隐藏层之间以及隐藏层与输出层之间可存在连接加权的链路。在训练期间,连接权重可被调整或改变。具有不同的连接权值的DNN模型可表现出不同的特性。连接权重通过增大、减小或维持数据值来确定相关联的数据值对最终结果的影响的程度。连接权重是DNN模型100的参数。
在经由这样的链路连接的输入节点与输出节点之间的关系中,输出节点的输出值可基于输入到输入节点的数据以及输入节点与输出节点之间的链路的连接权重来确定。例如,当至少一个输入节点通过每个链路连接到一个输出节点时,输出节点的输出值可基于输入到至少一个输入节点的输入值以及至少一个输入节点中的每个输入节点与输出节点之间的链路的连接权重来确定。
与包括在前一层中的节点的加权输入相关联的激活函数的输出可被输入到包括在随后的层(例如,隐藏层130)中的多个或所有节点中的每个节点。加权输入通过将各自的连接权重与包括在前一层中的节点的输入相乘来获得。作为非限制性示例,激活函数包括S形函数、双曲正切(tanh)函数或整流线性单元(ReLU)函数。包括在前一层中的节点的加权输入被输入到包括在输出层140中的每个节点。将加权的数据从任意层输入到下一层的处理被称为“传播”。
以上DNN模型100可通过计算机可执行代码或指令来实现,计算机可执行代码或指令在由硬件装置(例如,计算机系统)执行时配置硬件装置实现神经网络设备。DNN模型100包括例如全连接网络、深度卷积网络或循环神经网络。DNN模型110用于各种图像识别领域(例如,对象识别或计算机视觉)。
为了进一步增强DNN模型100的性能,集成方案或方法可被使用。集成方案是从多个不同的DNN模型获取多个输出、组合获取的多个输出并确定最终结果的方案。“集成”方案可简单地表示多个结果或输出的融合或组合。集成方案可增强最终DNN模型的性能,但是可能需要大量的时间和资源来训练各种DNN模型。另外,可加载或存储多个DNN模型的大量资源(例如,存储器大小)用于实现集成方案。当用于实现集成方案的DNN模型的数量增大时,将被使用的存储器的大小增大。由于DNN模型可包括大量参数,因此即使针对单个DNN模型,大的存储器可能必须被使用。得到结果的集成方案可通过组合通过应用各种机器学习算法方法生成的各种神经网络来得到。
在一个示例中,作为另一种方法,可提供与集成方案的方法类似的方法。类似的方法可使用单个DNN模型,并且可通过在不同的时间点改变单个DNN模型来获取多条输出数据,组合多条输出数据并确定最终结果数据。通过实现以上处理,将被使用的资源的量可减小,并且DNN模型的性能可被增强。另外,关于DNN模型的训练,针对对抗攻击(adversarialattack)具有鲁棒性的DNN模型可被生成。对抗攻击可指示攻击者故意操纵输入值以使DNN模型产生错误的结果。例如,对抗攻击可对应于通过将难以在视觉上区分的预定噪声与输入图像合成并通过将合成噪声的输入图像输入到DNN模型,来诱导DNN模型的错误分类结果的行为。通过基于包含噪声的训练数据来训练DNN模型,针对这样的对抗攻击具有鲁棒性的DNN模型可被生成。
图2是示出根据一个或多个实施例的训练DNN模型的示例训练方法的流程图。可以以如示出的顺序和方式执行图2中的操作,但是在不脱离描述的说明性示例的精神和范围的情况下可改变一些操作的顺序或省略一些操作。图2中示出的操作中的一个或多个操作可并行地或同时执行。图2的一个或多个框以及框的组合可由执行指定功能的基于专用硬件的计算机或者专用硬件和计算机和处理器指令的组合来实现。除了以下图2的描述之外,图1的描述也适用于图2,并且通过引用包含于此。因此,在此可不重复以上描述。例如,图2的训练方法可由训练设备执行。
参照图2,在操作210中,训练设备可改变DNN模型。在一个示例中,改变DNN模型可包括改变DNN模型的至少一个连接权重,例如,包括在DNN模型中的节点之间的链路的连接权重。例如,训练设备可通过使用具有高斯模型的形式的噪声模型确定噪声值并通过将确定的噪声值施加到DNN模型的至少一个连接权重,来改变连接权重。在这个示例中,噪声值是量化的噪声值。将从噪声模型输出的噪声值的特性可基于应用于噪声模型的标准差值和平均值来确定。根据示例,训练设备可使用提供量化的噪声值的量化噪声模型,来确定将被施加到DNN模型的连接权重的噪声值。可选地,将要被改变的DNN模型可以是使用初始训练数据(例如,图像数据)被预先训练的初始DNN模型。
在操作220中,训练设备基于训练数据(例如,图像数据)来获取改变的DNN模型的输出数据(例如,图像识别的识别结果)。训练设备可将训练数据输入到改变的DNN模型,并且从改变的DNN模型获取输出数据。改变的DNN模型可基于输入的训练数据基于节点之间的连接权重和连接关系来计算输出数据,并且输出输出数据。
在一个示例中,在训练处理期间,噪声可被人工地添加到训练数据。在这个示例中,训练设备可通过将包含噪声的训练数据(例如,包含噪声的图像数据)输入到改变的DNN模型,来获取DNN模型的输出数据。当DNN模型基于包含噪声的训练数据来训练时,针对对抗攻击具有鲁棒性的DNN模型可被获取。
训练数据可基于DNN模型可被实现的方式而变化。例如,当DNN模型用于人脸识别处理示例时,训练数据可包括大量的各种数量的人脸图像。
在操作230中,训练设备基于改变的DNN模型的输出数据来更新DNN模型的参数。例如,训练设备可使用有监督机器学习方案或无监督机器学习方案来执行更新DNN模型的参数的训练处理。训练处理可包括以下处理:计算改变的DNN模型的输出数据与目标输出数据之间的误差并且更新DNN模型的连接权重以例如通过经由DNN将该误差反向传播减小计算的误差。在非限制性示例中,更新连接权重的处理可包括:调整连接权重以使被描述为微分函数之和的目标函数或代价函数(例如,被称为增量梯度下降的随机梯度下降(SGD))最小化。
在操作240中,训练设备确定基于所有训练数据的训练是否完成。如果基于所有训练数据的训练未完成时,则在操作250中,训练设备接收下一训练数据。训练设备对下一训练数据重复地执行操作210至240的处理。如上所述,训练设备通过重复地执行改变DNN模型的操作、获取改变的DNN模型的输出数据的操作以及更新DNN模型的参数的操作来训练DNN模型。当基于所有训练数据的训练完成时,DNN模型的训练处理被终止。
图3是示出根据一个或多个实施例的使用DNN模型的数据处理方法的示例的流程图。可以以如示出的顺序和方式执行图3中的操作,但是在不脱离描述的说明性示例的精神和范围的情况下可改变一些操作的顺序或省略一些操作。图3中示出的操作中的一个或多个操作可并行地或同时执行。图3的一个或多个框以及框的组合可由执行指定功能的基于专用硬件的计算机或者专用硬件和计算机和处理器指令的组合来实现。除了以下图3的描述之外,图1至图2的描述也适用于图3,并且通过引用包含于此。因此,在此可不重复以上描述。例如,图3的数据处理方法由数据处理设备执行。
参照图3,在操作310中,数据处理设备通过将输入数据(例如,图像数据)输入到DNN模型来获取DNN模型的第一输出数据。在一个示例中,当DNN模型将被用于面部认证示例时,作为输入数据的图像数据被输入到DNN模型,并且DNN模型输出指示图像数据中出现的用户的面部与注册用户的面部图像之间的相似度的概率值或特征值作为输出数据。在另一示例中,当DNN模型将被用于活性测试示例中以确定对象是真实的或假的时,表示将被测试的对象的图像数据作为输入数据被输入到DNN模型。在这个示例中,DNN模型可输出指示图像数据中出现的对象对应于有生命的对象的期望值的分数或特征值作为输出数据。
在操作320中,数据处理设备改变DNN模型。数据处理设备通过改变DNN模型的参数(例如,包括在DNN模型中的节点之间的链路的连接权重)来改变DNN模型。数据处理设备改变至少一个链路的连接权重。在一个示例中,数据处理设备使用噪声模型来确定噪声值,并且将确定的噪声值施加到DNN模型的连接权重,以改变连接权重。数据处理设备使用具有高斯模型的形式的噪声模型来确定任意噪声值,并且将确定的噪声值施加到DNN模型的至少一个连接权重。具有高斯模型的形式的噪声模型被称为“高斯噪声模型”,并且高斯噪声模型可表示遵循具有平均值为零的高斯分布的噪声。在高斯噪声模型中,噪声值的特性基于设置的平均值和标准差或方差来确定。
将被施加噪声值的连接权重可被随机地确定或者可被预先定义。然而,示例的范围不限于此。根据示例,量化的噪声值可使用噪声模型来确定,并且量化的噪声值可应用于DNN模型的至少一个连接权重。通过以上DNN模型的改变,具有与在操作310中使用的DNN模型的特性不同的特性的DNN模型被生成。
在操作330中,数据处理设备从改变的DNN模型获取第二输出数据。数据处理设备将输入数据输入到改变的DNN模型,以从改变的DNN模型获取第二输出数据。输入数据与在操作310中输入到DNN模型的输入数据相同。类似于操作310,数据处理设备可从改变的DNN模型获取第二输出数据。术语“第二输出数据”在此用于与操作310的第一输出数据区分开,并且第二输出数据对应于改变的DNN模型的输出数据。
在操作340中,数据处理设备通过组合或融合第一输出数据和第二输出数据来确定结果数据(例如,图像识别的识别结果)。在一个示例中,类似于集成方案,数据处理设备组合或融合第一输出数据和第二输出数据,并且确定最终结果数据(例如,第一输出数据和第二输出数据的预定运算结果或统计结果)。例如,当第一输出数据和第二输出数据分别被假定为第一特征值和第二特征值时,数据处理设备可将第一特征值和第二特征值的和、加权和、或平均值确定为结果数据。
尽管以上已经描述了基于两条输出数据确定结果数据的示例,但是示例包括数据处理方法同样以DNN模型被改变至少两次或更多次(每次DNN模型被改变时输出数据被获取并且获取的输出数据可被组合以确定最终结果数据)的示例来实现。在一个示例中,当在操作330中获取了第二输出数据时,可在操作320中再次改变DNN模型以生成具有不同的特性的改变的DNN模型,并且可将输入数据输入到改变的DNN模型以获取第三输出数据。在这个示例中,数据处理设备可组合第一输出数据、第二输出数据和第三输出数据以确定最终结果数据。
如上所述,典型的数据处理设备可通过使用单个DNN模型并改变DNN模型,然后使用改变的DNN模型获取各种输出数据来提供与集成方案的效果类似的效果。DNN模型可使用强大的计算资源和大量的数据存储资源,并且实现多个DNN模型的典型的集成方案可利用相当大量的资源。
然而,作为一个示例,示例数据处理方法可使用单个DNN模型来实现,因此更少的资源可被需要,并且DNN模型的准确性可基于集成方案被增强。因此,数据处理方法可有效地用于在资源受限的使用环境下增强DNN模型的性能。此外,DNN模型可以以例如与图2的训练处理类似的训练处理被训练以更准确地识别人工输入的噪声,因此针对对抗攻击具有鲁棒性的处理结果可被获得。
图4示出根据一个或多个实施例的使用DNN模型的示例数据处理过程。
参照图4,将被处理的输入数据410被传送到DNN模型。在第一阶段中,输入数据410被输入到基本DNN模型422,并且基本DNN模型422输出基本输出数据432。基本DNN模型422是DNN模型,并且对应于未被改变的DNN模型。
在第二阶段中,第一改变的DNN模型424通过改变基本DNN模型422来生成。第一改变的DNN模型424可通过改变基本DNN模型422的参数来生成。在一个示例中,第一改变的DNN模型424可通过将量化的噪声值施加到基本DNN模型422的连接权重来获取。然后,输入数据410被输入到第一改变的DNN模型424,并且第一改变的DNN模型424输出第一输出数据434。
在第N阶段中,第N改变的DNN模型426通过改变基本DNN模型422来生成。类似地,输入数据410被输入到第N改变的DNN模型426,并且第N输出数据436从第N改变的DNN模型426被获取。在这个示例中,N是大于或等于2的自然数。尽管以上已经描述了将基本DNN模型422改变N次的示例,但是基本DNN模型422可被改变一次。在一个示例中,第N改变的DNN模型426可通过改变第N-1改变的DNN模型来生成。
基本输出数据432、第一输出数据434至第N输出数据436在操作440中被组合或融合,并且最终结果数据450(例如,基本输出数据432、第一输出数据434至第N输出数据436的预定运算结果或统计结果)被确定。如上所述,集成方案可使用单个基本DNN模型(例如,基本DNN模型422)来实现,因此可减小将被用于实现集成方案的资源的量。
图5是示出根据一个或多个实施例的使用DNN模型的数据处理方法的示例的流程图。可以以如示出的顺序和方式执行图5中的操作,但是在不脱离描述的说明性示例的精神和范围的情况下可改变一些操作的顺序或省略一些操作。图5中示出的操作中的一个或多个操作可并行地或同时执行。图5的一个或多个框以及框的组合可由执行指定功能的基于专用硬件的计算机或者专用硬件和计算机和处理器指令的组合来实现。除了以下图5的描述之外,图1至图4的描述也适用于图5,并且通过引用包含于此。因此,在此可不重复以上描述。例如,图5的数据处理方法由数据处理设备执行。
参照图5,在操作510中,数据处理设备通过改变DNN模型(例如,提供的基本DNN模型)来获取第一改变的DNN模型。数据处理设备通过将量化的噪声值施加到基本DNN模型的至少一个连接权重来生成第一改变的DNN模型。
在操作520中,数据处理设备通过将输入数据输入到第一改变的DNN模型来获取第一改变的DNN模型的第一输出数据。
在操作530中,数据处理设备通过改变DNN模型(例如,基本DNN模型或第一改变的DNN模型)来获取第二改变的DNN模型。类似于操作510,数据处理设备通过将量化的噪声值施加到基本DNN模型的至少一个连接权重来生成第二改变的DNN模型。因为在操作510施加的噪声值和在操作530施加的噪声值彼此可不同和/或在操作510和操作530被施加噪声值的连接权重彼此不同,所以操作510的第一改变的DNN模型可不同于操作530的第二改变的DNN模型。
在操作540中,数据处理设备通过将输入数据输入到第二改变的DNN模型来获取第二改变的DNN模型的第二输出数据。输入数据可与在操作520中输入到第一改变的DNN模型的输入数据相同。
在操作550中,数据处理设备通过组合或融合第一输出数据和第二输出数据来确定最终结果数据。
尽管以上已经描述了基于两条输出数据确定结果数据的示例,但是示例包括DNN模型被改变三次或更多次(每次DNN模型被改变时输出数据被获取并且获取的输出数据被组合以确定结果数据)的数据处理方法示例。
图6示出根据一个或多个实施例的使用DNN模型的数据处理过程的另一示例。
在图6的示例中,改变的DNN模型可被用作初始DNN模型。参照图6,将被处理的输入数据610被传送到第一改变的DNN模型622。在第一阶段中,第一改变的DNN模型622通过改变基本DNN模型来生成。例如,第一改变的DNN模型622通过将量化的噪声值施加到基本DNN模型的至少一个连接权重来生成。输入数据610被输入到第一改变的DNN模型622,并且第一改变的DNN模型622输出第一输出数据632。
在第二阶段中,第二改变的DNN模型624通过改变基本DNN模型(或初始DNN模型)来生成。类似于第一改变的DNN模型622的生成,第二改变的DNN模型624通过将量化的噪声值施加到基本DNN模型(或初始DNN模型)的至少一个连接权重来生成。然而,施加到第一改变的DNN模型622的噪声值不同于施加到第二改变的DNN模型624的噪声值,或者被施加噪声值的连接权重彼此不同。输入数据610被输入到第二改变的DNN模型624,并且第二改变的DNN模型624输出第二输出数据634。在一个示例中,第二改变的DNN模型626可通过改变第一改变的DNN模型来生成。
在第N阶段中,第N改变的DNN模型626通过改变基本DNN(或初始DNN模型)模型来生成。类似地,输入数据610被输入到第N改变的DNN模型626,并且第N输出数据636从第N改变的DNN模型626被获取。在这个示例中,N是大于或等于3的自然数。
第一输出数据632、第二输出数据634至第N输出数据636在操作640中被组合或融合,并且结果数据650被确定。
图7是示出根据一个或多个实施例的示例训练设备700的框图。
参照图7,训练设备700可包括处理器710和存储装置720。在一个示例中,训练设备700还可将指令存储在例如存储装置720中,该指令在由处理器710执行时将处理器710配置为实现在此多个操作中的一个或多个或任何组合。处理器710和存储装置720可分别表示一个或多个处理器710和一个或多个存储装置720。
训练设备700可对应于计算装置。例如,作为非限制性示例,训练设备700可以是个人计算机(PC)、服务器、移动装置等,并且还可对应于通过执行神经网络来执行图像识别的自主车辆、机器人、智能电话、平板装置、增强现实(AR)装置、物联网(IoT)装置以及类似装置,或者是设置在通过执行神经网络来执行图像识别的自主车辆、机器人、智能电话、平板装置、增强现实(AR)装置、物联网(IoT)装置以及类似装置中的设备,但是本公开不限于此,并且训练设备700可对应于各种其它类型的装置。
存储装置720存储用于训练设备700的处理操作的数据或信息。例如,存储装置720可存储用于训练DNN模型的训练数据。此外,存储装置720可存储将由处理器710执行的指令。存储装置720包括非暂时性计算机可读存储介质(例如,随机存取存储器(RAM)、动态RAM(DRAM)、静态RAM(SRAM)、磁性硬盘、光盘、闪存、电可编程只读存储器(EPROM)或本领域中已知的其它类型的非暂时性计算机可读存储介质)。
处理器710控制训练设备700的整体操作,并且在训练设备700中执行功能和/或执行指令。处理器710执行基于训练数据训练DNN模型的训练处理以及例如与训练处理相关联的以上参照图2描述的操作中的至少一个。处理器710是用于执行控制训练设备700的操作的通用控制功能的硬件配置。例如,处理器710通常可通过执行存储在神经网络设备700的存储装置720中的指令来控制训练设备700。处理器710可由设置在神经网络设备100中的作为非限制性示例的中央处理器(CPU)、图形处理器(GPU)、应用处理器(AP)、神经处理单元(NPU)等实现。
处理器710可通过将噪声值施加到DNN模型的至少一个连接权重来改变DNN模型,并且基于改变的DNN模型和训练数据来执行训练处理。处理器710可通过将训练数据输入到改变的DNN模型来获取改变的DNN模型的输出数据,并且基于输出数据来更新DNN模型的参数。训练设备700可通过重复地执行改变DNN模型的操作、获取改变的DNN模型的输出数据的操作和基于输出数据更新DNN模型的参数的操作来训练DNN模型。根据示例,处理器710可通过将噪声施加到训练数据来生成包含噪声的训练数据,并且也可基于包含噪声的训练数据来执行以上的DNN模型的训练处理。
图8是示出根据一个或多个实施例的示例数据处理设备800的框图。
参照图8,数据处理设备800可包括处理器810和存储装置820。根据示例,数据处理设备800还可包括传感器830、输入装置840、输出装置850和通信装置860中的任何一个或任何组合。如在此所讨论的,对“处理器”的引用可对应于一个或多个处理器,并且对“存储器”的引用可对应于一个或多个存储器。
数据处理设备800可对应于计算装置。例如,作为非限制性示例,数据处理设备800可以是个人计算机(PC)、服务器、移动装置等,并且还可对应于通过执行神经网络来执行图像识别的自主车辆、机器人、智能电话、平板装置、增强现实(AR)装置、物联网(IoT)装置以及类似装置,或者是设置在通过执行神经网络来执行图像识别的自主车辆、机器人、智能电话、平板装置、增强现实(AR)装置、物联网(IoT)装置以及类似装置中的设备,但是本公开不限于此,并且数据处理设备800可对应于各种其它类型的装置。
存储装置820可存储用于数据处理设备800的处理操作的数据或信息。例如,存储装置820可存储用于数据处理目的的输入数据。此外,存储装置820可存储将由处理器810执行的指令。存储装置820可包括易失性存储器和非易失性存储器中的至少一个。非易失性存储器可包括:只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)、闪存、相变RAM(PRAM)、磁RAM(MRAM)、电阻式RAM(RRAM)、铁电RAM(FRAM)等。易失性存储器可包括:动态RAM(DRAM)、静态RAM(SRAM)、同步DRAM(SDRAM)等。此外,存储装置820可包括硬盘驱动器(HDD)、固态驱动器(SSD)、紧凑型闪存(CF)卡、安全数字(SD)卡、微型安全数字(Micro-SD)卡、迷你安全数字(Mini-SD)卡、极限数字(xD)卡和记忆棒中的至少一个。
处理器810可控制数据处理设备800的整体操作,并且执行用于在数据处理设备800中操作的功能和/或指令。在一个示例中,数据处理设备800可包括至少一个处理器810,并且处理器810可包括例如计算设备的图形处理器(GPU)和/或中央处理器(CPU)。处理器810执行使用DNN模型处理输入数据的处理以及例如与该处理相关联的以上参照图3至图6描述的操作中的至少一个。
在一个示例中,处理器810可通过将输入数据输入到DNN模型来获取DNN模型的第一输出数据。处理器810可改变DNN模型以生成改变的DNN模型。例如,处理器810可使用噪声模型来确定噪声值,并且可将确定的噪声值施加到DNN模型的至少一个连接权重以改变DNN模型的至少一个连接权重。通过以上处理,具有改变的特性的DNN模型可被生成。处理器810可通过将输入数据输入到改变的DNN模型来获取改变的DNN模型的第二输出数据,并且通过组合第一输出数据和第二输出数据来确定结果数据。
在另一示例中,处理器810可通过改变DNN模型来获取第一改变的DNN模型。例如,处理器810可通过将噪声值施加到DNN模型的至少一个连接权重来生成第一改变的DNN模型。处理器810可通过将输入数据输入到第一改变的DNN模型来获取第一改变的DNN模型的第一输出数据。类似地,处理器810可通过基于噪声值改变DNN模型的至少一个连接权重来生成第二改变的DNN模型。第二改变的DNN模型可不同于第一改变的DNN模型。处理器810可通过将输入数据输入到第二改变的DNN模型来获取第二改变的DNN模型的第二输出数据,并且通过组合第一输出数据和第二输出数据来确定结果数据。
在非限制性示例中,传感器830可包括至少一个传感器。作为非限制性示例,传感器830可包括图像传感器。在一个示例中,由传感器830获取的图像数据可被用作以上已经描述的输入数据。
输入装置840从用户接收用户输入。输入装置840从作为非限制性示例的用户的键盘、鼠标、触摸屏或麦克风检测输入,并且输入装置840包括被配置为传送检测到的输入的任何其它装置。
输出装置850可使用作为非限制性示例的视觉方案、听觉方案或触觉方案向用户提供数据处理设备800的输出。例如,作为非限制性示例,输出装置850可包括显示装置、扬声器装置、照明装置、触觉装置或被配置为向用户提供输出的任何其它装置。
通信装置860可经由有线或无线网络与外部装置通信。例如,通信装置860可使用有线通信方案或无线通信方案(例如,蓝牙通信、无线保真(Wi-Fi)通信、第三代(3G)通信或长期演进(LTE)通信)与外部装置通信。
在此描述的神经网络设备、训练设备700、对应的处理器和存储器、处理器710、存储装置720、处理器810、传感器830、输出装置850、存储装置820、输入装置840、通信装置860以及其它装置和其它组件被实现为硬件组件并且由硬件组件实现。可用于执行在本申请中描述的操作的硬件组件的示例在适当的情况下包括:控制器、传感器、生成器、驱动器、存储器、比较器、算术逻辑单元、加法器、减法器、乘法器、除法器、积分器和被配置为执行在本申请中描述的操作的任何其它电子组件。在其它示例中,执行在本申请中描述的操作的硬件组件中的一个或多个通过计算硬件(例如,通过一个或多个处理器或计算机)来实现。处理器或计算机可通过一个或多个处理元件(诸如,逻辑门阵列、控制器和算术逻辑单元、数字信号处理器、微型计算机、可编程逻辑控制器、现场可编程门阵列、可编程逻辑阵列、微处理器或被配置为以限定的方式响应并执行指令以实现期望的结果的任何其它装置或装置的组合)来实现。在一个示例中,处理器或计算机包括或连接到存储由处理器或计算机执行的指令或软件的一个或多个存储器。由处理器或计算机实现的硬件组件可执行用于执行在本申请中描述的操作的指令或软件(诸如,操作系统(OS)和在OS上运行的一个或多个软件应用)。硬件组件也可响应于指令或软件的执行来访问、操控、处理、创建和存储数据。为了简单起见,单数术语“处理器”或“计算机”可用在本申请中描述的示例的描述中,但是在其它示例中,多个处理器或计算机可被使用,或者处理器或计算机可包括多个处理元件或多种类型的处理元件或二者。例如,单个硬件组件或者两个或更多个硬件组件可通过单个处理器、或者两个或更多个处理器、或者处理器和控制器来实现。一个或多个硬件组件可通过一个或多个处理器、或者处理器和控制器来实现,并且一个或多个其它硬件组件可通过一个或多个其它处理器、或者另外的处理器和另外的控制器来实现。一个或多个处理器、或者处理器和控制器可实现单个硬件组件或者两个或更多个硬件组件。硬件组件可具有不同的处理配置中的任何一个或多个,不同的处理配置的示例包括:单个处理器、独立处理器、并行处理器、单指令单数据(SISD)多处理、单指令多数据(SIMD)多处理、多指令单数据(MISD)多处理以及多指令多数据(MIMD)多处理。
执行在本申请中描述的且在图1至图8中示出的操作的方法通过计算硬件(例如,通过一个或多个处理器或计算机)来执行,计算硬件被实现为如上所述地执行指令或软件,以执行在本申请中描述的由所述方法执行的操作。例如,单个操作或者两个或更多个操作可通过单个处理器、或者两个或更多个处理器、或者处理器和控制器来执行。一个或多个操作可通过一个或多个处理器、或者处理器和控制器来执行,并且一个或多个其它操作(例如,作为处理器实现的方法的相应操作)可通过一个或多个其它处理器、或者另外的处理器和另外的控制器来执行。一个或多个处理器、或者处理器和控制器可执行单个操作或者两个或更多个操作。
用于控制计算硬件(例如,一个或多个处理器或计算机)以实现硬件组件并执行如上所述的方法的指令或软件可被编写为计算机程序、代码段、指令或它们的任意组合,以单独地或共同地指示或配置一个或多个处理器或计算机如机器或专用计算机那样进行操作,以执行由如上所述的硬件组件和方法执行的操作。在一个示例中,指令或软件包括由一个或多个处理器或计算机直接执行的机器代码(诸如,由编译器产生的机器代码)。在另一示例中,指令或软件包括由一个或多个处理器或计算机使用解释器执行的高级代码。可基于附图中示出的框图和流程图以及说明书中的相应描述,使用任何编程语言编写指令或软件,附图中示出的框图和流程图以及说明书中的相应描述公开了用于执行由如上所述的硬件组件和方法执行的操作的算法。
用于控制计算硬件(例如,一个或多个处理器或计算机)以实现硬件组件并执行如上所述的方法的指令或软件以及任何相关联的数据、数据文件和数据结构可被记录、存储或固定在一个或多个非暂时性计算机可读存储介质中或者一个或多个非暂时性计算机可读存储介质上。非暂时性计算机可读存储介质的示例包括:只读存储器(ROM)、随机存取可编程只读存储器(PROM)、EEPROM、RAM、DRAM、SRAM、闪存、非易失性存储器、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、蓝光或光盘存储器、硬盘驱动器(HDD)、固态驱动器(SSD)、卡式存储器(诸如,多媒体卡或者微型卡(例如,安全数字(SD)或者极速数字(XD)))、磁带、软盘、磁光数据存储装置、光学数据存储装置、硬盘、固态盘、以及任何其它装置,其中,任何其它装置被配置为以非暂时性方式存储指令或软件以及任何相关联的数据、数据文件和数据结构并将指令或软件以及任何相关联的数据、数据文件和数据结构提供给一个或多个处理器或计算机,使得一个或多个处理器或计算机能够执行指令。在一个示例中,指令或软件以及任何相关联的数据、数据文件和数据结构分布在联网的计算机系统上,使得指令和软件以及任何相关联的数据、数据文件和数据结构通过一个或多个处理器或计算机以分布的方式被存储、访问和执行。
虽然本公开包括特定的示例,但是对于本领域普通技术人员来说将清楚的是,在理解本申请的公开之后将清楚,在不脱离权利要求及它们的等同物的精神和范围的情况下,可在这些示例中进行形式和细节上的各种改变。在此描述的示例将被认为仅是描述性的,而不是出于限制的目的。每个示例中的特征或方面的描述应被认为可适用于其它示例中的类似特征或方面。如果描述的技术以不同的顺序被执行,和/或如果描述的系统、架构、装置或电路中的组件以不同的方式被组合,和/或由其它组件或它们的等同物替换或补充,则可实现合适的结果。因此,公开的范围不是由具体实施方式限定,而是由权利要求及它们的等同物限定,并且在权利要求及它们的等同物的范围内的所有变化应被解释为包括在公开中。
Claims (28)
1.一种用于识别图像的方法,包括:
获得待识别的图像数据作为输入数据;
通过使用输入数据执行深度神经网络模型,从深度神经网络模型生成第一输出数据;
改变深度神经网络模型;
通过使用输入数据执行改变的深度神经网络模型,生成改变的深度神经网络模型的第二输出数据;和
通过组合第一输出数据和第二输出数据来确定指示图像识别结果的结果数据。
2.根据权利要求1所述的方法,其中,改变深度神经网络模型的步骤包括:改变深度神经网络模型的至少一个连接权重。
3.根据权利要求1所述的方法,其中,改变深度神经网络模型的步骤包括:
基于噪声模型确定噪声值;和
将确定的噪声值施加到深度神经网络模型的至少一个连接权重。
4.根据权利要求3所述的方法,其中,确定噪声值的步骤包括:使用高斯模型来确定噪声值。
5.根据权利要求3所述的方法,其中,噪声值是量化的噪声值。
6.根据权利要求1所述的方法,其中,深度神经网络模型是单个深度神经网络模型。
7.一种用于识别图像的方法,包括:
通过改变训练的初始深度神经网络模型来生成第一改变的深度神经网络模型;
通过使用作为输入数据的图像数据执行第一改变的深度神经网络模型,从第一改变的深度神经网络模型生成第一输出数据;
通过改变初始深度神经网络模型来生成第二改变的深度神经网络模型;
通过使用输入数据执行第二改变的深度神经网络模型,从第二改变的深度神经网络模型生成第二输出数据;和
通过组合第一输出数据和第二输出数据来确定指示图像识别结果的结果数据。
8.根据权利要求7所述的方法,其中,
生成第一改变的深度神经网络模型的步骤包括:改变初始深度神经网络模型的至少一个连接权重,
生成第二改变的深度神经网络模型的步骤包括:改变初始深度神经网络模型的至少一个连接权重,并且
第一改变的深度神经网络模型不同于第二改变的深度神经网络模型。
9.根据权利要求7所述的方法,还包括:基于组合初始深度神经网络模型的输出数据、第一输出数据和第二输出数据来确定结果数据。
10.一种用于图像识别的神经网络的训练方法,包括:
改变深度神经网络模型;
通过使用作为训练数据的图像数据执行改变的深度神经网络模型,从改变的深度神经网络模型生成输出数据;
基于生成的输出数据来更新深度神经网络模型的参数;和
通过重复地执行改变的步骤、生成的步骤和更新的步骤来训练深度神经网络模型。
11.根据权利要求10所述的训练方法,其中,改变深度神经网络模型的步骤包括:改变深度神经网络模型的至少一个连接权重。
12.根据权利要求10所述的训练方法,其中,改变深度神经网络模型的步骤包括:
基于噪声模型确定噪声值;和
将确定的噪声值施加到深度神经网络模型的至少一个连接权重。
13.根据权利要求12所述的训练方法,其中,噪声值是量化的噪声值。
14.根据权利要求10所述的训练方法,其中,生成输出数据的步骤包括:通过将包含噪声的训练数据输入到改变的深度神经网络模型来生成输出数据。
15.一种用于识别图像的设备,包括:
一个或多个处理器,被配置为:
获得待识别的图像数据作为输入数据;
通过使用输入数据执行深度神经网络模型来生成深度神经网络模型的第一输出数据;
改变深度神经网络模型;
通过使用输入数据执行改变的深度神经网络模型,从改变的深度神经网络模型生成第二输出数据;和
通过组合第一输出数据和第二输出数据来确定指示图像识别结果的结果数据。
16.根据权利要求15所述的设备,其中,处理器还被配置为:改变深度神经网络模型的至少一个连接权重。
17.根据权利要求16所述的设备,其中,处理器还被配置为:基于噪声模型确定噪声值,并且将确定的噪声值施加到深度神经网络模型的所述至少一个连接权重,以改变深度神经网络模型的所述至少一个连接权重。
18.根据权利要求15所述的设备,还包括:存储器,存储指令,所述指令在被所述一个或多个处理器执行时,将所述一个或多个处理器配置为:执行生成第一输出数据的步骤、改变深度神经网络模型的步骤、生成第二输出数据的步骤以及确定结果数据的步骤。
19.根据权利要求15所述的设备,还包括:图像捕获装置,被配置为捕获输入数据。
20.一种用于识别图像的设备,包括:
一个或多个处理器,被配置为:
通过改变训练的初始深度神经网络模型来生成第一改变的深度神经网络模型;
通过使用作为输入数据的图像数据执行第一改变的深度神经网络模型,生成第一改变的深度神经网络模型的第一输出数据;
通过改变初始深度神经网络模型来生成第二改变的深度神经网络模型;
通过使用输入数据执行第二改变的深度神经网络模型,从第二改变的深度神经网络模型生成第二输出数据;和
通过组合第一输出数据和第二输出数据来确定指示图像识别结果的结果数据。
21.根据权利要求20所述的设备,其中,
处理器还被配置为:
通过改变深度神经网络模型的至少一个连接权值来生成第一改变的深度神经网络模型;和
通过改变深度神经网络模型的至少一个连接权重来生成第二改变的深度神经网络模型,并且
其中,第一改变的深度神经网络模型不同于第二改变的深度神经网络模型。
22.根据权利要求20所述的设备,还包括:存储器,存储指令,所述指令在被所述一个或多个处理器执行时,将所述一个或多个处理器配置为:执行生成第一改变的深度神经网络模型的步骤、生成第一输出数据的步骤、生成第二改变的深度神经网络模型的步骤、生成第二输出数据的步骤以及确定结果数据的步骤。
23.根据权利要求20所述的设备,还包括:图像捕获装置,被配置为捕获输入数据。
24.一种用于识别图像的方法,包括:
获得待识别的图像数据作为输入数据;
用输入数据执行初始神经网络模型;
通过将量化的第一噪声值施加到初始神经网络的连接权重来执行第一改变的神经网络模型;
将输入数据输入到第一改变的神经网络模型;
从第一改变的神经网络模型生成第一输出数据;
将量化的第二噪声值施加到第一改变的神经网络模型以获得第二改变的神经网络模型;
将输入数据输入到第二改变的神经网络模型;
从第二改变的神经网络模型生成第二输出数据;
基于第一输出数据和第二输出数据生成融合的输出数据;和
从融合的输出数据生成指示图像识别结果的最终输出结果。
25.根据权利要求24所述的方法,其中,神经网络模型是深度神经网络模型。
26.根据权利要求24所述的方法,其中,第一改变的神经网络模型不同于第二改变的神经网络模型。
27.根据权利要求24所述的方法,其中第一噪声值不同于第二噪声值。
28.一种存储指令的非暂时性计算机可读存储介质,所述指令在被处理器执行时,使处理器执行权利要求1至14和权利要求24至27中的任意一项所述的方法。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020190147821A KR20210060146A (ko) | 2019-11-18 | 2019-11-18 | 딥 뉴럴 네트워크 모델을 이용한 데이터 처리 방법 및 장치, 딥 뉴럴 네트워크 모델을 학습시키는 학습 방법 및 장치 |
KR10-2019-0147821 | 2019-11-18 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112819151A true CN112819151A (zh) | 2021-05-18 |
Family
ID=73037881
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010642022.3A Pending CN112819151A (zh) | 2019-11-18 | 2020-07-06 | 用于识别图像的方法和设备以及训练方法 |
Country Status (4)
Country | Link |
---|---|
US (1) | US11475312B2 (zh) |
EP (1) | EP3822864A1 (zh) |
KR (1) | KR20210060146A (zh) |
CN (1) | CN112819151A (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20230018310A (ko) | 2021-07-29 | 2023-02-07 | 국방과학연구소 | 심층신경망의 성능하락을 유발시키는 객체검출용 적대적공격 방법 및 그 시스템 |
WO2024034695A1 (ko) * | 2022-08-08 | 2024-02-15 | 엘지전자 주식회사 | 무선 통신 시스템에서 송수신 신호를 생성하기 위한 장치 및 방법 |
Family Cites Families (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100640264B1 (ko) | 2002-03-02 | 2007-02-28 | 김용대 | 앙상블 모형을 이용한 데이터 마이닝 모형 구축 장치 및그 방법 |
US7565369B2 (en) | 2004-05-28 | 2009-07-21 | International Business Machines Corporation | System and method for mining time-changing data streams |
JP2009282686A (ja) | 2008-05-21 | 2009-12-03 | Toshiba Corp | 分類モデル学習装置および分類モデル学習方法 |
BR112017003893A8 (pt) | 2014-09-12 | 2017-12-26 | Microsoft Corp | Rede dnn aluno aprendiz via distribuição de saída |
US10540957B2 (en) | 2014-12-15 | 2020-01-21 | Baidu Usa Llc | Systems and methods for speech transcription |
US9805305B2 (en) | 2015-08-07 | 2017-10-31 | Yahoo Holdings, Inc. | Boosted deep convolutional neural networks (CNNs) |
US9892344B1 (en) * | 2015-11-30 | 2018-02-13 | A9.Com, Inc. | Activation layers for deep learning networks |
US20180018757A1 (en) | 2016-07-13 | 2018-01-18 | Kenji Suzuki | Transforming projection data in tomography by means of machine learning |
US10264009B2 (en) | 2016-07-26 | 2019-04-16 | Booz Allen Hamilton Inc. | Automated machine learning scheme for software exploit prediction |
US11531852B2 (en) | 2016-11-28 | 2022-12-20 | D-Wave Systems Inc. | Machine learning systems and methods for training with noisy labels |
US11010595B2 (en) * | 2017-03-23 | 2021-05-18 | Samsung Electronics Co., Ltd. | Facial verification method and apparatus |
US10546237B2 (en) * | 2017-03-30 | 2020-01-28 | Atomwise Inc. | Systems and methods for correcting error in a first classifier by evaluating classifier output in parallel |
KR101998950B1 (ko) | 2017-06-27 | 2019-07-10 | 한양대학교 산학협력단 | 인공 잡음에 강인한 음성 대역폭 확장을 위한 심화 신경망 앙상블 |
KR101916348B1 (ko) | 2017-08-04 | 2018-11-08 | 주식회사 수아랩 | 인공 신경망의 훈련 방법 |
KR101828503B1 (ko) | 2017-08-23 | 2018-03-29 | 주식회사 에이젠글로벌 | 앙상블 모델 생성 장치 및 방법 |
US11461628B2 (en) | 2017-11-03 | 2022-10-04 | Samsung Electronics Co., Ltd. | Method for optimizing neural networks |
US20190197395A1 (en) | 2017-12-21 | 2019-06-27 | Fujitsu Limited | Model ensemble generation |
US11972347B2 (en) * | 2018-04-22 | 2024-04-30 | Technion Research & Development Foundation Limited | System and method for emulating quantization noise for a neural network |
KR102002732B1 (ko) | 2018-09-20 | 2019-07-23 | 건국대학교 산학협력단 | 앙상블 모델을 이용한 심층 신경망 기반 데이터 처리 방법 및 장치 |
US11568211B2 (en) * | 2018-12-27 | 2023-01-31 | Intel Corporation | Defending neural networks by randomizing model weights |
US11657162B2 (en) | 2019-03-22 | 2023-05-23 | Intel Corporation | Adversarial training of neural networks using information about activation path differentials |
-
2019
- 2019-11-18 KR KR1020190147821A patent/KR20210060146A/ko unknown
-
2020
- 2020-06-16 US US16/902,299 patent/US11475312B2/en active Active
- 2020-07-06 CN CN202010642022.3A patent/CN112819151A/zh active Pending
- 2020-10-29 EP EP20204519.1A patent/EP3822864A1/en active Pending
Also Published As
Publication number | Publication date |
---|---|
US20210150367A1 (en) | 2021-05-20 |
KR20210060146A (ko) | 2021-05-26 |
US11475312B2 (en) | 2022-10-18 |
EP3822864A1 (en) | 2021-05-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11941719B2 (en) | Learning robotic tasks using one or more neural networks | |
US11836610B2 (en) | Concurrent training of functional subnetworks of a neural network | |
CN109697510B (zh) | 具有神经网络的方法和装置 | |
WO2018180263A1 (ja) | 情報処理装置、情報処理方法、及びコンピュータ可読記憶媒体 | |
US20210081798A1 (en) | Neural network method and apparatus | |
CN110689109A (zh) | 神经网络方法和装置 | |
CN112002309A (zh) | 模型训练方法和设备 | |
US20220198270A1 (en) | Neural network model training method and apparatus | |
US11681913B2 (en) | Method and system with neural network model updating | |
CN112990427A (zh) | 域自适应的神经网络实现的装置和方法 | |
CN111340177A (zh) | 基于嵌套位表示的神经网络处理方法和设备 | |
CN112668381A (zh) | 用于识别图像的方法和设备 | |
CN113065632A (zh) | 验证用于图像识别的神经网络的训练的方法和设备 | |
CN112819151A (zh) | 用于识别图像的方法和设备以及训练方法 | |
CN110674919A (zh) | 用于构建图像模型的方法和设备 | |
US20240086694A1 (en) | Neuromorphic method and apparatus with multi-bit neuromorphic operation | |
EP3855388A1 (en) | Image processing device and operation method thereof | |
CN113408693A (zh) | 识别图像的方法和设备 | |
CN116227545A (zh) | 用于神经网络的分布式训练的方法和设备 | |
US20220004904A1 (en) | Deepfake detection models utilizing subject-specific libraries | |
EP3614314A1 (en) | Method and apparatus for generating chemical structure using neural network | |
KR20210000181A (ko) | 게임 데이터 처리 방법 | |
KR102636155B1 (ko) | 콘텐츠 코드를 이용한 이미지 생성 방법 및 시스템 | |
CN111465946B (zh) | 使用分层表示进行神经网络体系结构搜索 | |
JP7405148B2 (ja) | 情報処理装置、学習方法、及び、プログラム |
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 |