首页 / 专利库 / 人工智能 / 机器学习 / 模式识别 / 用于模式识别的方法、系统及装置

用于模式识别的方法、系统及装置

阅读:253发布:2020-05-08

专利汇可以提供用于模式识别的方法、系统及装置专利检索,专利查询,专利分析的服务。并且可以提供一种用于 模式识别 的方法,包括:接收数据;用已训练的 卷积神经网络 来处理所述数据以便识别所述数据中的模式,其中所述卷积神经网络至少包括: 输入层 、至少一个卷积层、至少一个批量归一化层、至少一个激活功能层和 输出层 ;其中,利用已训练的卷积神经网络来处理所述数据以便识别所述数据中的模式包括:处理批量归一化层输出的值,使得已处理的值的直方图比所述值的直方图更加平坦,并将已处理的值输出给激活功能层。还提供了用于模式识别的相应装置和系统,以及计算机可读介质、用于实现卷积神经网络的方法和卷积神经网络。,下面是用于模式识别的方法、系统及装置专利的具体信息内容。

1.一种用于模式识别的方法,包括:
接收数据;
利用已训练的卷积神经网络处理所述数据以便识别所述数据中的模式,其中,所述卷积神经网络至少包括:输入层、至少一个卷积层、至少一个批量归一化层、至少一个激活功能层和输出层;以及
其中,用已训练的卷积神经网络处理所述数据以便识别所述数据中的模式包括:
处理由批量归一化层输出的值,使得已处理的值的直方图比所述值的直方图更平坦,以及
将已处理的值输出给激活功能层。
2.根据权利要求1所述的方法,其中处理由批量归一化层输出的值使得所述已处理的值的所述直方图比所述值的直方图平坦,还包括:
处理由批量归一化层输出的值,使得所述已处理的值的直方图均衡。
3.根据权利要求2所述的方法,其中处理由批量归一化层输出的值使得所述处理值的直方图均衡,还包括:
对由所述批量归一化层输出的值执行快速直方图均衡操作,使得所述已处理的值的直方图均衡。
4.根据前述权利要求中任一项所述的方法,还包括:
从数据中提取模式提议;
其中,利用已训练的卷积神经网络来处理所述数据以便识别所述数据中的模式还包括:
利用已训练的卷积神经网络来处理所述模式,以从所述模式提议中识别模式。
5.根据前述权利要求中任一项所述的方法,还包括:
接收具有相应标签的训练数据集;
利用所述具有相应标签的训练数据集来训练卷积神经网络,以获得已训练的卷积神经网络。
6.根据前述权利要求中任一项所述的方法,其中,所述激活功能层是整流线性单元或其变体的层。
7.根据前述权利要求中任一项所述的方法,
其中,所述卷积神经网络还包括直方图规范层,所述直方图规范层被设置在至少一个批量归一化层与至少一个激活功能层之间;以及
其中,所述直方图规范层执行以下步骤:处理由批量归一化层输出的值,以使得已处理的值的直方图比所述值的直方图更平坦,以及将已处理的值输出给激活功能层。
8.一种用于模式识别的装置,其包括:
至少一个处理器,
至少一个存储器,包括计算机程序代码;
所述至少一个存储器和所述计算机程序代码被配置为与所述至少一个处理器使得所述装置:
接收数据;
利用已训练的卷积神经网络处理所述数据以便识别所述数据中的模式,其中,所述卷积神经网络至少包括:输入层、至少一个卷积层、至少一个批量归一化层、至少一个激活功能层、输出层以及设置在至少一个批量归一化层与至少一个激活功能层之间的直方图规范层;以及
其中,所述直方图规范层被配置为接收由所述批量归一化层输出的值,处理所述值,使得已处理的值的直方图比所述值的直方图更平坦,并且将已处理的值输出给所述激活功能层。
9.根据权利要求8所述的装置,其中所述直方图规范层还被配置以对由所述批量归一化层输出的所述值执行直方图均衡化以获得所述已处理的值。
10.根据权利要求9所述的设备,其中所述直方图规范层还被配置为对由所述批量归一化层输出的所述值执行快速直方图均衡操作,以获得所述已处理的值。
11.根据权利要求8-10中任一项所述的装置,其中,所述至少一个存储器和所述计算机程序代码还被配置为与所述至少一个处理器一起使得所述装置:
从数据中提取模式提议;
其中,利用已训练的卷积神经网络处理所述数据以便识别所述数据中的模式包括:
利用已训练的卷积神经网络处理所述模式提议以从所述模式提议中识别模式。
12.根据权利要求8-11中任一项所述的装置,其中,所述至少一个存储器和所述计算机程序代码还被配置为与所述至少一个处理器一起使得所述装置:
接收具有相应标签的训练数据集;
使用具有相应标签的训练数据集来训练所述卷积神经网络,以获得已训练的卷积神经网络。
13.根据权利要求8-12中任一项所述的装置,其中,所述激活功能层是整流线性单元或其变体的层。
14.一种用于模式识别的系统,包括:
接收单元,被配置为接收数据;以及
卷积神经网络,被配置为在被训练之后处理所述数据,以便识别所述数据中的模式,其中,所述卷积神经网络至少包括:输入层、至少一个卷积层、至少一个批量归一化层、至少一个激活功能层、输出层以及设置在至少一个批量归一化层与至少一个激活功能层之间的直方图规范层;以及
其中,所述直方图规范层被配置为接收由所述批量归一化层输出的值,处理所述值,使得已处理的值的直方图比所述值的直方图更平坦,并且将已处理的值输出给所述激活功能层。
15.根据权利要求14所述的系统,其中所述直方图规范层被进一步配置为对由所述批量归一化层输出的所述值执行直方图均衡化以获得所述已处理的值。
16.根据权利要求14-15中任一项所述的系统,还包括:
模式提议提取单元,被配置为从数据中提取模式提议;
其中,所述已训练的卷积神经网络被配置为处理所述模式提议以从所述模式提议识别模式。
17.根据权利要求14-16中的任一项所述的系统,其中,所述激活功能层是整流线性单元层或其变体的层。
18.一种用指令编码的计算机可读介质,所述指令当由计算机执行时,使得所述指令根据权利要求1-7中任一项所述的方法的执行。
19.一种用于实现卷积神经网络的方法,包括:
提供卷积神经网络,所述卷积神经网络至少包括:输入层、至少一个卷积层、至少一个批量归一化层、至少一个激活功能层和输出层;以及
在至少一个批量归一化层和至少一个激活功能层之间添加直方图规范层,其中,所述直方图规范层被配置为接收由所述批量归一化层输出的值,处理所述值,使得已处理的值的直方图比所述值的直方图更平坦,并且将已处理的值输出给所述激活功能层。
20.根据权利要求19所述的方法,其中,所述直方图规范层被配置为对由所述批量归一化层输出的所述值执行直方图均衡化,以获得所述已处理的值。
21.根据权利要求20所述的方法,其中所述直方图规范层被配置为对由所述批量归一化层输出的所述值执行快速直方图均衡化操作以获得所述已处理的值。
22.一种卷积神经网络,至少包括:
输入层,
至少一个卷积层,
至少一个批量归一化层,
至少一个激活功能层,
输出层,以及
直方图规范层,其被设置在至少一个批量归一化层和至少一个激活功能层之间,其中,所述直方图规范层被配置为接收由所述批量归一化层输出的值,处理所述值,使得已处理的值的直方图比所述值的直方图更平坦,并且将已处理的值输出到所述激活功能层。
23.根据权利要求22所述的卷积神经网络,其中,所述直方图规范层被进一步配置成对由所述批量归一化层输出的所述值执行直方图均衡化,以获得所述已处理的值。
24.根据权利要求23所述的卷积神经网络,其中所述直方图规范层被进一步配置成对由所述批量归一化层输出的所述值执行快速直方图均衡化操作以获得所述已处理的值。

说明书全文

用于模式识别的方法、系统及装置

技术领域

[0001] 本发明实施例通常涉及模式识别领域,更具体地,涉及用于模式识别的方法、系统和装置。

背景技术

[0002] 作为模式识别的一种特定形式,对象检测是一种经典的计算机视觉任务。近年来,随着大数据高性能计算设备的发展,利用深度卷积神经网络(CNN)进行的对象检测已经取得了巨大的成功。基于CNN的对象检测可以应用于各种领域。例如,在无人驾驶的汽车中,基于CNN的对象检测系统可以实时处理由安装在汽车上的摄像机捕获的图像数据,以检测出现在汽车前面的各种对象,并且当在汽车附近检测到诸如车辆、行人的物体时,发出警告或者甚至自动停止汽车。
[0003] 通常,用于对象检测的CNN主要由几组三个基本层组成:卷积层、激活功能层和池化层。整流线性单元(ReLU)被广泛用作激活功能。为了减少内部协变量移位的影响,还提出了批量归一化。批量归一化层被添加在卷积层之后激活层之前。
[0004] 内部协变量偏移是指由于训练期间网络参数的变化而导致的网络激活的分布的变化。为了解决内部协变量偏移,批量归一化层采取固定层输入的均值和方差的归一化步骤(参见S.Ioffe和C.Szegedy,“Batch Normalization:Accelerating Deep Network Training by Reducing Internal Covariate Shift(批量归一化:通过减少内部协变量偏移来加速深度网络训练)”,Proc.International Conf.Machine Learning,2015年,其全部内容通过引用并入本文)。基于批量归一化,深度CNN可以轻松收敛并且进一步提高性能。因为批量归一化层在ReLU层之前,所以ReLU层的大部分输入接近零。
[0005] 与饱和非线性激活(例如sigmoid函数)相比,ReLU可以极大地提高训练速度。因此,ReLU已经成为深度CNN的最受欢迎的激活函数。ReLU仅在输入大于零时才激活输入。否则,如果ReLU的输入等于或小于零,则激活层的输出不被激活(即,等于零)。由于ReLU的大部分输入接近零,所以ReLU的输出对输入的抖动敏感。因此,学习的CNN模型可能对抖动敏感。
[0006] 基于ReLU,最近还提出了许多改进建议。为了解决ReLU的梯度消失问题,提出了泄漏ReLU(leaky ReLU)(参见A.L.Maas,A.Y.Hannun,A.Y.Ng,“Rectifier Nonlinearities Improve Neural Network Acoustic Models(整流器非线性改进神经网络声学模型)”,Proc.International Conf.Machine Learning,2013年,其通过引用以其整体并入本文)和PReLU(参见K.He,X.Zhang,S.Ren和J.Sun,“Delving Deep into Rectifiers:Surpassing Human-Level Performance on ImageNet Classification(深入研究整流器:在图像网分类上超越人类平的性能)”,Proc.IEEE International Conf.Computer Vision,2015年,通过引用将其全文并入本文),如果输入为负的情况下,则其给出小的梯度。尽管LReLU和PReLU能够解决梯度消失的问题,但是如果输入接近零,它们仍然对输入的抖动敏感。最近,提出了ELU(参见D.Clevert、T.Unterthiner和S.Hochreiter,“Fast and Accurate Deep Network Learning by Exponential Linear Units(ELUs)(通过指数线性单元(ELU)的快速和准确的深度网络学习)”,Proc.International Conf.Learning Representations,2016年,通过引用将其全文并入本文),如果输入是负的,则其给出指数映射。与LReLU和PReLU相比,ELU更平滑。但是仍然不能完全解决输出对输入的抖动敏感的问题。

发明内容

[0007] 因此,提供了一种用于模式识别的方法、装置和系统,以及一种计算机可读介质、一种用于实现卷积神经网络的方法和一种卷积神经网络。
[0008] 在一个示例实施例中,描述了一种用于模式识别的方法。该方法包括:接收数据;以及利用已训练的卷积神经网络来处理所述数据以便识别所述数据中的模式,其中所述卷积神经网络至少包括:输入层、至少一个卷积层、至少一个批量归一化层、至少一个激活功能层和输出层;其中,利用已训练的卷积神经网络来处理所述数据以便识别所述数据中的模式包括:对批量归一化层输出的值进行处理,使得已处理的值的直方图比该值的直方图更加平坦,并将已处理的值输出给激活功能层。
[0009] 在另一示例实施例中,描述了一种用于模式识别的装置。该装置包括:至少一个处理器、至少一个包括计算机程序代码的存储器;所述至少一个处理器和所述计算机程序代码被配置为与所述至少一个处理器一起使得所述装置:接收数据;利用已训练的卷积神经网络处理所述数据,以便识别所述数据中的模式,其中所述卷积神经网络至少包括:输入层、至少一个卷积层、至少一个批量归一化层、至少一个激活函数层、输出层以及设置在至少一个批量归一化层与至少一个激活函数层之间的直方图规范层;其中,所述直方图规范层被配置为接收由所述批量归一化层输出的值,对这些值进行处理,使得已处理的值的直方图比所述值的直方图更平坦,并且将已处理的值输出到所述激活功能层。
[0010] 在另一示例实施例中,一种用于模式识别的系统,包括:接收单元,被配置为接收数据;以及卷积神经网络,被配置为在被训练之后处理所述数据,以便识别所述数据中的模式,其中,所述卷积神经网络至少包括:输入层、至少一个卷积层、至少一个批量归一化层、至少一个激活功能层、输出层以及设置在至少一个批量归一化层与至少一个激活功能层之间的直方图规范层;并且其中,所述直方图规范层被配置为接收由所述批量归一化层输出的值,处理所述值,使得已处理的值的直方图比所述值的直方图更平坦,并且将已处理的值输出给所述激活功能层。
[0011] 在另一示例实施例中,一种编码有指令的计算机可读介质,所述指令在由计算机执行时,导致执行根据本发明的任何实施例的方法。
[0012] 在另一示例实施例中,一种用于实现卷积神经网络的方法,包括:提供卷积神经网络,所述卷积神经网络至少包括:输入层、至少一个卷积层、至少一个批量归一化层、至少一个激活功能层和输出层;以及在至少一个批量归一化层和至少一个激活功能层之间添加直方图规范层,其中,所述直方图规范层被配置为接收由所述批量归一化层输出的值,处理所述值,使得已处理的值的直方图比所述值的直方图更平坦,并且将已处理的值输出到所述激活功能层。
[0013] 在另一示例实施例中,一种卷积神经网络,至少包括:输入层、至少一个卷积层、至少一个批量归一化层,至少一个激活功能层、输出层和直方图规范层,所述直方图规范层设置在至少一个批量归一化层和至少一个激活功能层之间,其中,所述直方图规范层被配置为接收由所述批量归一化层输出的值,处理所述值,使得已处理的值的直方图比所述值的直方图更平坦,并且将已处理的值输出到所述激活功能层。附图说明
[0014] 已经概括地描述了本发明,现在将参考附图,这些附图不必按比例绘制,并且其中:
[0015] 图1示出了ReLU层的输入分布的示例;
[0016] 图2示出了ReLU的图示;
[0017] 图3示出了根据本发明的示例性实施例的用于模式识别的方法的流程图
[0018] 图4示出了根据本发明的示例性实施例的卷积神经网络的示例性结构;以及[0019] 图5示出了根据本发明的示例实施例的用于模式识别的装置的示意图。

具体实施方式

[0020] 为了使学习的CNN模型对于输入的抖动更强健,本发明的实施例提出将直方图规范层(histogram specification layer)添加到CNN架构中。具体而言,直方图规范层被添加在激活功能层(例如,ReLU层)之前和批量归一化层之后。最后,包括直方图规范层的CNN模型可以用于模式识别,诸如对象检测。
[0021] 参考图1,示出了ReLU层的输入分布的实例。可以看出,该分布类似于高斯分布,并且ReLU层的大部分输入接近零。
[0022] 参考图2,示出了ReLU的图示。ReLU可表达如下:
[0023]
[0024] 其中,x和y分别是ReLU的输入和输出。即,ReLU仅在输入大于零时才激活输入。
[0025] 事实上,信号通常包含噪声。因此,ReLU的输入可以被表达为两部分:纯输入和噪声(或抖动)。即,x=x0+xn。然后,ReLU可以被重新写成:
[0026]
[0027] 其中x0和xn分别是纯输入和噪声。当纯输入(即,,x0)接近零时,输出(即,y)对抖动n 0 n 0(即,x)敏感。例如,纯输入(即,x)大于零,而抖动(即,x)小于-x ,输出(即,y)被错误地去激活(即,零)。然而,它应该已经被激活。
[0028] 因为抖动通常很小,所以如果原始输入远离零,则输出将对抖动不敏感。即,如果ReLU层的输入更加分散并且远离零,,则学习的CNN模型对于抖动将更强健。
[0029] 在一个实施例中,为了使ReLU层的输入更加分散并且远离零,可以在批量归一化层之后并且在ReLU层之前添加直方图规范层。直方图规范层可以处理从批量规范化层接收的值,使得已处理的值的直方图比该值的直方图更平坦,并将已处理的值输出到ReLU层。
[0030] 在另一实施例中,所述直方图规范层可为直方图均衡化层,其对从所述批量归一化层接收的值执行直方图均衡化。作为特定实例,直方图均衡化的特定步骤可总结如下:
[0031] (1)对于批量归一化层的输出通道,获得最小值xmin和最大值xmax。
[0032] 通过
[0033]
[0034] 将输出(即,x)的值变换为[0,L-1]离散值,其中L是y的所有可能的离散整数值的指定总数,round()舍入到最接近的整数。
[0035] (2)如下计算在x=xk的情况下对应于y=k的输出的出现概率:
[0036]
[0037] 其中,xk∈[(k-0.5)×(xmax-xmin)/(L-1)+xmin,(k+0.5)×(xmax-xmin)/(L-1)+xmin),nk为输出的数量,其中y=k对应于x=xk,n为批量归一化层的所有输出的数量。
[0038] (3)根据px(xk)下式计算累积概率分布pxcd(xk)为:
[0039]
[0040] (4)将原始值(即,x)映射到新值(即,z),如下
[0041]
[0042] (5)输出所述新值(即,z)作为所述ReLU的输入。
[0043] 在反向传播中,直方图均衡层中的输入梯度可计算为
[0044]
[0045] 现在参考图3,示出了根据本发明实施例的用于模式识别的方法的流程图。如图所示,该方法包括以下步骤:
[0046] 在步骤301中,接收数据。该数据可以是要对其执行模式识别的任何数据。例如,数据可以是图像数据或视频数据,可以对该图像数据或视频数据执行对象检测以便找到图像或视频中的对象或对图像或视频中的对象分类。这样的图像数据可以由照相机实时捕获或者以其他方式获得,诸如从存储器或诸如因特网的网络获得。对于另一示例,数据可以是音频数据,可以对该音频数据执行语音模式检测以用于语音识别。这样的音频数据可以由麦克实时捕获或者以其他方式获得,诸如从存储器或诸如因特网的网络获得。
[0047] 在步骤302中,利用已训练的卷积神经网络来处理数据,以便识别数据中的模式,其中卷积神经网络至少包括:输入层、至少一个卷积层、至少一个批量归一化层、至少一个激活功能层、和输出层,其中,利用已训练的卷积神经网络来处理所述数据以便识别所述数据中的模式包括:
[0048] 处理由批量归一化层输出的值,使得已处理的值的直方图比所述值的直方图更平坦,以及
[0049] 将已处理的值输出到激活功能层。
[0050] 在一个实施例中,可以由直方图规范层执行对批量归一化层输出的值进行处理的操作,使得已处理的值的直方图比所述值的直方图更平坦,并且将已处理的值输出到激活功能层可以由设置在至少一个批量归一化层与至少一个激活功能层之间的直方图规范层来执行,其中直方图规范层可以被配置为接收由批量归一化层输出的值,处理所述值从而使得已处理的值的直方图比所述值的直方图更平坦,以及将已处理的值输出到激活功能层。
[0051] 因此,根据一个实施例的卷积神经网络可以通过在现有的卷积神经网络或将来要开发的卷积神经网络的至少一个批量归一化层和至少一个激活功能层之间添加直方图规范层来形成,所述现有的卷积神经网络或将来要开发的卷积神经网络包括至少一个批量归一化层和至少一个激活功能层。
[0052] 参照图4,示出了根据本发明的示例性实施例的卷积神经网络的示例性结构。如图所示,卷积神经网络包括输入、输出和S个阶段(S可以是大于或等于1的任何整数),第一S-1阶段中的每一个包括卷积层Conv_1、Conv_2…、批量归一化层BN_1、BN_2…、直方图规范层HS_1、HS_2…和激活功能层AF_1、AF_2…,直方图规范层HS_1、HS_2…被布置在批量归一化层BN_1、BN_2…与激活功能层AF_1、AF_2…之间,并且最后一个阶段包括卷积层Conv_S和批量归一化层BN_S。作为特定实例,直方图规范层HS_1、HS_2…可为直方图均衡层,并且激活功能层AF_1、AF_2…可为整流线性单元(Rectified Linear Unit,LeLU)层或其变体。应当注意,如图4所示和如上所述的卷积神经网络的结构仅是示例,而不是对本发明的限制。例如,根据一些实施例的卷积神经网络还可以进一步包括其他层,诸如至少一个池化层、至少一个完全连接层等。
[0053] 在一个示例实施例中,处理由批量归一化层输出的值,使得已处理的值的直方图比所述值的直方图更平坦包括:处理由批量归一化层输出的值,使得已处理的值的直方图均衡。也就是说,设置在批量归一化层与功能激活层之间的直方图规范化层可以具体为直方图均衡化层,其被配置为对批量归一化层输出的值执行直方图均衡化以获得所述已处理的值。具体地,直方图均衡化层可以通过上述步骤对批量归一化层输出的值执行直方图均衡化。
[0054] 在另一示例实施例中,处理由批量归一化层输出的值以使得已处理的值的直方图均衡,包括:对批量归一化层输出的值执行快速直方图均衡化操作,从而使得已处理的值的直方图均衡。这样的快速直方图均衡操作可用于加速直方图规范层的计算速度且降低卷积神经网络的计算成本。这样的快速直方图均衡化操作可以使用各种方法执行,例如在Z.Wang和J.Tao的“A Fast Implementation of Adaptive Histogram Equalization(自适应直方图均衡的快速实现)”(ICSP,2006)和Q.Wang、L.Chen和D.Shen的“Fast Histogram Equalization for Medical Image Enhancement(用于医学图像增强的快速直方图均衡)”(IEEE EMBS,2008)中所述的方法,其全部内容通过引用并入本文。
[0055] 在示例实施例中,激活功能层可以是整流线性单元(ReLU)层或其变体的层。ReLU的变体可以是例如上述的泄漏ReLU、PReLU和ELU。
[0056] 在一个示例实施例中,该方法还可以进一步包括从数据提取模式提议的步骤;其中,利用已训练的卷积神经网络来处理数据以便识别数据中的模式包括:用已训练的卷积神经网络处理所述模式提议以从所述模式提议中识别模式。即,在图像数据的情况下,首先,可从数据中提取对象提议,然后,对于每一对象提议,可将其发送到已训练的卷积神经网络以从对象提议中识别对象。可以使用诸如区域提议网络(RPN)等各种方法可用于从数据中提取模式提议。在提取了多个对象提议并且识别出可能彼此重叠的多个对象的情况下,可以使用诸如非最大抑制(NMS)之类的方法来结合高度重叠的对象。
[0057] 可以通过训练的卷积神经网络来获得已训练的卷积神经网络。因此,在一个示例实施例中,该方法还可以包括以下步骤:
[0058] 在步骤303中,接收带有相应标签的一组训练数据集;以及
[0059] 在步骤304中,使用带有相应标签的训练数据集来训练卷积神经网络,以获得已训练的卷积神经网络。
[0060] 根据本发明实施例的用于模式识别的方法利用直方图均衡化来使得CNN的ReLU的输入更加分散,从而导致ReLU的输出对输入的抖动不太敏感,从而有助于提高已训练的CNN模型的强健性,然后提高诸如对象检测的模式识别的性能。
[0061] 虽然已经参考图3描述了根据本发明的一些实施例的用于模式识别的方法的流程图,但是应当注意,以上描述和附图仅是示例性说明,而不是对本发明的限制。在本发明的其它实施例中,该方法可以包括比所描述和示出的步骤更多、更少或不同的步骤,并且这些步骤之间的顺序、包含、功能等的关系可以与所描述和示出的步骤不同。
[0062] 还将理解,流程图的每个以及流程图中块的组合可以通过各种方式来实现,诸如硬件固件、处理器、电路和/或与包括一个或多个计算机程序指令的软件的执行相关联的其它设备。例如,上述方法的一个或多个步骤可以由计算机程序指令来实现。在这方面,体现上述步骤的计算机程序指令可以由如下文所述的根据本发明的示例实施例的装置的存储器设备存储,并且由该装置的处理器执行。应当理解,任何这样的计算机程序指令可以被加载到计算机或其他可编程装置(例如,硬件)上以产生机器,使得所得到的计算机或其他可编程装置实现流程图方框中指定的功能。这些计算机程序指令还可以存储在计算机可读存储器中,其可以引导计算机或其他可编程装置以特定方式工作,使得存储在计算机可读存储器中的指令产生一种制品,该制品的执行实现流程图块中指定的功能。计算机程序指令还可以被加载到计算机或其他可编程装置上,以使得在计算机或其他可编程装置上执行一系列操作,以产生计算机实现的过程,从而在计算机或其他可编程装置上执行的指令提供用于实现流程图的块中指定的功能的操作。
[0063] 因此,流程图的块支持用于执行指定功能的装置的组合以及用于执行指定功能的操作的组合,以执行指定功能。还将理解,流程图的一个或多个框以及流程图中的框的组合可以由执行特定功能的基于专用硬件的计算机系统、或者专用硬件和计算机指令的组合来实现。
[0064] 在示例实施例中,可以修改或进一步放大以上操作中的某些操作。此外,在示例实施例中,可以包括附加的可选操作。可以以任何顺序和任何组合来执行对上述操作的修改、添加或放大。
[0065] 参照图5,示出了根据本发明的示例实施例的用于模式识别的装置500的示意图。装置500可包括至少一个处理器510、包括计算机程序代码的至少一个存储器520;至少一个存储器520和计算机程序代码被配置为利用至少一个处理器510使得装置500:接收数据;用已训练的卷积神经网络处理所述数据以便识别所述数据中的模式,其中,所述卷积神经网络至少包括:输入层、至少一个卷积层、至少一个批量归一化层、至少一个激活功能层、输出层以及设置在至少一个批量归一化层与至少一个激活功能层之间的直方图规范层;并且其中,所述直方图规范层被配置为接收由所述批量归一化层输出的值,处理所述值,使得已处理的值的直方图比所述值的直方图更平坦,并且将已处理的值输出到所述激活功能层。
[0066] 在示例实施例中,该装置还可以包括用于接收数据的可选用户接口530和/或可选通信接口540。
[0067] 在示例实施例中,所述直方图规范层被配置为对由所述批量归一化层输出的值执行直方图均衡化以获得已处理的值。
[0068] 在另一示例实施例中,所述直方图规范层被配置为对由所述批量归一化层输出的值执行快速直方图均衡操作以获得已处理的值。
[0069] 在一示例实施例中,至少一个存储器520和计算机程序代码还被配置为与至少一个处理器510一起,使装置500:从数据中提取模式提议;其中,利用已训练的卷积神经网络处理所述数据以识别所述数据中的模式,包括:利用已训练的卷积神经网络处理所述模式提议,以从所述模式提议中识别模式。
[0070] 在一示例实施例中,至少一个存储器520和计算机程序代码还被配置为与至少一个处理器510一起,使装置500:接收具有相应标签的训练数据集;使用带有相应标签的训练数据集来训练所述卷积神经网络,以获得已训练的卷积神经网络。
[0071] 在示例实施例中,激活功能层是ReLU或其变体的层。
[0072] 在示例实施例中,处理器510(和/或协助或以其他方式与处理器510相关联的协助处理器或任何其他处理电路)存储器520可以经由总线与存储器520通信,以用于在装置500的组件之间传递信息。存储器520可以包括例如一个或多个易失性和/或非易失性存储器。换言之,例如,存储器520可以是电子存储设备(例如,计算机可读存储介质),包括被配置为存储可由机器(例如,类似处理器510的计算设备)检索的数据(例如,比特)的。存储器520可以被配置为存储信息、数据、应用、指令等,以使装置500能够根据本发明的示例实施例执行各种功能。例如,存储器520可以被配置为缓冲输入数据,以供处理器510处理。附加地或替代地,存储器设备520可以被配置为存储指令,用于由处理器510执行。
[0073] 装置500可以被实施为芯片或芯片组。换句话说,装置500可以包括一个或多个物理封装(例如,芯片),其包括结构组件(例如,基板)上的材料、组件和/或电线。该结构组件可为包括在其上的组件电路提供物理强度、尺寸节约和/或电交互限制。因此,在一些情况下,装置500可以被配置为在单个芯片上或作为单个“芯片上系统”来实现本发明的示例实施例。因此,在一些情况下,芯片或芯片组可以构成用于执行一个或多个操作以提供这里描述的功能的装置。
[0074] 处理器510可以以多种不同的方式来实现。例如,处理器210可以被实现为各种硬件处理装置中的一个或多个,诸如协处理器微处理器控制器数字信号处理器(DSP)、具有或不具有附带DSP的处理元件、或包括集成电路的各种其他处理电路,例如,ASIC(专用集成电路)、FPGA(现场可编程门阵列)、微控制器单元(MCU)、硬件加速器、专用计算机芯片等。这样,在示例实施例中,处理器510可以包括被配置为独立执行的一个或多个处理核心。多核处理器可以在单个物理封装内实现多处理。附加地或替代地,处理器510可以包括经由总线串联配置的一个或多个处理器,以使得能够独立执行指令、流水线操作和/或多线程操作。
[0075] 在示例实施例中,处理器510可以被配置为执行存储在存储器520中或者以其他方式可以被处理器510访问的指令。替代地或另外,处理器510可被配置为执行硬编码功能。这样,无论是通过硬件或软件方法来配置,还是通过其组合配置,处理器510可以表示能够在相应地配置的同时执行根据本发明的示例实施例的操作的实体(例如,物理地体现在电路中)。因此,例如,当处理器510被实现为ASIC、FPGA等时,处理器510可以是用于进行本文所述的操作的专门配置的硬件。或者,作为另一实例,当处理器510体现为软件指令的执行器时,所述指令可特定地配置处理器510以在执行所述指令时执行本文描述的算法和/或操作。然而,在一些情况下,处理器510可以是特定设备(例如,移动终端或网络实体)的处理器,该特定设备被配置为通过由用于执行本文描述的算法和/或操作的指令进一步配置处理器510来采用本发明的示例实施例。处理器510尤其可以包括时钟、算术逻辑单元(ALU)和被配置为支持处理器510的操作的逻辑门
[0076] 同时,可选通信接口540可以是任何装置,诸如包含在硬件或硬件和软件的组合中的设备或电路,其被配置为从/向网络和/或与装置500通信的任何其他设备或模块接收和/或发送数据。就这一点而言,通信接口540可以包括例如天线(或者多个天线)和支持用于实现与无线通信网络的通信的支持硬件和/或软件。附加地或替换地,通信接口540可包括用于与天线交互以引起经由天线进行信号传输或处置经由天线接收到的信号的接收的电路。在一些环境中,通信接口240可以替代地或还支持有线通信。这样,例如,通信接口540可以包括网络接口卡、通信调制解调器和/或用于支持经由光纤、电缆、数字用户线(DSL)、通用串行总线(USB)或其他机制的通信的其他硬件/软件。
[0077] 在一个示例实施例中,装置500可以包括用户接口530,该用户接口可以依次与处理器510通信以接收关于用户输入或与用户输入相关的指示和/或使得向用户提供听觉、视觉、机械或其他输出。这样,用户接口530可以包括例如键盘鼠标、操纵杆、显示器、(一个或多个)触摸屏、触摸区域、软键、麦克风、扬声器或其他输入/输出机制。
[0078] 虽然已经参考图5描述了根据本发明的一些实施例的用于模式识别的装置,但是应当注意,以上描述和附图仅是示例性说明,而不是对本发明的限制。在本发明的其他实施例中,该装置可以包括比所描述和图示的那些更多、更少或不同的组件,并且那些组件之间的连接、包含、功能等之间的关系可以与所描述和图示的组件不同。
[0079] 在本发明的另一方面,提供了一种用于模式识别的系统,包括:接收单元,被配置为接收数据;以及卷积神经网络,被配置为在被训练后处理所述数据,以识别所述数据中的模式,其中,所述卷积神经网络至少包括:输入层、至少一个卷积层、至少一个批量归一化层、至少一个激活功能层、输出层以及设置在至少一个批量归一化层与至少一个激活功能层之间的直方图规范层;并且其中,所述直方图规范层被配置为接收由所述批量归一化层输出的值,处理所述值,使得已处理的值的直方图比所述值的直方图更平坦,并且将已处理的值输出到所述激活功能层。
[0080] 在示例性实施例中,所述直方图规范层被配置为对由所述批量归一化层输出的值执行直方图均衡以获得所述已处理的值。
[0081] 在示例性实施例中,该系统还可以包括:模式提议提取单元,被配置为从数据中提取模式提议;其中,所述已训练的卷积神经网络被配置为处理所述模式提议以从所述模式提议中识别模式。
[0082] 在示例性实施例中,激活功能层是ReLU或其变体的层。
[0083] 该系统可以以软件、固件、硬件或其组合来实现。例如,该系统可以在一个或多个计算机程序中实现,该程序可以存储在存储介质或存储器设备中,并且可以由处理设备加载和执行,以执行该系统的功能。作为另一示例,该系统可以在由一个或多个计算机程序配置成执行该系统的功能的计算设备中实现。
[0084] 在本发明的另一个实施例中,提供了一种指令编码的计算机可读介质,当由计算机执行时,会导致执行根据如上所述的本发明的任何一个实施例的用于模式识别的方法。
[0085] 在本发明的又一实施例中,提供了一种用于实现卷积神经网络的方法,包括:提供卷积神经网络,所述卷积神经网络至少包括:输入层、至少一个卷积层、至少一个批量归一化层、至少一个激活功能层和输出层;以及在至少一个批量归一化层和至少一个激活功能层之间增加直方图规范层,其中,所述直方图规范层被配置为接收由所述批量归一化层输出的值,处理所述值,使得已处理的值的直方图比所述值的直方图更平坦,然后将已处理的值输出到所述激活功能层。
[0086] 在示例性实施例中,所述直方图规范层被配置为对由所述批量归一化层输出的值执行直方图均衡以获得所述已处理的值。
[0087] 在示例性实施例中,所述直方图规范层被配置为对由所述批量归一化层输出的值执行快速直方图均衡化操作以获得已处理的值。
[0088] 在本发明的又一实施例中,提供了一种卷积神经网络,至少包括:输入层、至少一个卷积层、至少一个批量归一化层、至少一个激活功能层、输出层以及位于至少一个批量归一化层与至少一个激活功能层之间的直方图规范层,其中,所述直方图规范层被配置为接收由所述批量归一化层输出的值,处理所述值,使得已处理的值的直方图比所述值的直方图更平坦,并且将已处理的值输出到所述激活功能层。
[0089] 在示例性实施例中,所述直方图规范层被配置为对由所述批量归一化层输出的值执行直方图均衡以获得所述已处理的值。
[0090] 在示例性实施例中,所述直方图规范层被配置为对由所述批量归一化层输出的值执行快速直方图均衡操作以获得已处理的值。
[0091] 卷积神经网络可以以软件、固件、硬件或其组合来实施。例如,卷积神经网络可以被体现在一个或多个计算机程序中,所述计算机程序可以被存储在存储介质或存储器设备中,并且可以由处理设备加载和执行。对于另一示例,卷积神经网络可以被体现在由一个或多个计算机程序配置的计算设备中。
[0092] 为了证明本发明解决方案的有效性,对CIFAR-10数据集进行了以下实验(该数据集发表在论文中:A.Krizhevsky,“Learning Multiple Layers of Features From Tiny Images(从微小图像学习多层特征)”,技术报告,2009)。具体而言,将盐和胡椒粉噪声注入到输入图像中。表1将根据示例性实施例的本发明的解决方案与其中在ReLU之前不使用直方图均衡的经典解决方案进行了比较。参数d是噪声密度。可以看出,本发明的解决方案比传统的解决方案具有更好的性能。随着噪声密度的增加,本发明解决方案的缺失率比传统解决方案的缺失率增加得更慢。这意味着本发明的解决方案对于抖动更强健。
[0093]
[0094] 受益于在前述描述和相关附图中呈现的教导,本发明所属领域的技术人员将想到本文阐述的本发明的许多修改和其它实施例。因此,应当理解,本发明不限于所公开的特定实施例,并且修改和其它实施例旨在包括在所附权利要求的范围内。此外,虽然前面的描述和相关联的附图在元件和/或功能的某些示例性组合的上下文中描述了示例性实施例,应当理解,在不脱离所附权利要求的范围的情况下,可以通过替代实施例来提供元件和/或功能的不同组合。在这方面,例如,与上文所附权利要求中的一些所阐述的,与上文明确描述的元件和/或功能的不同组合也被考虑。尽管本文使用了特定术语,但是它们仅在一般和描述性意义上使用,而不是为了限制的目的。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈