基于统计异常值的池化计算方法、电子设备、存储介质与流程

文档序号:17066069发布日期:2019-03-08 22:55阅读:211来源:国知局
基于统计异常值的池化计算方法、电子设备、存储介质与流程

本发明涉及计算机科学技术领域,尤其涉及基于统计异常值的池化计算方法、电子设备、存储介质。



背景技术:

通常池化算法包括最大池化算法和平均池化算法。最大池化算法直接返回池化核中最大的值作为池化的结果,而平均池化算法返回池化核中所有值的统计平均值作为池化的结果。然而这两种池化的方法都没有考虑池化核中值的分布特性,而值的分布特性代表卷积层提取出样本的某种特征信息,直接返回最大值或者平均值都是不够准确的。因此,亟需一种对池化核中的数据进行不同的池化,让后续的卷积操作更好的提取有用信息的方法。



技术实现要素:

为了克服现有技术的不足,本发明的目的之一在于提供基于统计异常值的池化计算方法,解决了现有技术中的池化方法没有考虑池化核中值的分布特性,直接返回最大值或者平均值导致池化结果不准确的问题。

本发明提供基于统计异常值的池化计算方法,包括以下步骤:

池化表达,通过池化核的大小和移动步长对卷积层输出结果进行池化表达,得到池化表达结果;

池化统计,对所述池化表达结果中每一位置的池化表达结果进行异常值统计,得到总体异常值统计结果;

池化输出,判断所述总体异常值统计结果中每一异常值统计结果是否大于零,是则计算所述池化表达结果中与所述异常值统计结果对应的所述池化表达结果的最大值作为池化输出,否则计算所述池化表达结果中与所述异常值统计结果对应的所述池化表达结果的统计平均值作为池化输出。

进一步地,所述池化表达中具体包括以下步骤:

将所述卷积层输出结果表示为卷积层输出结果向量,具体公式如下:

其中,conv为卷积层输出结果向量,c为卷积层输出结果向量中单个的卷积层输出结果,c的上标为行数,c的下标为列数,卷积层输出结果向量共有n行n列;

设置所述池化核的大小和移动步长,所述池化核的大小的公式为:

pooling_kernel=(k*k)

所述池化核的移动步长的公式为:

stride=s

其中,pooling_kernel代表k*k大小的池化核,stride代表pooling_kernel每次移动s的步长;

按照从左到右,从上到下的顺序通过所述池化核依次扫描卷积层输出结果,得到池化表达结果,具体公式如下:

其中,poolingexpression为池化表达结果,pe为pooling_kernel在conv的某一个位置上单个的池化表达,pe的上标代表行数,pe的下标代表列数,池化表达结果共有q行q列,代表向上取整。

进一步地,所述池化统计中具体包括以下步骤:

对所述池化表达结果中第j行第i列的池化表达结果进行异常值统计,具体公式如下:

其中,代表的异常值个数,on代表统计异常值个数的方法,为第j行第i列的池化表达;

依次取出poolingexpression中的每个元素进行异常值统计,得到总体异常值统计结果,具体公式如下:

其中,outliers为总体异常值统计结果,共有q行q列。

进一步地,所述池化输出中具体包括以下步骤:

分别取出poolingexpression与outliers中第j行第i列的元素

其中,max代表取中的最大值,average代表取的统计平均值;

依次取出poolingexpression与outliers中的每一个元素,计算所述池化表达结果中与所述异常值统计结果对应的所述池化表达结果的总体池化输出,具体公式如下:

其中,poolingout为总体池化输出,共有q行q列。

一种电子设备,包括:处理器;

存储器;以及程序,其中所述程序被存储在所述存储器中,并且被配置成由处理器执行,所述程序包括用于执行上述基于统计异常值的池化计算方法。

一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行上述基于统计异常值的池化计算方法。

相比现有技术,本发明的有益效果在于:

本发明提供基于统计异常值的池化计算方法,包括以下步骤:池化表达,通过池化核的大小和移动步长对卷积层输出结果通过池化表达,得到池化表达结果;池化统计,对池化表达结果中每一位置的池化表达结果进行异常值统计,得到总体异常值统计结果;池化输出,判断总体异常值统计结果中每一异常值统计结果是否大于零,是则计算池化表达结果中与异常值统计结果对应的池化表达结果的最大值作为池化输出,否则计算池化表达结果中与异常值统计结果对应的池化表达结果的统计平均值作为池化输出。本发明涉及电子设备与可读存储介质,用于执行基于统计异常值的池化计算方法;本发明通过统计卷积结果中的异常值决策使用何种池化方法;对有多个异常值的卷积结果,采取最大池化的方法,对于没有异常值的卷积结果,采用平均池化的方法;通过自适应的池化方法,更好的捕捉到池化核所抓取的特征,从而在满足下采样的前提下,更好的保留卷积层所提取原样本的有效信息,提高卷积神经网络的准确性和可靠性。

上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,并可依照说明书的内容予以实施,以下以本发明的较佳实施例并配合附图详细说明如后。本发明的具体实施方式由以下实施例及其附图详细给出。

附图说明

此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:

图1为本发明的基于统计异常值的池化计算方法流程图。

具体实施方式

下面,结合附图以及具体实施方式,对本发明做进一步描述,需要说明的是,在不相冲突的前提下,以下描述的各实施例之间或各技术特征之间可以任意组合形成新的实施例。

基于统计异常值的池化计算方法,如图1所示,包括以下步骤:

池化表达,通过池化核的大小和移动步长对卷积层输出结果进行池化表达,得到池化表达结果;优选的,池化表达中具体包括以下步骤:

将卷积层输出结果表示为卷积层输出结果向量,具体公式如下:

其中,conv为卷积层输出结果向量,c为卷积层输出结果向量中单个的卷积层输出结果,c的上标为行数,c的下标为列数,卷积层输出结果向量共有n行n列;

设置池化核的大小和移动步长,池化核的大小的公式为:

pooling_kernel=(k*k)

池化核的移动步长的公式为:

stride=s

其中,pooling_kernel代表k*k大小的池化核,stride代表pooling_kernel每次移动s的步长;

首先按照池化核的大小对卷积层输出结果向量左上角的卷积层输出结果进行的池化表达,得到第一个位置的池化表达结果,具体公式如下:

其中,为第一池化表达结果,的上标代表行,下标代表列。

然后按照stride的步长移动pooling_kernel得到其他的池化表达结果,

如:

按照从左到右,从上到下的顺序通过池化核依次扫描卷积层输出结果,得到池化表达结果,具体公式如下:

其中,poolingexpression为池化表达结果,pe为pooling_kernel在conv的某一个位置上单个的池化表达,pe的上标代表行数,pe的下标代表列数,池化表达结果共有q行q列,代表向上取整。

池化统计,对池化表达结果中每一位置的池化表达结果进行异常值统计,得到总体异常值统计结果;优选的,池化统计中具体包括以下步骤:

对池化表达结果中第j行第i列的池化表达结果进行异常值统计,具体公式如下:

其中,代表的异常值个数,on代表统计异常值个数的方法,为第j行第i列的池化表达。

在一实施例中,从poolingexpression中取第一个元素,即:

进行异常值统计,具体公式如下:

其中,代表该位置的池化表达的异常值个数,on代表统计异常值个数的方法,如on为:统计中异常值的个数,首先计算出的上四分位数q1,下四分位数q3,则认为大于q3+1.5*(q3-q1)或者小于q1–1.5(q3-q1)为异常值。需要注意的是,本实施例不限制on的具体方法,能够统计出异常值的个数即可。

依次取出poolingexpression中的每个元素进行异常值统计,得到总体异常值统计结果,具体公式如下:

其中,outliers为总体异常值统计结果,共有q行q列。

池化输出,判断总体异常值统计结果中每一异常值统计结果是否大于零,是则计算池化表达结果中与异常值统计结果对应的池化表达结果的最大值作为池化输出,否则计算池化表达结果中与异常值统计结果对应的池化表达结果的统计平均值作为池化输出。优选的,池化输出中具体包括以下步骤:

分别取出poolingexpression与outliers中第j行第i列的元素

其中,max代表取中的最大值,average代表取的统计平均值。

在一实施例中,取出poolingexpression与outliers中的第一个元素即异常值个数大于0,则其中,max代表取中的最大值;若即无异常值,则其中,average代表取的统计平均值。

依次取出poolingexpression与outliers中的每一个元素,计算池化表达结果中与异常值统计结果对应的池化表达结果的总体池化输出,具体公式如下:

其中,poolingout为总体池化输出,共有q行q列。实现了根据异常值统计个数,自适应的进行不同的池化输出,在满足下采样的前提下,更加准确的抓取了卷积层捕捉的有用信息,为后续的计算(例如卷积等)保留了更加有效的特征。

一种电子设备,包括:处理器;

存储器;以及程序,其中程序被存储在存储器中,并且被配置成由处理器执行,程序包括用于执行上述基于统计异常值的池化计算方法。

一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行上述基于统计异常值的池化计算方法。

本发明提供基于统计异常值的池化计算方法,包括以下步骤:池化表达,通过池化核的大小和移动步长对卷积层输出结果通过池化表达,得到池化表达结果;池化统计,对池化表达结果中每一位置的池化表达结果进行异常值统计,得到总体异常值统计结果;池化输出,判断总体异常值统计结果中每一异常值统计结果是否大于零,是则计算池化表达结果中与异常值统计结果对应的池化表达结果的最大值作为池化输出,否则计算池化表达结果中与异常值统计结果对应的池化表达结果的统计平均值作为池化输出。本发明涉及电子设备与可读存储介质,用于执行基于统计异常值的池化计算方法;本发明通过统计卷积结果中的异常值决策使用何种池化方法;对有多个异常值的卷积结果,采取最大池化的方法,对于没有异常值的卷积结果,采用平均池化的方法;通过自适应的池化方法,更好的捕捉到池化核所抓取的特征,从而在满足下采样的前提下,更好的保留卷积层所提取原样本的有效信息,提高卷积神经网络的准确性和可靠性。

以上,仅为本发明的较佳实施例而已,并非对本发明作任何形式上的限制;凡本行业的普通技术人员均可按说明书附图所示和以上而顺畅地实施本发明;但是,凡熟悉本专业的技术人员在不脱离本发明技术方案范围内,利用以上所揭示的技术内容而做出的些许更动、修饰与演变的等同变化,均为本发明的等效实施例;同时,凡依据本发明的实质技术对以上实施例所作的任何等同变化的更动、修饰与演变等,均仍属于本发明的技术方案的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1