利用神经网络识别图片的方法及装置、介质和计算设备与流程

文档序号:16694356发布日期:2019-01-22 19:20阅读:183来源:国知局
利用神经网络识别图片的方法及装置、介质和计算设备与流程

本发明的实施方式涉及计算机领域,更具体地,本发明的实施方式涉及一种利用神经网络识别图片的方法和一种神经网络训练方法、一种利用神经网络识别图片的装置、一种神经网络训练装置、一种介质和一种计算设备。



背景技术:

本部分旨在为权利要求书中陈述的本发明的实施方式提供背景或上下文。此处的描述不因为包括在本部分中就承认是现有技术。

随着网络技术的不断发展,部分信息发布者为了达到自身的某些目的,往往会在正常图片中携带有用于表征推广意图的信息,而这些信息通常情况下是不正当的信息。例如,如图1所示,在正常图片中携带添加微信号的不正当信息。相关技术中,为了实现对这种携带有用于表征推广意图的信息的图片,尤其是对携带有用于表征推广意图的不正当信息的图片进行处理,一般通过对图像的全局特征进行识别,但该方法不能较准确地获取关键信息,往往造成误判与漏判的技术问题。



技术实现要素:

出于相关技术中采用对图像的全局特征进行识别的技术手段,现有技术中存在不容易获取关键信息,造成误判与漏判的技术问题。

因此在现有技术中,对携带有例如用于表征推广意图的信息的特定信息的图片不能有效的处理这是非常令人烦恼的过程。

为此,非常需要一种改进的利用神经网络识别图片的方法和一种神经网络训练方法、一种利用神经网络识别图片的装置、一种神经网络训练装置、一种介质和一种计算设备。

在本上下文中,本发明的实施方式期望提供一种利用神经网络识别图片的方法和一种神经网络训练方法、一种利用神经网络识别图片的装置、一种神经网络训练装置、一种介质和一种计算设备。

在本发明实施方式的第一方面中,提供了一种利用神经网络识别图片的方法,其中,上述神经网络的隐含层中至少包括全局隐含层和视觉注意力层,上述全局隐含层用于提取图片的全局特征,上述视觉注意力层用于提取图片的局部特征,上述方法包括:获取图片数据;将上述图片数据输入上述神经网络,在传输到上述全局隐含层的情况下,输出上述图片的全局特征;将上述图片的全局特征输入上述视觉注意力层,并输出上述图片的局部特征;以及根据上述图片的局部特征确定上述图片是否携带有特定信息。

在本发明的一个实施例中,在将上述图片数据输入上述神经网络之前,上述方法还包括将上述图片的尺寸调整至预设尺寸,以实现对上述图片进行预处理。

在本发明的另一个实施例中,上述方法还包括确定上述图片的通道数量;在上述图片的通道数量为多个的情况下,对上述图片的全局特征进行压缩,得到上述图片的单通道全局特征;以及将上述图片的单通道全局特征输入上述视觉注意力层,并输出上述图片的局部特征。

在本发明的又一个实施例中,对上述图片的全局特征进行压缩,得到上述图片的单通道全局特征包括获取上述图片的各个局部区域在上述图片中的位置信息;将属于同一位置的不同通道上的特征点的特征值与预设卷积核作卷积,得到不同通道上属于同一位置的卷积值;以及将上述不同通道上属于同一位置的卷积值进行加和,得到的加和结果作为上述图片的单通道全局特征。

在本发明的再一个实施例中,将上述图片的单通道全局特征输入上述视觉注意力层时,上述方法包括:将上述图片的单通道全局特征与上述视觉注意力层的权重参数相乘,得到的结果作为上述图片的局部特征,其中,上述视觉注意力层的权重参数用于增强上述图片的局部特征的明显性。

在本发明实施方式的第二方面中,提供了一种神经网络训练方法,其中,上述神经网络的隐含层中至少包括全局隐含层和视觉注意力层,上述全局隐含层用于提取图片的全局特征,上述视觉注意力层用于提取图片的局部特征,上述方法包括获取图片样本数据,其中,上述图片样本数据至少包括携带有特定信息的图片的数据;将上述图片样本数据中每一张图片的数据输入上述神经网络,以训练上述全局隐含层;以及基于训练上述全局隐含层时输出的图片的全局特征,训练上述视觉注意力层。

在本发明的一个实施例中,基于训练上述全局隐含层时输出的图片的全局特征,训练上述视觉注意力层包括在上述图片的通道数量为多个的情况下,对上述图片的全局特征进行压缩,得到上述图片的单通道全局特征;以及基于上述图片的单通道全局特征训练上述视觉注意力层。

在本发明的另一个实施例中,上述神经网络至少还包括第一全连接层、第二全连接层和激活层,基于上述图片的单通道全局特征训练上述视觉注意力层包括将上述图片的单通道全局特征输入上述第一全连接层,输出第一全连接特征;将上述第一全连接特征输入上述第二全连接层,输出第二全连接特征;将上述第二全连接特征输入上述激活层,输出激活后的全局特征;以及基于上述激活后的全局特征训练上述视觉注意力层,其中,上述视觉注意力层的权重参数用于增强图片的局部特征的明显性。

在本发明实施方式的第三方面中,提供了一种利用神经网络识别图片的装置,其中,上述神经网络的隐含层中至少包括全局隐含层和视觉注意力层,上述全局隐含层用于提取图片的全局特征,上述视觉注意力层用于提取图片的局部特征,上述装置包括第一获取模块,用于获取图片数据;第一输出模块,用于将上述图片数据输入上述神经网络,在传输到上述全局隐含层的情况下,输出上述图片的全局特征;第二输出模块,用于将上述图片的全局特征输入上述视觉注意力层,并输出上述图片的局部特征;以及第一确定模块,用于根据上述图片的局部特征确定上述图片是否携带有特定信息。

在本发明的一个实施例中,上述装置还包括调整模块,用于在将上述图片数据输入上述神经网络之前,将上述图片的尺寸调整至预设尺寸,以实现对上述图片进行预处理。

在本发明的另一个实施例中,上述装置还包括第二确定模块,用于确定上述图片的通道数量;压缩模块,用于在上述图片的通道数量为多个的情况下,对上述图片的全局特征进行压缩,得到上述图片的单通道全局特征;以及第三输出模块,用于将上述图片的单通道全局特征输入上述视觉注意力层,并输出上述图片的局部特征。

在本发明的又一个实施例中,上述压缩模块包括获取单元,用于获取上述图片的各个局部区域在上述图片中的位置信息;卷积单元,用于将属于同一位置的不同通道上的特征点的特征值与预设卷积核作卷积,得到不同通道上属于同一位置的卷积值;以及计算单元,用于将上述不同通道上属于同一位置的卷积值进行加和,得到的加和结果作为上述图片的单通道全局特征。

在本发明的再一个实施例中,上述装置包括处理模块,用于将上述图片的单通道全局特征输入上述视觉注意力层时,将上述图片的单通道全局特征与上述视觉注意力层的权重参数相乘,得到的结果作为上述图片的局部特征,其中,上述视觉注意力层的权重参数用于增强上述图片的局部特征的明显性。

在本发明实施方式的第四方面中,提供了一种神经网络训练装置,其中,上述神经网络的隐含层中至少包括全局隐含层和视觉注意力层,上述全局隐含层用于提取图片的全局特征,上述视觉注意力层用于提取图片的局部特征,上述装置包括第二获取模块,用于获取图片样本数据,其中,上述图片样本数据至少包括携带有特定信息的图片的数据;输入模块,用于将上述图片样本数据中每一张图片的数据输入上述神经网络,以训练上述全局隐含层;以及训练模块,用于基于训练上述全局隐含层时输出的图片的全局特征,训练上述视觉注意力层。

在本发明的一个实施例中,上述训练模块包括压缩单元,用于在上述图片的通道数量为多个的情况下,对上述图片的全局特征进行压缩,得到上述图片的单通道全局特征;以及训练单元,用于基于上述图片的单通道全局特征训练上述视觉注意力层。

在本发明的另一个实施例中,上述神经网络至少还包括第一全连接层、第二全连接层和激活层,上述训练单元包括第一输出子单元,用于将上述图片的单通道全局特征输入上述第一全连接层,输出第一全连接特征;第二输出子单元,用于将上述第一全连接特征输入上述第二全连接层,输出第二全连接特征;第三输出子单元,用于将上述第二全连接特征输入上述激活层,输出激活后的全局特征;以及训练子单元,用于基于上述激活后的全局特征训练上述视觉注意力层,其中,上述视觉注意力层的权重参数用于增强图片的局部特征的明显性。

在本发明实施方式的第五方面中,提供了一种介质,存储有计算机可执行指令,上述指令在被处理单元执行时用于实现如上所述的利用神经网络识别图片的方法或如上所述的神经网络训练方法。

在本发明实施方式的第六方面中,提供了一种计算设备,包括处理单元;以及存储单元,存储有计算机可执行指令,上述指令在被上述处理单元执行时用于实现如上所述的利用神经网络识别图片的方法或如上所述的神经网络训练方法。

根据本发明的实施方式,通过构建包含全局隐含层和视觉注意力层的神经网络,在全局隐含层输出图片的全局特征的情况下,将全局特征输入视觉注意力层,并输出图片的局部特征,可以自动聚焦于图片上的敏感区域,根据图片的局部特征确定图片是否携带有例如表征推广意图的信息的特定信息。本发明在利用全局特征的同时又充分考虑了局部特征,从而提高对垃圾广告图像的识别率,视觉注意力层的引入并没有带来较大的计算量和参数量,不影响原有分类模型的性能。达到了对携带有用于表征推广意图的信息的图片进行有效的处理,并且减少了误判或漏判的次数的效果。

附图说明

通过参考附图阅读下文的详细描述,本发明示例性实施方式的上述以及其他目的、特征和优点将变得易于理解。在附图中,以示例性而非限制性的方式示出了本发明的若干实施方式,其中:

图1示意性地示出了根据本发明实施例的在正常图片中携带微信号的不正当信息的示意图;

图2示意性地示出了根据本发明实施例的应用场景示意图;

图3示意性地示出了根据本发明实施例的利用神经网络识别图片的方法的流程图;

图4示意性示出了根据本发明另一实施例的利用神经网络识别图片的方法的流程图;

图5示意性示出了根据本发明实施例的对图片的全局特征进行压缩,得到图片的单通道全局特征的流程图;

图6示意性示出了根据本发明实施例的神经网络训练方法的流程图;

图7示意性示出了根据本发明实施例的训练视觉注意力层的示意图;

图8示意性示出了根据本发明实施例的训练视觉注意力层的流程图;

图9示意性示出了根据本发明实施例的基于图片的单通道全局特征训练视觉注意力层的流程图;

图10示意性示出了根据本发明另一实施例的训练视觉注意力层的示意图;

图11示意性示出了根据本发明实施例的sigmoid函数曲线图;

图12示意性示出了根据本发明实施例的tile操作复制c次的示意图;

图13示意性示出了根据本发明实施例的reshape操作示意图;

图14示意性示出了根据本发明实施例的注意力分布情况的示意图;

图15示意性地示出了根据本发明实施例的利用神经网络识别图片的装置的框图;

图16示意性地示出了根据本发明另一实施例的利用神经网络识别图片的装置的框图;

图17示意性地示出了根据本发明实施例的压缩模块的框图;

图18示意性地示出了根据本发明实施例的神经网络训练装置的框图;

图19示意性地示出了根据本发明实施例的训练模块的框图;

图20示意性地示出了根据本发明实施例的训练单元的框图;

图21示意性地示出了根据本发明实施方式的用于实现利用神经网络识别图片的方法或神经网络训练方法的程序产品示意图;以及

图22示意性地示出了根据本发明实施例的用于实现利用神经网络识别图片的方法或神经网络训练方法的计算设备的框图。

在附图中,相同或对应的标号表示相同或对应的部分。

具体实施方式

下面将参考若干示例性实施方式来描述本发明的原理和精神。应当理解,给出这些实施方式仅仅是为了使本领域技术人员能够更好地理解进而实现本发明,而并非以任何方式限制本发明的范围。相反,提供这些实施方式是为了使本公开更加透彻和完整,并且能够将本公开的范围完整地传达给本领域的技术人员。

本领域技术人员知道,本发明的实施方式可以实现为一种系统、装置、设备、方法或计算机程序产品。因此,本公开可以具体实现为以下形式,即:完全的硬件、完全的软件(包括固件、驻留软件、微代码等),或者硬件和软件结合的形式。

根据本发明的实施方式,提出了一种利用神经网络识别图片的方法、一种神经网络训练方法、一种利用神经网络识别图片的装置、一种神经网络训练装置、一种介质和一种计算设备。

在本文中,需要理解的是,所涉及的术语包括:全连接层,起源于多层感知机制,其输出的每个神经元由所有输入神经元加权得到。

卷积层,与全连接层不同,可以用于处理2d图像特征,输出的神经元由局部(感受视野内)的输入神经元加权得到,卷积核大小决定了其感受视野,通过滑窗的方式得到整张输出特征图,卷积核参数在一个卷积层内是共享的。

深度卷积神经网络(deepconvolutionalneuralnetwork,dcnn),通常是指包含多层巻积层的神经网络。

视觉注意力机制,深度卷积神经网络中间隐含层中的神经元激活响应模式随着目标的坐标位置而发生相应变化的机制。

此外,附图中的任何元素数量均用于示例而非限制,以及任何命名都仅用于区分,而不具有任何限制含义。

下面参考本发明的若干代表性实施方式,详细阐释本发明的原理和精神。

发明概述

本发明人发现,随着网络技术的不断发展,在社交媒体等图片反垃圾中,部分信息发布者为了达到自身的某些目的,往往会在正常图片中携带有例如用于表征推广意图的信息的特定信息,而这些信息通常情况下是不正当的信息,例如,黑灰产发布者往往在正常图片中裹挟违法广告信息。目前业界采用两种方法,一是采用全局图像特征用来推理,不能较准确获取关键信息,往往造成漏判。二是基于多个感兴趣区域进行识别,但对每一个区域都进行识别,大大增加了计算负担。

基于以上分析,发明人构想到通过挖掘深度卷积神经网络中隐含层的神经元响应模式,在隐含层中加入视觉注意力层(visualattentionlayer),通过训练视觉注意力层权重,增加敏感区域的特征占比,通过视觉注意力层提取图片的局部特征。

根据本发明的实施方式,通过构建包含全局隐含层和视觉注意力层的神经网络,在全局隐含层输出图片的全局特征的情况下,将全局特征输入视觉注意力层,并输出图片的局部特征,可以自动聚焦于图片上的敏感区域,根据图片的局部特征确定图片是否携带有表征推广意图的信息。本发明在利用全局特征的同时又充分考虑了局部特征,从而提高对垃圾广告图像的识别率,视觉注意力层的引入并没有带来较大的计算量和参数量,不影响原有分类模型的性能。达到了对携带有用于表征推广意图的信息的图片进行有效的处理,并且减少了误判或漏判的次数的效果。

在介绍了本发明的基本原理之后,下面具体介绍本发明的各种非限制性实施方式。

应用场景总览

首先参考图2详细阐述本发明实施例的利用神经网络识别图片的方法及装置、神经网络训练方法及装置的应用场景。

图2示意性地示出了根据本发明实施例的应用场景示意图。

如图2所示,根据该实施例的应用场景的系统架构100可以包括终端设备101、102、103,网络104和服务器105。网络104用以在终端设备101、102、103和服务器105之间提供通信链路的介质。网络104可以包括各种连接类型的网络,例如有线和/或无线通信网络等等。

用户可以使用终端设备101、102、103通过网络104与服务器105交互,以接收或发送消息等。终端设备101、102、103上可以安装有各种客户端应用,例如社交应用、新闻资讯应用等(仅为示例)。

终端设备101、102、103可以是具有显示屏的各种电子设备,包括但不限于智能手机、平板电脑、膝上型便携计算机和台式计算机等等。

服务器105可以是提供各种服务的服务器,例如对用户利用终端设备101、102、103与其他用户进行交流或对其他资源提供支持的后台管理服务器(仅为示例)。后台管理服务器可以对接收到的用户操作数据进行分析等处理,并将处理结果(例如根据用户请求获取或生成的页面、信息、或数据等)反馈给终端设备。

需要说明的是,本发明的实施例所提供的利用神经网络识别图片的方法可以由终端设备101、102、或103执行,或者也可以由不同于终端设备101、102、或103的其他终端设备执行。相应地,本发明的实施例所提供的利用神经网络识别图片的装置也可以设置于终端设备101、102、或103中,或设置于不同于终端设备101、102、或103的其他终端设备中。

例如,终端设备101获取待识别的图片数据,然后将图片数据输入到包括全局隐含层和视觉注意力层的神经网络中,输出图片的局部特征,可以自动聚焦于图片上的敏感区域,根据图片的局部特征确定图片是否携带有表征推广意图的信息。

另一方面,本发明的实施例所提供的神经网络训练方法也可以由终端设备101、102、或103执行,或者也可以由不同于终端设备101、102、或103的其他终端设备执行。例如,终端设备101获取图片样本数据,其中,图片样本数据至少包括携带有表征推广意图的信息的图片的数据,在终端设备101中构建神经网络,将图片样本数据中每一张图片的数据输入神经网络,以训练全局隐含层;基于训练全局隐含层时输出的图片的全局特征,训练视觉注意力层。本发明的实施例所提供的神经网络训练装置也可以设置于终端设备101、102、或103中,或设置于不同于终端设备101、102、或103的其他终端设备中。

或者,本发明的实施例所提供的利用神经网络识别图片的方法也可以由服务器105执行。相应地,本发明的实施例所提供的利用神经网络识别图片的装置一般也可以设置于服务器105中。本发明的实施例所提供的利用神经网络识别图片的方法也可以由不同于服务器105且能够与终端设备101、102、103和/或服务器105通信的服务器或服务器集群执行。相应地,本发明的实施例所提供的利用神经网络识别图片的装置也可以设置于不同于服务器105且能够与终端设备101、102、103和/或服务器105通信的服务器或服务器集群中。

另一方面,本发明的实施例所提供的神经网络训练方法也可以由服务器105执行。相应地,本发明的实施例所提供的神经网络训练装置一般也可以设置于服务器105中。例如,服务器105获取图片样本数据,其中,图片样本数据至少包括携带有例如表征推广意图的信息的特定信息的图片的数据,在服务器105中构建神经网络,将图片样本数据中每一张图片的数据输入神经网络,以训练全局隐含层;基于训练全局隐含层时输出的图片的全局特征,训练视觉注意力层。相应地,本发明的实施例所提供的神经网络训练装置也可以设置于不同于服务器105且能够与终端设备101、102、103和/或服务器105通信的服务器或服务器集群中。

应该理解,图2中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。

示例性方法

下面结合图2的应用场景,参考图3来描述根据本发明示例性实施方式的利用神经网络识别图片的方法。需要注意的是,上述应用场景仅是为了便于理解本发明的精神和原理而示出,本发明的实施方式在此方面不受任何限制。相反,本发明的实施方式可以应用于适用的任何场景。

图3示意性地示出了根据本发明实施例的利用神经网络识别图片的方法的流程图。

根据本发明的实施例,神经网络的隐含层中至少包括全局隐含层和视觉注意力层,全局隐含层用于提取图片的全局特征,视觉注意力层用于提取图片的局部特征,如图3所示,利用神经网络识别图片的方法包括操作s210~操作s240。

在操作s210,获取图片数据。

在操作s220,将图片数据输入神经网络,在传输到全局隐含层的情况下,输出图片的全局特征。

在操作s230,将图片的全局特征输入视觉注意力层,并输出图片的局部特征。

在操作s240,根据图片的局部特征确定图片是否携带有特定信息。

根据本发明的实施例,全局隐含层输出的图片的全局特征可以是图片不同位置的多个特征,以人物照片为例,全局隐含层可以输出照片中人物的轮廓,照片中的字幕等多个特征信息。

将全局隐含层输出的图片的全局特征输入到视觉注意力层,经过神经元的检测之后,可以输出图片的局部特征,一般情况下,该局部特征表征的信息往往是图片中可以用于体现推广意图的特定信息。例如,输出照片中的字幕特征。视觉注意力层可以是基于视觉注意力机制训练的,视觉注意力层中的神经元激活响应模式随着目标特征的坐标位置而发生相应变化。

根据本发明的实施例,图片上携带有特定信息的方式包括多种,例如,包括但不限于图上有文字/水印、文字图片翻拍、二维码等形式。携带有表征推广意图的信息的图片一般可以视为广告图片,图中包含有明确语义的信息以体现推广意图。

根据本发明的实施方式,通过构建包含全局隐含层和视觉注意力层的神经网络,在全局隐含层输出图片的全局特征的情况下,将全局特征输入视觉注意力层,并输出图片的局部特征,可以自动聚焦于图片上的敏感区域,根据图片的局部特征确定图片是否携带有表征推广意图的信息。本发明在利用全局特征的同时又充分考虑了局部特征,从而提高对垃圾广告图像的识别率,视觉注意力层的引入并没有带来较大的计算量和参数量,不影响原有分类模型的性能。达到了对携带有用于表征推广意图的信息的图片进行有效的处理,并且减少了误判或漏判的次数的效果。

根据本发明的实施例,在将图片数据输入神经网络之前,利用神经网络识别图片的方法还包括将图片的尺寸调整至预设尺寸,以实现对图片进行预处理。

根据本发明的实施例,获取到的图片的尺寸可能大小不一,为了便于图片识别,可以将图片的尺寸调整至预设尺寸,进一步地,还可以将图片中的每个像素点的像素值减去均值,以消除光照等其它因素对图片的影响。

下面参考图4~图5,结合具体实施例对图3所示的方法做进一步说明。

图4示意性示出了根据本发明另一实施例的利用神经网络识别图片的方法的流程图。

如图4所示,利用神经网络识别图片的方法还包括操作s250~操作s270。

在操作s250,确定图片的通道数量。

在操作s260,在图片的通道数量为多个的情况下,对图片的全局特征进行压缩,得到图片的单通道全局特征。

在操作s270,将图片的单通道全局特征输入视觉注意力层,并输出图片的局部特征。

根据本发明的实施例,为了设计合理的空域上的视觉注意力层,需要确定图像空域位置间的相互关系。可以通过一层卷积核大小为1*1,输出通道数为1的卷积层将空域某个位置(空域大小为w*h)处c个通道上的全部信息压缩成一个空域位置描述量,即:

其中,vs表示空域s处的全部特征,k表示待学习的1*1卷积核,c为图片的通道数量。因此对于特征维度为w*h*c的输入特征,经过通道级别的全局特征压缩之后,输出特征维度为w*h*1,即得到图片的单通道全局特征,该特征综合考虑了某个空间位置上全部通道(c个通道)上的信息,后续将用于预测图像空域注意力分布情况。

根据本发明的实施例,在通道级别的全局特征压缩之后可以不接激活层,可以防止激活层对通道数目小(这里通道数目为1)的特征张量造成较大的信息损耗,以保证足够的特征表述容量。

图5示意性示出了根据本发明实施例的对图片的全局特征进行压缩,得到图片的单通道全局特征的流程图。

如图5所示,对图片的全局特征进行压缩,得到图片的单通道全局特征包括操作s261~操作s263。

在操作s261,获取图片的各个局部区域在图片中的位置信息。

在操作s262,将属于同一位置的不同通道上的特征点的特征值与预设卷积核作卷积,得到不同通道上属于同一位置的卷积值。

在操作s263,将不同通道上属于同一位置的卷积值进行加和,得到的加和结果作为图片的单通道全局特征。

根据本发明的实施例,可以将空域某个位置(空域大小为w*h)处c个通道上的全部信息压缩成一个空域位置描述量。例如,可以是将属于同一位置的不同通道上的特征点的特征值与预设卷积核作卷积,得到不同通道上属于同一位置的卷积值,将属于同一位置的卷积值进行加和,得到的结果作为图片该位置上的单通道全局特征。

根据本发明的实施例,将多通道的图片同一位置上的信息压缩成一个空域位置描述量,可以用于预测图片空域注意力分布情况。

根据本发明的实施例,利用神经网络识别图片的方法还包括将图片的单通道全局特征输入视觉注意力层时,将图片的单通道全局特征与视觉注意力层的权重参数相乘,得到的结果作为图片的局部特征,其中,视觉注意力层的权重参数用于增强图片的局部特征的明显性。

根据本发明的实施例,当图片的单通道全局特征传递并输入至视觉注意力层的情况下,获取图像空域位置的权重参数,将图片的单通道全局特征与视觉注意力层的权重参数相乘,图片每个位置上的单通道全局特征都可以与相应的权重参数相乘,得到视觉注意力加权特征,作为图片的局部特征。

根据本发明的实施例,还可以对视觉注意力加权特征进行池化,池化特征结合全连接层得到全连接分类特征,将全连接分类特征通过softmax函数得到置信分数,用于确定全连接分类特征的分类。

根据本发明的实施例,通过将图片的单通道全局特征与视觉注意力层的权重参数相乘,可以增强图片的局部特征的明显性。

图6示意性示出了根据本发明实施例的神经网络训练方法的流程图。

根据本发明的实施例,神经网络的隐含层中至少包括全局隐含层和视觉注意力层,全局隐含层用于提取图片的全局特征,视觉注意力层用于提取图片的局部特征,如图6所示,神经网络训练方法包括操作s510~操作s530。

在操作s510,获取图片样本数据,其中,图片样本数据至少包括携带有特定信息的图片的数据。

在操作s520,将图片样本数据中每一张图片的数据输入神经网络,以训练全局隐含层。

在操作s530,基于训练全局隐含层时输出的图片的全局特征,训练视觉注意力层。

根据本发明的实施例,可以对带有表征推广意图的信息的图片进行标注,用标注好的图片样本数据训练神经网络。在获取到图片样本数据之后,可以对图片样本进行预处理,将图像大小规整到深度模型的输入大小(w0*h0),并减去均值。

根据本发明的实施例,上述神经网络可以采用深度卷积神经网络,在深度卷积神经网络的隐藏层中增加视觉注意力层,用于提取图片的局部特征。视觉注意力层根据输入特征中第i个空域位置计算权重参数(可以是各元素都相等的向量),最后的输出表示为

图7示意性示出了根据本发明实施例的训练视觉注意力层的示意图。

如图7所示,在中间隐含层中加入视觉注意力层,通过自学习的方式对图像空域不同位置处的特征赋予不同的权重,得到视觉注意力层的权重参数α,作用于输入的深度卷积特征v之上,得到注意力加权特征f。可以增加图片中敏感区域的特征占比,增大广告垃圾图像的拦截成功率。

根据本发明的实施方式,通过构建包含全局隐含层和视觉注意力层的神经网络,在全局隐含层输出图片的全局特征的情况下,将全局特征输入视觉注意力层,以训练视觉注意力层,使得视觉注意力层可以输出图片的局部特征,可以自动聚焦于图片上的敏感区域,根据图片的局部特征确定图片是否携带有表征推广意图的信息。本发明在利用全局特征的同时又充分考虑了局部特征,从而提高对垃圾广告图像的识别率,视觉注意力层的引入并没有带来较大的计算量和参数量,不影响原有分类模型的性能。达到了对携带有用于表征推广意图的信息的图片进行有效的处理,并且减少了误判或漏判的次数的效果。

图8示意性示出了根据本发明实施例的训练视觉注意力层的流程图。

如图8所示,基于训练全局隐含层时输出的图片的全局特征,训练视觉注意力层包括操作s531~操作s532。

在操作s531,在图片的通道数量为多个的情况下,对图片的全局特征进行压缩,得到图片的单通道全局特征。

在操作s532,基于图片的单通道全局特征训练视觉注意力层。

根据本发明的实施例,训练视觉注意力层时要对每个空间位置的重要性进行估计,即确定视觉注意力层的权重参数,对于全局隐含层输出的图片的全局特征v,其特征维度为w*h*c,先使用1*1卷积核将通道数目压缩至单通道,此时维度为w*h*1。然后基于图片的单通道全局特征训练视觉注意力层。

根据本发明的实施例,在得到图片的单通道全局特征之后,此时维度为w*h*1,随后还可以通过两层全连接层,将特征映射到1*1*(w*h)大小,此处加全连接层的目的在于充分利用空间位置的相关性,因为各个空域位置上的信息不是独立的,而是与邻近的位置有着紧密的关系。其中为了降低计算量,第一全连接层可以先将特征维度压缩至1*1*(c/r),r为缩放系数,本神经网络结构可以选择r=16。

图9示意性示出了根据本发明实施例的基于图片的单通道全局特征训练视觉注意力层的流程图。

根据本公开的实施例,神经网络至少还包括第一全连接层、第二全连接层和激活层,如图9所示,基于图片的单通道全局特征训练视觉注意力层包括操作s5321~操作s5324。

在操作s5321,将图片的单通道全局特征输入第一全连接层,输出第一全连接特征。

在操作s5322,将第一全连接特征输入第二全连接层,输出第二全连接特征。

在操作s5323,将第二全连接特征输入激活层,输出激活后的全局特征。

在操作s5324,基于激活后的全局特征训练视觉注意力层,其中,视觉注意力层的权重参数用于增强图片的局部特征的明显性。

图10示意性示出了根据本发明另一实施例的训练视觉注意力层的示意图。

如图10所示,对于全局隐含层输出的图片的全局特征v,其特征维度为w*h*c,通过1x1卷积核(cov1*1)将通道数目压缩至单通道,此时维度为w*h*1。随后连接两层全连接层,第一全连接层(fc)可以先将特征维度压缩至1*1*(c/r),r为缩放系数,然后第二全连接层(fc)将特征映射到1*1*(w*h)大小,此处加全连接层的目的在于充分利用空间位置的相关性。

根据本公开的实施例,可以将全连接层的输出特征输入sigmoid层,即输入激活层,之后可以获得空域上每个位置的重要性程度,即权重参数αs。

图11示意性示出了根据本发明实施例的sigmoid函数曲线图。

sigmoid是神经网络中一种常用的激活函数,如图11所示,其输出值范围为[0,1],适合用来归一化概率。

根据本公开的实施例,如图10所示,在经过sigmoid层得到权重参数αs之后,可以使用一个tile层,在αs的第二个维度上复制c次(由于通道数量为c通道)。如图12所示,图12示意性示出了根据本发明实施例的tile操作复制c次的示意图,即为c个通道均复制一份权重参数αs,tile层输出的特征维度为1*c*(w*h),可见,tile层的设置有利于后续将权重参数αs作用于输入特征,从而得到图片的局部特征。

根据本公开的实施例,如图10所示,在另一个支路上,通过reshape操作将全局特征维度为w*h*c的输入特征重新排列为1*c*(w*h)的形式。如图13所示,图13示意性示出了根据本发明实施例的reshape操作示意图。

reshape操作和tile操作的设计只是为了方便计算权重参数αs。至此,两个支路的特征:reshape操作后的特征与tile层输出的扩充后的权重参数αs的矩阵维度已经一致(即都是1*c*(w*h)),两者进行逐点相乘运算(如数学上的哈达马积)后,可以得到图片的局部特征。为了后面的网络层能够正常工作,可以将其reshape返回原来的排列方式,即w*h*c,得到最终的注意力加权特征f,该特征将用于最后的分类决策。

图14示意性示出了根据本发明实施例的注意力分布情况的示意图。

注意力分布情况如图14所示,例如虚线区域表示受到较大注意力的区域,即对最终的垃圾广告图像分类结果起到较大影响的敏感区域,敏感区域的变动会引起注意力分布情况的改变。在实际图片识别过程中,可以改变受到较大注意力的区域的颜色值,从而标识垃圾广告图像的敏感区域。

根据本发明的实施例,在识别图片是否携带有特定信息的实际应用之前,即在将图片数据输入神经网络,以确定图片是否携带有特定信息之前,还可以预先训练好神经网络,然后再将图片数据输入到训练好的神经网络中。具体地,预先训练神经网络的方法可以是如图6、图8和图9所示的神经网络训练方法。例如,在将图片数据输入神经网络之前,先训练神经网络,该神经网络的隐含层中至少包括全局隐含层和视觉注意力层,全局隐含层用于提取图片的全局特征,视觉注意力层用于提取图片的局部特征,训练神经网络的具体步骤可以是先获取图片样本数据,其中,图片样本数据至少包括携带有特定信息的图片的数据;然后将图片样本数据中每一张图片的数据输入神经网络,以训练全局隐含层;最后基于训练全局隐含层时输出的图片的全局特征,训练视觉注意力层。

由此可见,本公开的各个实施例和/或权利要求中记载的特征可以进行多种组合或/或结合,即使这样的组合或结合没有明确记载于本公开中。特别地,在不脱离本公开精神和教导的情况下,本公开的各个实施例和/或权利要求中记载的特征可以进行多种组合和/或结合。所有这些组合和/或结合均落入本公开的范围。

示例性装置

在介绍了本发明示例性实施方式的方法之后,接下来,参考图15对本发明示例性实施方式的利用神经网络识别图片的装置进行描述。

图15示意性地示出了根据本发明实施例的利用神经网络识别图片的装置的框图。

根据本发明的实施例,神经网络的隐含层中至少包括全局隐含层和视觉注意力层,全局隐含层用于提取图片的全局特征,视觉注意力层用于提取图片的局部特征,如图15所示,该利用神经网络识别图片的装置600包括第一获取模块610、第一输出模块620、第二输出模块630和第一确定模块640。

第一获取模块610用于获取图片数据。

第一输出模块620用于将图片数据输入神经网络,在传输到全局隐含层的情况下,输出图片的全局特征。

第二输出模块630用于将图片的全局特征输入视觉注意力层,并输出图片的局部特征。

第一确定模块640用于根据图片的局部特征确定图片是否携带有特定信息。

根据本发明的实施方式,通过构建包含全局隐含层和视觉注意力层的神经网络,在全局隐含层输出图片的全局特征的情况下,将全局特征输入视觉注意力层,并输出图片的局部特征,一般情况下,该局部特征表征的信息往往是图片中可以用于体现推广意图的特定信息,可以自动聚焦于图片上的敏感区域,根据图片的局部特征确定图片是否携带有表征推广意图的信息。本发明在利用全局特征的同时又充分考虑了局部特征,从而提高对垃圾广告图像的识别率,视觉注意力层的引入并没有带来较大的计算量和参数量,不影响原有分类模型的性能。达到了对携带有用于表征推广意图的信息的图片进行有效的处理,并且减少了误判或漏判的次数的效果。

图16示意性地示出了根据本发明另一实施例的利用神经网络识别图片的装置的框图。

如图16所示,利用神经网络识别图片的装置600还包括调整模块650,用于在将图片数据输入神经网络之前,将图片的尺寸调整至预设尺寸,以实现对图片进行预处理。

根据本发明的实施例,获取到的图片的尺寸可能大小不一,为了便于图片识别,可以将图片的尺寸调整至预设尺寸,进一步地,还可以将图片中的每个像素点的像素值减去均值,以消除光照等其它因素对图片的影响。

根据本发明的实施例,利用神经网络识别图片的装置600还包括第二确定模块660、压缩模块670和第三输出模块680。

第二确定模块660用于确定图片的通道数量;

压缩模块670用于在图片的通道数量为多个的情况下,对图片的全局特征进行压缩,得到图片的单通道全局特征;以及

第三输出模块680用于将图片的单通道全局特征输入视觉注意力层,并输出图片的局部特征。

图17示意性地示出了根据本发明实施例的压缩模块的框图。

如图17所示,压缩模块670包括获取单元671、卷积单元672和计算单元673。

获取单元671用于获取图片的各个局部区域在图片中的位置信息。

卷积单元672用于将属于同一位置的不同通道上的特征点的特征值与预设卷积核作卷积,得到不同通道上属于同一位置的卷积值。

计算单元673用于将不同通道上属于同一位置的卷积值进行加和,得到的加和结果作为图片的单通道全局特征。

根据本发明的实施例,将多通道的图片同一位置上的信息压缩成一个空域位置描述量,可以用于预测图片空域注意力分布情况。

根据本发明的实施例,利用神经网络识别图片的装置600还包括处理模块690。

处理模块690用于将图片的单通道全局特征输入视觉注意力层时,将图片的单通道全局特征与视觉注意力层的权重参数相乘,得到的结果作为图片的局部特征,其中,视觉注意力层的权重参数用于增强图片的局部特征的明显性。

根据本发明的实施例,通过将图片的单通道全局特征与视觉注意力层的权重参数相乘,可以增强图片的局部特征的明显性。

图18示意性地示出了根据本发明实施例的神经网络训练装置的框图。

根据本发明的实施例,神经网络的隐含层中至少包括全局隐含层和视觉注意力层,全局隐含层用于提取图片的全局特征,视觉注意力层用于提取图片的局部特征,如图18所示,神经网络训练装置700包括第二获取模块710、输入模块720和训练模块730。

第二获取模块710用于获取图片样本数据,其中,图片样本数据至少包括携带有特定信息的图片的数据。

输入模块720用于将图片样本数据中每一张图片的数据输入神经网络,以训练全局隐含层。

训练模块730用于基于训练全局隐含层时输出的图片的全局特征,训练视觉注意力层。

根据本发明的实施方式,通过构建包含全局隐含层和视觉注意力层的神经网络,在全局隐含层输出图片的全局特征的情况下,将全局特征输入视觉注意力层,以训练视觉注意力层,使得视觉注意力层可以输出图片的局部特征,可以自动聚焦于图片上的敏感区域,根据图片的局部特征确定图片是否携带有特定信息。本发明在利用全局特征的同时又充分考虑了局部特征,从而提高对垃圾广告图像的识别率,视觉注意力层的引入并没有带来较大的计算量和参数量,不影响原有分类模型的性能。达到了对携带有用于表征推广意图的信息的图片进行有效的处理,并且减少了误判或漏判的次数的效果。

图19示意性地示出了根据本发明实施例的训练模块的框图。

如图19所示,训练模块730包括压缩单元731和训练单元732。

压缩单元731用于在图片的通道数量为多个的情况下,对图片的全局特征进行压缩,得到图片的单通道全局特征。

训练单元732用于基于图片的单通道全局特征训练视觉注意力层。

图20示意性地示出了根据本发明实施例的训练单元的框图。

根据本发明的实施例,神经网络至少还包括第一全连接层、第二全连接层和激活层,如图20所示,训练单元732包括第一输出子单元7321、第二输出子单元7322、第三输出子单元7323和训练子单元7324。

第一输出子单元7321用于将图片的单通道全局特征输入第一全连接层,输出第一全连接特征。

第二输出子单元7322用于将第一全连接特征输入第二全连接层,输出第二全连接特征。

第三输出子单元7323用于将第二全连接特征输入激活层,输出激活后的全局特征。

训练子单元7324用于基于激活后的全局特征训练视觉注意力层,其中,视觉注意力层的权重参数用于增强图片的局部特征的明显性。

根据本公开的实施例,可以将全连接层的输出特征输入sigmoid层,即输入激活层,之后可以获得空域上每个位置的重要性程度,即权重参数αs。

根据本发明的实施例,利用神经网络识别图片的装置600除了包括上述图15至17所描述的模块和单元之外,还可以包括上述图18至20所述描述的神经网络装置700中所包含的模块、单元和子单元。具体地,例如,如图15中的利用神经网络识别图片的装置600除了包括第一获取模块610、第一输出模块620、第二输出模块630和第一确定模块640之外,还可以包括如图18中的第二获取模块710、输入模块720和训练模块730,以使得在通过利用神经网络识别图片的装置600识别图片是否携带有特定信息的实际应用之前,即在将图片数据输入神经网络,以确定图片是否携带有特定信息之前,还可以预先训练好神经网络,然后再将图片数据输入到训练好的神经网络中。

由此可见,本公开的各个实施例和/或权利要求中记载的特征可以进行多种组合或/或结合,即使这样的组合或结合没有明确记载于本公开中。特别地,在不脱离本公开精神和教导的情况下,本公开的各个实施例和/或权利要求中记载的特征可以进行多种组合和/或结合。所有这些组合和/或结合均落入本公开的范围。

示例性介质

在介绍了本发明示例性实施方式的装置之后,接下来,参考图21对本发明示例性实施方式的、用于存储有计算机可执行指令,该指令在被处理单元执行时用于实现上述利用神经网络识别图片的方法或神经网络训练方法的介质进行描述。

在一些可能的实施方式中,本发明的各个方面还可以实现为一种程序产品的形式,其包括程序代码,当所述程序产品在计算设备上运行时,所述程序代码用于使所述计算设备执行本说明书上述“示例性方法”部分中描述的根据本发明各种示例性实施方式的利用神经网络识别图片的方法中的操作,或者使得所述处理单元执行本说明书上述“示例性方法”部分中描述的根据本发明各种示例性实施方式的神经网络训练方法中的操作。例如,所述处理单元可以执行如图3中所示的操作s210~操作s240。在操作s210,获取图片数据。在操作s220,将图片数据输入神经网络,在传输到全局隐含层的情况下,输出图片的全局特征。在操作s230,将图片的全局特征输入视觉注意力层,并输出图片的局部特征。在操作s240,根据图片的局部特征确定图片是否携带有特定信息。再例如,所述处理单元可以执行如图6中所示的操作s510~操作s530。在操作s510,获取图片样本数据,其中,图片样本数据至少包括携带有特定信息的图片的数据。在操作s520,将图片样本数据中每一张图片的数据输入神经网络,以训练全局隐含层。在操作s530,基于训练全局隐含层时输出的图片的全局特征,训练视觉注意力层。

所述程序产品可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。

图21示意性地示出了根据本发明实施方式的用于实现利用神经网络识别图片的方法或神经网络训练方法的程序产品示意图。

如图21所示,描述了根据本发明的实施方式的用于实现利用神经网络识别图片的方法或用于神经网络训练方法的程序产品80,其可以采用便携式紧凑盘只读存储器(cd-rom)并包括程序代码,并可以在计算设备,例如个人电脑上运行。然而,本发明的程序产品不限于此,在本文件中,可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。

可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括——但不限于——电磁信号、光信号或上述的任意合适的组合。可读信号介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。

可读介质上包含的程序代码可以用任何适当的介质传输,包括——但不限于——无线、有线、光缆,rf等等,或者上述的任意合适的组合。

可以以一种或多种程序设计语言的任意组合来编写用于执行本发明操作的程序代码,所述程序设计语言包括面向对象的程序设计语言——诸如java,c++等,还包括常规的过程式程序设计语言——诸如“c”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络——包括局域网(lan)或广域网(wan)——连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。

示例性计算设备

在介绍了本发明示例性实施方式的方法、介质和装置之后,接下来,参考图22对本发明示例性实施方式的计算设备进行描述,该计算设备包括处理单元和存储单元,存储单元存储有计算机可执行指令,上述指令在被上述处理单元执行时用于实现上述利用神经网络识别图片的方法或神经网络训练的方法。

本发明实施例还提供了一种计算设备。所属技术领域的技术人员能够理解,本发明的各个方面可以实现为系统、方法或程序产品。因此,本发明的各个方面可以具体实现为以下形式,即:完全的硬件实施方式、完全的软件实施方式(包括固件、微代码等),或硬件和软件方面结合的实施方式,这里可以统称为“电路”、“模块”或“系统”。

在一些可能的实施方式中,根据本发明的计算设备可以至少包括至少一个处理单元、以及至少一个存储单元。其中,所述存储单元存储有程序代码,当所述程序代码被所述处理单元执行时,使得所述处理单元执行本说明书上述“示例性方法”部分中描述的根据本发明各种示例性实施方式的利用神经网络识别图片的方法中的操作,或者使得所述处理单元执行本说明书上述“示例性方法”部分中描述的根据本发明各种示例性实施方式的神经网络训练方法中的操作。例如,所述处理单元可以执行如图3中所示的操作s210~操作s240。在操作s210,获取图片数据。在操作s220,将图片数据输入神经网络,在传输到全局隐含层的情况下,输出图片的全局特征。在操作s230,将图片的全局特征输入视觉注意力层,并输出图片的局部特征。在操作s240,根据图片的局部特征确定图片是否携带有特定信息。例如,所述处理单元可以执行如图6中所示的操作s510~操作s530。在操作s510,获取图片样本数据,其中,图片样本数据至少包括携带有特定信息的图片的数据。在操作s520,将图片样本数据中每一张图片的数据输入神经网络,以训练全局隐含层。在操作s530,基于训练全局隐含层时输出的图片的全局特征,训练视觉注意力层。

图22示意性地示出了根据本发明实施例的用于实现利用神经网络识别图片的方法或神经网络训练方法的计算设备的框图。

下面参照图22来描述根据本发明的这种实施方式的用于实现利用神经网络识别图片的方法或神经网络训练方法的计算设备90。如图22所示的计算设备90仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。

如图22所示,计算设备90以通用计算设备的形式表现。计算设备90的组件可以包括但不限于:上述至少一个处理单元901、上述至少一个存储单元902、连接不同系统组件(包括存储单元902和处理单元901)的总线903。

总线903包括数据总线、地址总线和控制总线。

存储单元902可以包括易失性存储器,例如随机存取存储器(ram)9021和/或高速缓存存储器9022,还可以进一步包括只读存储器(rom)9023。

存储单元902还可以包括具有一组(至少一个)程序模块9024的程序/实用工具9025,这样的程序模块9024包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。

计算设备90也可以与一个或多个外部设备904(例如键盘、指向设备、蓝牙设备等)通信,这种通信可以通过输入/输出(i/0)接口905进行。并且,计算设备90还可以通过网络适配器906与一个或者多个网络(例如局域网(lan),广域网(wan)和/或公共网络,例如因特网)通信。如图所示,网络适配器906通过总线903与计算设备90的其它模块通信。应当明白,尽管图中未示出,可以结合计算设备90使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、raid系统、磁带驱动器以及数据备份存储系统等。

应当注意,尽管在上文详细描述中提及了装置的若干单元/模块或子单元/模块,但是这种划分仅仅是示例性的并非强制性的。实际上,根据本发明的实施方式,上文描述的两个或更多单元/模块的特征和功能可以在一个单元/模块中具体化。反之,上文描述的一个单元/模块的特征和功能可以进一步划分为由多个单元/模块来具体化。

此外,尽管在附图中以特定顺序描述了本发明方法的操作,但是,这并非要求或者暗示必须按照该特定顺序来执行这些操作,或是必须执行全部所示的操作才能实现期望的结果。附加地或备选地,可以省略某些步骤,将多个步骤合并为一个步骤执行,和/或将一个步骤分解为多个步骤执行。

虽然已经参考若干具体实施方式描述了本发明的精神和原理,但是应该理解,本发明并不限于所公开的具体实施方式,对各方面的划分也不意味着这些方面中的特征不能组合以进行受益,这种划分仅是为了表述的方便。本发明旨在涵盖所附权利要求的精神和范围内所包括的各种修改和等同布置。

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