信息输出方法和装置
技术领域
本申请实施例涉及计算机技术领域,具体涉及信息处理技术领域,尤其涉及信息输出方法和装置。
背景技术
卷积神经网络(Constitutional Neural Networks,CNN)是一种处理大型图像的深度神经网络模型,主要应用于图像识别、自然语言处理、语音视频处理等领域。由于卷积神经网络可以共享卷积核,对高维数据处理无压力以及特征分类效果好等特点,目前被各大互联网公司广泛应用。
发明内容
本申请实施例提出了信息输出方法和装置。
第一方面,本申请实施例提供了一种信息输出方法,包括:针对对输入到待裁剪卷积神经网络中的图像进行处理的至少一个卷积核中的每个卷积核,基于该卷积核中的至少一个元素,确定该卷积核的第一分数,基于经过该卷积核的处理所得到的至少一张特征图中每张特征图上的至少一个特征值,确定该卷积核的第二分数,基于第一分数和第二分数,确定该卷积核的第三分数;按照第三分数由小到大的顺序选取第一预设数目个卷积核,并裁剪待裁剪卷积神经网络中选取出的卷积核;输出裁剪后的卷积神经网络。
在一些实施例中,该方法还包括:将对输入到目标卷积神经网络的最后一个卷积层中的图像进行处理的卷积核的数量修改为第二预设数目;利用机器学习方法,将环境样本图像作为输入,将交通灯识别结果作为输出,对修改后的目标卷积神经网络进行训练得到训练后的卷积神经网络,并将训练后的卷积神经网络确定为待裁剪卷积神经网络,其中,交通灯识别结果的取值的数目为第二预设数目个。
在一些实施例中,按照第三分数由小到大的顺序选取第一预设数目个卷积核,包括:按照第三分数由小到大的顺序选取除对输入到最后一个卷积层中的图像进行处理的卷积核之外的第一预设数目个卷积核。
在一些实施例中,在输出裁剪后的卷积神经网络之后,该方法还包括:采集无人驾驶车辆在行驶过程中的环境图像;将环境图像输入到裁剪后的卷积神经网络得到交通灯识别结果;执行与交通灯识别结果相关的操作。
在一些实施例中,确定该卷积核的第一分数,包括:确定至少一个元素的平方和,将平方和与至少一个元素的个数的商确定为该卷积核的第一分数。
在一些实施例中,确定该卷积核的第二分数,包括:针对每个特征图,将该特征图上的至少一个特征值之和与至少一个特征值的个数的商确定为该卷积核针对该特征图的分数;将该卷积核针对至少一个特征图的至少一个分数的平均值确定为该卷积核的第二分数。
在一些实施例中,确定该卷积核的第三分数,包括:将第一分数与第二分数的平均值确定为该卷积核的第三分数。
第二方面,本申请实施例提供了一种信息输出装置,包括:确定单元,配置用于针对对输入到待裁剪卷积神经网络中的图像进行处理的至少一个卷积核中的每个卷积核,基于该卷积核中的至少一个元素,确定该卷积核的第一分数,基于经过该卷积核的处理所得到的至少一张特征图中每张特征图上的至少一个特征值,确定该卷积核的第二分数,基于第一分数和第二分数,确定该卷积核的第三分数;裁剪单元,配置用于按照第三分数由小到大的顺序选取第一预设数目个卷积核,并裁剪待裁剪卷积神经网络中选取出的卷积核;输出单元,配置用于输出裁剪后的卷积神经网络。
在一些实施例中,该装置还包括:修改单元,配置用于将对输入到目标卷积神经网络的最后一个卷积层中的图像进行处理的卷积核的数量修改为第二预设数目;训练单元,配置用于利用机器学习方法,将环境样本图像作为输入,将交通灯识别结果作为输出,对修改后的目标卷积神经网络进行训练得到训练后的卷积神经网络,并将训练后的卷积神经网络确定为待裁剪卷积神经网络,其中,交通灯识别结果的取值的数目为第二预设数目个。
在一些实施例中,裁剪单元进一步配置用于:按照第三分数由小到大的顺序选取除对输入到最后一个卷积层中的图像进行处理的卷积核之外的第一预设数目个卷积核。
在一些实施例中,该装置还包括:采集单元,配置用于采集无人驾驶车辆在行驶过程中的环境图像;输入单元,配置用于将环境图像输入到裁剪后的卷积神经网络得到交通灯识别结果;执行单元,配置用于执行与交通灯识别结果相关的操作。
在一些实施例中,确定单元进一步配置用于:确定至少一个元素的平方和,将平方和与至少一个元素的个数的商确定为该卷积核的第一分数。
在一些实施例中,确定单元,包括:第一确定模块,配置用于针对每个特征图,将该特征图上的至少一个特征值之和与至少一个特征值的个数的商确定为该卷积核针对该特征图的分数;第二确定模块,配置用于将该卷积核针对至少一个特征图的至少一个分数的平均值确定为该卷积核的第二分数。
在一些实施例中,确定单元进一步配置用于:将第一分数与第二分数的平均值确定为该卷积核的第三分数。
第三方面,本申请实施例还提供了一种电子设备,包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当上述一个或多个程序被上述一个或多个处理器执行,使得上述一个或多个处理器实现本申请提供的信息输出方法。
第四方面,本申请实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现本申请提供的信息输出方法。
本申请实施例提供的信息输出方法和装置,通过针对对输入到待裁剪卷积神经网络中的图像进行处理的至少一个卷积核中的每个卷积核,首先基于该卷积核中的至少一个元素,确定该卷积核的第一分数,而后基于经过该卷积核的处理所得到的至少一张特征图中每个特征图上的至少一个特征值,确定该卷积核的第二分数,然后基于上述第一分数和上述第二分数,确定该卷积核的第三分数,之后,按照第三分数由小到大的顺序选取第一预设数目个卷积核,并将选取出的卷积核从上述待裁剪卷积神经网络中裁剪掉,最后输出裁剪后的卷积神经网络,通过这种方式将对卷积神经网络的性能影响较小的卷积核裁剪掉,从而减少了卷积神经网络的参数,提高了卷积神经网络的工作效率。
附图说明
通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本申请的其它特征、目的和优点将会变得更明显:
图1是本申请可以应用于其中的示例性***架构图;
图2是根据本申请的信息输出方法的一个实施例的流程图;
图3a是根据本申请的信息输出方法的一个卷积核的示意图;
图3b是根据本申请的信息输出方法的一个特征图生成过程的示意图;
图4是根据本申请的信息输出方法的又一个实施例的流程图;
图5是根据本申请的信息输出装置的一个实施例的结构示意图;
图6是适于用来实现本申请实施例的服务器或终端设备的计算机***的结构示意图。
具体实施方式
下面结合附图和实施例对本申请作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释相关发明,而非对该发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与有关发明相关的部分。
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。
图1示出了可以应用本申请的信息输出方法或信息输出装置的实施例的示例性***架构100。
如图1所示,***架构100可以包括车载终端设备1011、1012、1013,网络102和服务器103。网络102用以在车载终端设备1011、1012、1013和服务器103之间提供通信链路的介质。网络102可以包括各种连接类型,例如无线通信链路、全球定位***或者光纤电缆等等。
车载终端设备1011、1012、1013通过网络102与服务器103交互,以接收或发送消息等。车载终端设备1011、1012、1013可以从服务器103中获取裁剪后的卷积神经网络,并利用裁剪后的卷积神经网络对采集到的环境图像进行识别得到交通灯识别结果。车载终端设备1011、1012、1013也可以对所获取的待裁剪卷积神经网络的卷积核数据进行分析等处理,并利用处理结果(例如裁剪后的卷积神经网络)对采集的环境图像进行识别。
服务器103可以是提供各种服务的服务器,例如对车载终端设备1011、1012、1013所获取的裁剪后的卷积神经网络提供支持的后台服务器。后台服务器可以对所获取的待裁剪卷积神经网络的卷积核数据进行分析等处理,并将处理结果(例如裁剪后的卷积神经网络)进行输出以供车载终端设备1011、1012、1013进行获取。
需要说明的是,本申请实施例所提供的信息输出方法可以由服务器103执行,也可以由车载终端设备1011、1012、1013执行,相应地,信息输出装置可以设置于服务器103中,也可以设置于车载终端设备1011、1012、1013中。
应该理解,图1中的车载终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的车载终端设备、网络和服务器。
继续参考图2,示出了根据本申请的信息输出方法的一个实施例的流程200。该信息输出方法,包括以下步骤:
步骤201,针对对输入到待裁剪卷积神经网络中的图像进行处理的至少一个卷积核中的每个卷积核,基于该卷积核中的至少一个元素,确定该卷积核的第一分数。
在本实施例中,信息输出方法运行于其上的电子设备(例如图1所示的服务器或车载终端设备)可以针对对输入到待裁剪卷积神经网络中的图像进行处理的至少一个卷积核中的每个卷积核,基于该卷积核中的至少一个元素,确定该卷积核的第一分数。上述待裁剪卷积神经网络中可以包括上述至少一个卷积核,从而对输入到上述待裁剪卷积神经网络中的图像进行处理,卷积核对图像进行处理的过程也可以是卷积核与图像的像素灰度值进行卷积运算的过程。上述电子设备可以首先确定上述至少一个元素的和,再利用得到的和除以上述至少一个元素的个数,将所得的商确定为该卷积核的第一分数。
在本实施例中,卷积神经网络是一种处理大型图像的深度神经网络模型,主要由卷积层(Convolution Layer)以及池化层(Pooling Layer)组成,池化层也可以称为下采样层。卷积神经网络通常是在卷积层中对输入的图像进行特征提取,每个卷积层中存在至少一个卷积核与输入图像中的像素灰度值进行卷积运算从而对输入图像进行特征提取。卷积核可以是一个用矩阵表示的权重,卷积核中的每个元素可以是矩阵中的一个权重值。卷积运算也可以看做是加权求和的过程,利用输入图像区域中的每个像素灰度值分别与卷积核的每个元素对应相乘,将乘积之和作为区域中心像素灰度值的新值,这个新值也可以称为特征值,可以将卷积运算得到的图称为特征图,上述特征图也可以称为激活图,相应的,上述特征值也可以称为激活值。
在本实施例中,上述待裁剪卷积神经网络可以包括SqueezeNet,SqueezeNet是一种超轻量级神经网络,是为了降低神经网络模型参数数量而设计的。
在本实施例的一些可选的实现方式中,上述电子设备可以首先确定该卷积核的至少一个元素的平方和,之后,可以利用上述平方和除以上述至少一个元素的数量,将得到的商确定为该卷积核的第一分数。作为示例,如图3a所示,该卷积核的大小为3*3,共有9个元素,上述电子设备可以首先确定这9个元素的平方和为5,再利用平方和5除以该卷积核的元素的数量9,将得到的商0.56确定为该卷积核的第一分数。
步骤202,基于经过该卷积核的处理所得到的至少一张特征图中每个特征图上的至少一个特征值,确定该卷积核的第二分数。
在本实施例中,上述电子设备可以基于经过该卷积核的处理所得到的至少一张特征图中每张特征图上的至少一个特征值,确定该卷积核的第二分数。上述至少一张特征图可以是在历史时间段内经过该卷积核的处理并存储在上述电子设备中的特征图。上述电子设备也可以在确定出该卷积核的第一分数之后,将至少一张输入图像输入到上述待裁剪卷积神经网络中,该卷积核可以与上述至少一张输入图像中每张输入图像的像素灰度值进行卷积运算从而得到至少一张特征图,且每张特征图上的每个特征值是输入图像的每个像素灰度值与该卷积核的每个元素对应相乘并相加所得到的,其中,上述输入图像可以包括无人驾驶车辆在行驶过程中所采集的环境图像,上述环境图像可以包括包含交通灯的图像和不包含交通灯的图像。针对上述每个特征图,上述电子设备可以确定该特征图上的至少一个特征值的平方和,将上述平方和与上述至少一个特征值的个数的商确定为该卷积核针对该特征图的分数,并可以将该卷积核针对上述至少一个特征图的至少一个分数的平均值确定为该卷积核的第二分数。
在本实施例的一些可选的实现方式中,针对上述每个特征图,上述电子设备可以将该特征图中的至少一个特征值之和与上述至少一个特征值的个数的商确定为该卷积核针对该特征图的分数,之后可以将该卷积核针对上述至少一个特征图的至少一个分数的平均值确定为该卷积核的第二分数。作为示例,如图3b所示,该卷积核分别对输入的图像A、图像B和图像C进行处理,得到特征图A、特征图B和特征图C。针对特征图A,上述电子设备可以将特征图A上的9个特征值相加得到25,再将特征值之和25与特征值的个数9的商2.78确定为该卷积核针对特征图A的分数;针对特征图B,上述电子设备可以将特征图B上的9个特征值相加得到26,再将特征值之和26与特征值的个数9的商2.89确定为该卷积核针对特征图B的分数;针对特征图C,上述电子设备可以将特征图C上的9个特征值相加得到22,再将特征值之和22与特征值的个数9的商2.44确定为该卷积核针对特征图C的分数。最后,上述电子设备可以求取该卷积核针对特征图A的分数2.78、该卷积核针对特征图B的分数2.89和该卷积核针对特征图C的分数2.44的平均值,将得到的平均值2.7确定为该卷积核的第二分数。
步骤203,基于第一分数和第二分数,确定该卷积核的第三分数。
在本实施例中,基于步骤201中确定出的第一分数和步骤202中确定出的第二分数,上述电子设备可以确定该卷积核的第三分数。上述电子设备可以将上述第一分数与上述第二分数之和确定为该卷积核的第三分数。
在本实施例的一些可选的实现方式中,上述电子设备可以将上述第一分数与上述第二分数的平均值确定为该卷积核的第三分数。作为示例,若第一分数为0.56,第二分数为2.7,则该卷积核的第三分数可以为1.63。
步骤204,按照第三分数由小到大的顺序选取第一预设数目个卷积核,并裁剪待裁剪卷积神经网络中选取出的卷积核。
在本实施例中,在步骤203中确定出第三分数之后,上述电子设备可以按照第三分数由小到大的顺序选取第一预设数目个卷积核,并可以裁剪上述待裁剪卷积神经网络中的选取出的卷积核。上述第一预设数目可以是上述待裁剪卷积神经网络中已存在的卷积核的预设比例,例如,1%或2%。裁剪也可以称为剪枝,裁剪的过程可以是将选取出的卷积核从上述待裁剪卷积神经网络中裁剪掉(去除),并对由剩余的卷积核所组成的剪裁后的卷积神经网络的参数进行调整,使得剪裁后的卷积神经网络的准确度不小于上述待剪裁卷积神经网络的准确度。作为示例,第一卷积核的第三分数为1.5,第二卷积核的第三分数为1.78,第三卷积核的第三分数为1.49,第四卷积核的第三分数为1.02,第五卷积核的第三分数为1.96,若需要从上述5个卷积核中裁剪掉2个卷积核,则可以裁剪第四卷积核和第三卷积核。
在本实施例中,在得到剪裁后的卷积神经网络之后,上述电子设备可以对上述剪裁后的卷积神经网络进行测试,检测上述剪裁后的卷积神经网络识别一帧图像所用时间是否小于等于预期时间,若小于等于上述预期时间,则可以执行步骤205;若大于上述预期时间,则需要调整上述第一预设数目,并继续执行步骤204直到剪裁后的卷积神经网络识别一帧图像所用时间小于等于预期时间为止。
步骤205,输出裁剪后的卷积神经网络。
在本实施例中,上述电子设备可以输出剪裁后的卷积神经网络,如,可以将剪裁后的卷积神经网络存储到内存中,也可以将剪裁后的卷积神经网络存储在文本文件(ASCII码文件)中或者二进制文件中。
在一些应用场景中,无人驾驶车辆可以从上述电子设备中获取剪裁后的卷积神经网络,从而对包含道路状况、交通灯信息的图像进行识别。
本申请的上述实施例提供的方法通过基于待裁剪卷积神经网络中至少一个卷积核的卷积核信息,将对卷积神经网络的性能影响较小的卷积核裁剪掉,从而减少了卷积神经网络的参数,提高了卷积神经网络的工作效率。
进一步参考图4,其示出了信息输出方法的又一个实施例的流程400。该信息输出方法的流程400,包括以下步骤:
步骤401,将对输入到目标卷积神经网络的最后一个卷积层中的图像进行处理的卷积核的数量修改为第二预设数目。
在本实施例中,信息输出方法运行于其上的电子设备(例如图1所示的服务器或车载终端设备)可以将对输入到目标卷积神经网络的最后一个卷积层中的图像进行处理的卷积核的数量修改为第二预设数目。作为示例,对最后一个卷积层中的图像进行处理的卷积核的原始数量为1000,若上述第二预设数目为3,则上述电子设备可以将1000修改为3,即可以在1000个卷积核中选取3个卷积核,将未被选取的卷积核剪裁掉,保留选取出的3个卷积核。上述目标卷积神经网络可以是待训练的卷积神经网络。
步骤402,利用机器学习方法,将环境样本图像作为输入,将交通灯识别结果作为输出,对修改后的目标卷积神经网络进行训练得到训练后的卷积神经网络,并将训练后的卷积神经网络确定为待裁剪卷积神经网络。
在本实施例中,上述环境样本图像可以包括包含红灯的图像、包含绿灯的图像以及不包含交通灯的图像,相应地,上述交通灯识别结果可以包括红灯标识、绿灯标识以及无交通灯标识。需要说明的是,上述交通灯识别结果的取值的数目通常为上述第二预设数目(如,3)个。
在本实施例中,上述电子设备可以利用机器学习方法,将环境样本图像作为输入,将交通灯识别结果作为输出,对步骤401中修改后的目标卷积神经网络进行训练得到训练后的卷积神经网络,并可以将训练后的卷积神经网络确定为待裁剪卷积神经网络。具体地,上述电子设备可以将包含红灯的图像作为输入,将上述红灯标识作为输出,同时将包含绿灯的图像作为输入,将上述绿灯标识作为输出,同时将不包含交通灯的图像作为输入,将上述无交通灯标识作为输出,利用机器学习方法,对步骤401中修改后的目标卷积神经网络进行训练,得到训练的卷积神经网络。
步骤403,针对对输入到待裁剪卷积神经网络中的图像进行处理的至少一个卷积核中的每个卷积核,基于该卷积核中的至少一个元素,确定该卷积核的第一分数。
步骤404,基于经过该卷积核的处理所得到的至少一张特征图中每张特征图上的至少一个特征值,确定该卷积核的第二分数。
步骤405,基于第一分数和第二分数,确定该卷积核的第三分数。
在本实施例中,步骤403-405的操作与步骤201-203的操作基本相同,在此不再赘述。
步骤406,按照第三分数由小到大的顺序选取除对输入到最后一个卷积层中的图像进行处理的卷积核之外的第一预设数目个卷积核,并裁剪待裁剪卷积神经网络中选取出的卷积核。
在本实施例中,在步骤405中确定出第三分数之后,上述电子设备可以按照第三分数由小到大的顺序从除对输入到上述最后一个卷积层中的图像进行处理的卷积核之外的卷积核中选取上述第一预设数目个卷积核,并可以将选取出的卷积核从上述待裁剪卷积神经网络中剪裁掉,并对由剩余的卷积核所组成的剪裁后的卷积神经网络的参数进行调整,使得剪裁后的卷积神经网络的准确度不小于上述待剪裁卷积神经网络的准确度。
步骤407,输出裁剪后的卷积神经网络。
在本实施例中,步骤407的操作与步骤205的操作基本相同,在此不再赘述。
步骤408,采集无人驾驶车辆在行驶过程中的环境图像。
在本实施例中,无人驾驶车辆上可以安装有至少一个用于采集车辆周边环境图像的摄像头,上述摄像头中可以包括专用于采集交通灯信息的摄像头,上述电子设备可以通过上述摄像头采集无人驾驶车辆在行驶过程中的环境图像。
步骤409,将环境图像输入到裁剪后的卷积神经网络得到交通灯识别结果。
在本实施例中,上述电子设备可以将步骤408中采集到的环境图像输入到步骤407中输出的裁剪后的卷积神经网络中,得到交通灯识别结果。
步骤410,执行与交通灯识别结果相关的操作。
在本实施例中,在步骤409中得到交通灯识别结果之后,上述电子设备可以执行与上述交通灯识别结果相关的操作。若交通灯识别结果为红灯标识,则可以控制无人驾驶车辆减速直至停止;若交通灯识别结果为绿灯标识,则可以控制无人驾驶车辆在通过交通灯所在路口时的速度小于预设速度阈值。
从图4中可以看出,与图2对应的实施例相比,本实施例中的信息输出方法的流程400突出了对裁剪后的卷积神经网络进行应用的步骤。由此,本实施例描述的方案利用裁剪后的卷积神经网络对无人驾驶车辆采集到的环境图像进行识别,从而,提高了交通灯识别的速度,进一步提高了无人驾驶车辆的行驶安全性。
进一步参考图5,作为对上述各图所示方法的实现,本申请提供了一种信息输出装置的一个实施例,该装置实施例与图2所示的方法实施例相对应,该装置具体可以应用于各种电子设备中。
如图5所示,本实施例的信息输出装置500包括:确定单元501、裁剪单元502和输出单元503。其中,确定单元501配置用于针对对输入到待裁剪卷积神经网络中的图像进行处理的至少一个卷积核中的每个卷积核,基于该卷积核中的至少一个元素,确定该卷积核的第一分数,基于经过该卷积核的处理所得到的至少一张特征图中每张特征图上的至少一个特征值,确定该卷积核的第二分数,基于第一分数和第二分数,确定该卷积核的第三分数;裁剪单元502配置用于按照第三分数由小到大的顺序选取第一预设数目个卷积核,并裁剪待裁剪卷积神经网络中选取出的卷积核;输出单元503配置用于输出裁剪后的卷积神经网络。
在本实施例中,信息输出装置500的确定单元501、裁剪单元502和输出单元503的具体处理可以参考图2对应实施例中的步骤201、步骤202和步骤203。
在本实施例的一些可选的实现方式中,上述信息输出装置500还可以包括修改单元504和训练单元505。上述修改单元504可以将对输入到目标卷积神经网络的最后一个卷积层中的图像进行处理的卷积核的数量修改为第二预设数目。上述训练单元505可以利用机器学习方法,将环境样本图像作为输入,将交通灯识别结果作为输出,对修改后的目标卷积神经网络进行训练得到训练后的卷积神经网络,并可以将训练后的卷积神经网络确定为待裁剪卷积神经网络。具体地,上述训练单元505可以将包含红灯的图像作为输入,将上述红灯标识作为输出,同时将包含绿灯的图像作为输入,将上述绿灯标识作为输出,同时将不包含交通灯的图像作为输入,将上述无交通灯标识作为输出,利用机器学习方法,对修改后的目标卷积神经网络进行训练,得到训练的卷积神经网络。
在本实施例的一些可选的实现方式中,上述裁剪单元502还可以按照第三分数由小到大的顺序从除对输入到上述最后一个卷积层中的图像进行处理的卷积核之外的卷积核中选取上述第一预设数目个卷积核,并可以将选取出的卷积核从上述待裁剪卷积神经网络中剪裁掉,并对由剩余的卷积核所组成的剪裁后的卷积神经网络的参数进行调整,使得剪裁后的卷积神经网络的准确度不小于上述待剪裁卷积神经网络的准确度。
在本实施例的一些可选的实现方式中,上述信息输出装置500还可以包括采集单元506、输入单元507和执行单元508。无人驾驶车辆上可以安装有至少一个用于采集车辆周边环境图像的摄像头,上述摄像头中可以包括专用于采集交通灯信息的摄像头,上述采集单元506可以通过上述摄像头采集无人驾驶车辆在行驶过程中的环境图像。上述输入单元507可以将采集单元506采集到的环境图像输入到裁剪后的卷积神经网络中,得到交通灯识别结果;之后,上述执行单元508可以执行与上述交通灯识别结果相关的操作。若交通灯识别结果为红灯标识,则上述执行单元508可以控制无人驾驶车辆减速直至停止;若交通灯识别结果为绿灯标识,则上述执行单元508可以控制无人驾驶车辆在通过交通灯所在路口时的速度小于预设速度阈值。
在本实施例的一些可选的实现方式中,上述确定单元501可以首先确定该卷积核的至少一个元素的平方和,之后,可以利用上述平方和除以上述至少一个元素的数量,将得到的商确定为该卷积核的第一分数。
在本实施例的一些可选的实现方式中,上述确定单元501还可以包括第一确定模块5011和第二确定模块5012。针对上述每个特征图,上述第一确定模块5011可以将该特征图中的至少一个特征值之和与上述至少一个特征值的个数的商确定为该卷积核针对该特征图的分数,之后,上述第二确定模块5012可以将该卷积核针对上述至少一个特征图的至少一个分数的平均值确定为该卷积核的第二分数。
在本实施例的一些可选的实现方式中,上述确定单元501可以将上述第一分数与上述第二分数的平均值确定为该卷积核的第三分数。
下面参考图6,其示出了适于用来实现本发明实施例的电子设备的计算机***600的结构示意图。图6示出的电子设备仅仅是一个示例,不应对本申请实施例的功能和使用范围带来任何限制。
如图6所示,计算机***600包括中央处理单元(CPU)601,其可以根据存储在只读存储器(ROM)602中的程序或者从存储部分608加载到随机访问存储器(RAM)603中的程序而执行各种适当的动作和处理。在RAM 603中,还存储有***600操作所需的各种程序和数据。CPU 601、ROM 602以及RAM 603通过总线604彼此相连。输入/输出(I/O)接口605也连接至总线604。
以下部件连接至I/O接口605:包括键盘、鼠标等的输入部分606;包括诸如液晶显示器(LCD)以及扬声器等的输出部分607;包括硬盘等的存储部分608;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分609。通信部分609经由诸如因特网的网络执行通信处理。驱动器610也根据需要连接至I/O接口605。可拆卸介质611,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器610上,以便于从其上读出的计算机程序根据需要被安装入存储部分608。
特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分609从网络上被下载和安装,和/或从可拆卸介质611被安装。在该计算机程序被中央处理单元(CPU)601执行时,执行本申请的方法中限定的上述功能。需要说明的是,本申请上述的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的***、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本申请中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行***、装置或者器件使用或者与其结合使用。而在本申请中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行***、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、RF等等,或者上述的任意合适的组合。
附图中的流程图和框图,图示了按照本发明各种实施例的***、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的***来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本发明实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的单元也可以设置在处理器中,例如,可以描述为:一种处理器包括确定单元、裁剪单元和输出单元。其中,这些单元的名称在某种情况下并不构成对该单元本身的限定。例如,输出单元还可以被描述为“输出裁剪后的卷积神经网络的单元”。
作为另一方面,本申请还提供了一种计算机可读介质,该计算机可读介质可以是上述实施例中描述的装置中所包含的;也可以是单独存在,而未装配入该装置中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被该装置执行时,使得该装置:针对对输入到待裁剪卷积神经网络中的图像进行处理的至少一个卷积核中的每个卷积核,基于该卷积核中的至少一个元素,确定该卷积核的第一分数,基于经过该卷积核的处理所得到的至少一张特征图中每张特征图上的至少一个特征值,确定该卷积核的第二分数,基于第一分数和第二分数,确定该卷积核的第三分数;按照第三分数由小到大的顺序选取第一预设数目个卷积核,并裁剪待裁剪卷积神经网络中选取出的卷积核;输出裁剪后的卷积神经网络。
以上描述仅为本发明的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本发明中所涉及的发明范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离上述发明构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本发明中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。