一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

基于弱监督学习的App图像内容安全检测方法与流程

2021-11-05 22:57:00 来源:中国专利 TAG:

基于弱监督学习的app图像内容安全检测方法
技术领域
1.本发明涉及图像目标检测技术领域,具体涉及一种基于弱监督学习的app图像内容安全检测方法。


背景技术:

2.随着互联网行业的不断发展,各种各样的app已经与人们的生活息息相关。各种app的发展在方便人们生活的同时也隐含了大量的不良、违法信息。对于互联网公司来说,这些有害信息会使得app在应用商店里被下架,造成公司盈利上的损失;对于网民来说,有害信息的传播不利于青少年身心健康。因此,无论从哪个角度来看,app内容安全检测都是至关重要。
3.早期的app图像内容安全检测主要依靠人工识别,虽然人工审核的准确率比较可靠,但是纯人工检测的处理速度比较慢、效率低,同时对人工培训的代价过于庞大,对于中小企业来说是一个非常大的负担。近年来随着人工智能的发展,深度学习技术也应用到了app图像内容检测。传统的深度学习图像检测方法都是先用标注好的训练集放入到模型进行训练,这样虽然解决了上述人工检测存在的问题,但是用公开数据集进行训练的模型不太具有针对性。线上数据集的图像质量较差、特征大小不一、还有存在着人为掩盖的现象。因此,获取针对性的数据集的高置信标注是一个难点问题。


技术实现要素:

4.本发明的目的是为了克服背景技术中的不足之处,基于弱监督学习的app图像内容安全检测方法,融合弱监督学习以及多任务学习技术,构建一个可为app检测系统内部以及用户上传图片的方法。该方法是将弱监督学习的方法运用到数据集中,大量噪声标注数据和少量干净标注数据进行多任务训练,提升图像分类效果的同时也大大降低了图片标注的任务量,增强了该方法的鲁棒性。与此同时,该方法还增强了图像内容识别的泛化能力,可以适用于多种场景的app图像内容检测。
5.为了解决上述存在的技术问题,本发明是通过以下技术方案实现的:
6.一种基于弱监督学习的app图像内容安全检测方法,其包括以下步骤:
7.s1、首先对部分数据进行预处理,进而采用k

means聚类算法对数据进行训练,k

means算法将给定的数据集,按照样本之间的距离大小,将样本划分为k个数据簇,让簇内的点紧密相连,而让组间的距离拉大,将簇划分为(c1,c2,...c
k
),最小化平方误差e为:
[0008][0009]
其中,μ
i
是簇c
i
的均值向量,x为样本点的坐标,k为数据簇的个数;
[0010]
s2、训练完成之后会生成权重文件,然后将其余数据输出送入inception,通过inception再与resnet的输出相拼接,从而构成检测器,所述检测器以神经网络为基础框
架,通过组合其中的神经元以达到输出要求,单个神经元的表达式为:
[0011][0012]
其中,为上一级神经元的输入,为本级神经元的输出,代表各个神经元连接的权重,为偏置单元,用以修正输出,模型最终权重通过反向传播训练所获得;
[0013]
所述检测器的使用步骤如下:
[0014]
s21、采集用于训练检测器模型的数据,原始数据用数组的方式进行存储;
[0015]
s22、对采集到的数据进行贴标签处理,一张图片对应着一个标签,标签采用one

hot格式,以方便计算机进行处理;
[0016]
s23、采用弱监督学习的方式,对部分图片进行处理,将处理过的数据放入模型中进行多次训练,采用adam作为函数优化器,初步迭代500次,判断模型是否收敛,若收敛则根据模型损失来挑选出最优模型参数进行保存,用于之后的app图片检测,若不收敛,则继续进行迭代;
[0017]
s24、app端收集需要进行检测的图片,将图片传输到模型中进行检测,如果图片内容符合要求,则检测结束,如果图片不符合要求,则对app发出修改信息。
[0018]
优选地,所示检测器采用卷积神经网络框架,使用卷积层,采用的局部连接和权值共享的方式,减少权值的数量使得网络易于优化,同时降低模型的复杂度,减少过拟合的风险。
[0019]
优选地,收集含有违法信息的图片,并进行打包处理,若为单一类别检测模式,则将每个类别区分开来,然后将每个类别中的50%的数据进行贴标签处理;若为多类别检测模式,则将所有的图片均匀混合,然后将所有数据的50%进行贴标签处理。
[0020]
优选地,所收集的图片中,50%的图片用python中特有的库进行精准标注,其余图片利用k

means算法进行聚类标注。
[0021]
优选地,采用弱监督学习方法以减少数据标签的依赖性,降低前期的准备工作,整个算法的流程近似残差结构,使神经网络学习数据处理和未处理之间的差异,更好地检测出特征。
[0022]
优选地,模型的backbone部分采用resnet,使得学习结果堆网络权重的波动变化更加敏感,同时残差结果对数据的波动更加敏感,在算法部分加入inception结构,其结构能控制计算量和参数,获得良好的分类。
[0023]
优选地,训练app内容检测器的过程为:首先分别将精准标注的数据集和用k

means算法标注的数据集并行地整合成一个image batch,然后将这批数据送入到以卷积神经网络为核心的backbone中,本发明采用的backbone为resnet。
[0024]
与现有技术相比,本发明具有以下有益效果:
[0025]
(1)本发明应用于检测app图片内容时,能够根据需要,选择单一类别内容检测和多种类别内容检测,例如检测诈骗图片,通过改变该网络的权重参数,可以实现这种特定的类别内容检测;
[0026]
(2)本方法提出采取弱监督学习的方法,通过改变模型参数,可构建见出不同的app内容检测器,剔除不良、违法信息,为人们提供一个优质、安全的网络环境。
附图说明
[0027]
图1为本发明的整体流程图;
[0028]
图2为本发明的信息采集部分流程图;
[0029]
图3为本发明数据标注流程图;
[0030]
图4本发明的核心算法流程图;
[0031]
图5为本发明训练检测不同内容的算法流程图;
[0032]
图6为本发明的检测结果图。
具体实施方式
[0033]
下面将结合本发明实施例中附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅为本发明的一部分实施例,而不是全部实施例。通常在此处附图中描述和展示出的本发明实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本发明实施例的详细描述并非旨在限制本发明要求保护的范围,而是仅仅表示本发明的选定实施例。基于本发明的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的其他所有实施例,都属于本发明保护的范围。
[0034]
以下结合附图与具体实施方式对本发明做更为详细的说明:图1所示为本发明的整体流程图。s1、该方法首先对数据进行预处理,进而采用k

means聚类算法对数据进行训练;s2、训练完成之后会生成权重文件,该方法以resnet模型为基础,将部分数据输出送入inception,通过inception再与resnet的输出相拼接,从而构成检测器,检测器以神经网络为基础框架,通过组合其中的神经元以达到输出要求,单个神经元的表达式为:
[0035][0036]
其中,为上一级神经元的输入,为本级神经元的输出,代表各个神经元连接的权重,为偏置单元,用以修正输出,模型最终权重通过反向传播训练所获得。
[0037]
该检测器的使用步骤如下:
[0038]
s21、首先要采集用于训练模型的数据,此数据为图片,原始数据用数组的方式进行存储。
[0039]
s22、接着要对采集到的数据进行贴标签处理,一张图片对应着一个标签,为了方便数据在计算机中的处理,标签通常采用one

hot格式。
[0040]
s23、由于是采用弱监督学习的方式,因此只需要对部分图片进行此处理。将处理过的数据放入搭建好的模型中进行多次训练,采用adam作为函数优化器,初步迭代500次,判断模型是否收敛,若收敛则根据模型损失来挑选出最优模型参数进行保存,用于之后的app图片检测,若不收敛,则继续进行迭代。
[0041]
s24、与此同时app端要收集需要进行检测的图片,之后要将图片传输到模型中进行检测。如果图片内容符合要求,则检测结束,如果图片不符合要求,则对app发出一些整改建议。
[0042]
图2所示为本发明的信息采集部分流程图。需要从互联网或其他渠道搜集不同种类含有违法信息的图片,收集好之后需要按照需求进行打包处理,如果是单一类别检测模
式,则要将每个类别区分开来,然后将每个类别中的50%的数据进行贴标签处理;如果是多类别检测模式,则将所有的图片均匀混合,然后将所有数据的50%进行贴标签处理。
[0043]
图3为本发明的数据标注流程图。收集好的图片需要标注才可以进行之后的模型训练,由于采用的是弱监督学习方法,因此我们不需要将每副图片精准标注。50%的图片用python中特有的库进行精准标注,余下的50%则用k

means算法进行聚类标注。
[0044]
聚类的常见做法是同时提取n种特征,将它们放在一起组成一个n维向量,从而得到一个从原始数据集合到n维向量空间的映射—总是需要显式地或隐式地完成这样一个过程,然后基于某种规则进行分类,在该规则下,同组分类具有最大的相似性。
[0045]
k

means的算法原理就是将给定的数据集,按照样本之间的距离大小,将样本划分为k个数据簇。让簇内的点尽量紧密的连在一起,而让组间的距离尽可能的大。假设将簇划分为(c1,c2,...c
k
),则目标是最小化平方误差e:
[0046][0047]
其中,μ
i
是簇c
i
的均值向量,或者称为质心,x为样本点的坐标,k为数据簇的个数。
[0048]
图4为本发明的核心算法流程图,此算法的目的是训练app内容检测器。首先分别将精准标注的数据集和用k

means算法标注的数据集并行地整合成一个image batch。接着将这批数据送入到以卷积神经网络为核心的backbone中。本发明采用的backbone为resnet。
[0049]
resnet的主要思想是在网络中增加了直连通道,即highway network的思想。此前的网络结构是性能输入做一个非线性变换,而highway network则允许保留之前网络层的一定比例的输出。resnet的思想和highway network的思想也非常类似,允许原始输入信息直接传到后面的层中。
[0050]
这样的话一层的神经网络可以不用学习整个的输出,而是学习上一个网络输出的残差,因此resnet又叫做残差网络。
[0051]
提出残差学习的思想:传统的卷积网络或者全连接网络在信息传递的时候或多或少会存在信息丢失,损耗等问题,同时还有导致梯度消失或者梯度爆炸,导致很深的网络无法训练。resnet在一定程度上解决了这个问题,通过直接将输入信息绕道传到输出,保护信息的完整性,整个网络只需要学习输入、输出差别的那一部分,简化学习目标和难度。resnet最大的区别在于有很多的旁路将输入直接连接到后面的层,这种结构也被称为shortcut或者skip connections。
[0052]
在resnet网络结构中会用到两种残差模块,一种是以两个3*3的卷积网络串接在一起作为一个残差模块,另外一种是1*1、3*3、1*1的3个卷积网络串接在一起作为一个残差模块。resnet有不同的网络层数,比较常用的是50

layer、101

layer、152

layer。它们都是由上述的残差模块堆叠在一起实现的。
[0053]
图片经过backbone的处理之后还需要通过一个inception结构。
[0054]
inception结构的主要思路是:如何使用一个密集成分来近似或者代替最优的局部稀疏结构。
[0055]
采用不同大小的卷积核意味着不同大小的感受野,最后拼接意味着不同尺度特征
的融合;之所以卷积核大小采用1、3和5,主要是为了方便对齐;网络越到后面,特征越抽象,而且每个特征所涉及的感受野也更大了,因此随着层数的增加,3
×
3和5
×
5卷积的比例也要增加。
[0056]
图5为本发明训练检测不同内容的流程图。图5(a)、图5(b)两图只有在处理数据集的方式上有所不用。其中图5(a)是得到检测单一模型权重的流程图,先整理好同一类别的图片,之后输入到图四网络中,经过多次的迭代,根据损失函数的收敛情况来确定哪一次训练得到的参数是最优,进而保存此次参数,用于之后的图片内容检测。图5(b)是将多类别数据混合在一起,之后的流程与图5(a)相同。
[0057]
图6(a)~图6(d)为本发明的检测结果图,图中横纵坐标代表尺寸。将本发明所用到的算法用python ide和tensorflow等框架搭建而成。本发明所采用到算法约有500万参数。在经过500张图片进行训练后进行预测,以下五幅图是部分预测结果,预测结果均正确。实验结果说明本算法可以为app图片检测提供一种更加高效的方法。
[0058]
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有而各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。因注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献