王宏宇
摘要:党的十九大报告提出“加强互联网内容建设,建立网络综合治理体系,营造清朗的网络空间。”,这是对新时期网络信息内容安全及管理的新要求。该文介绍了不良图片识别技术的发展现状和相关概念,并从卷积神经网络、迁移学习、类别响应图可视化和损失函数五个方面,说明了不良图片识别的有关技术特点和难点。
关键词:信息内容安全;不良图片识别
中图分类号:TP393 文献标识码:A 文章编号:1009-3044(2018)12-0195-02
当前互联网络已经成为影响广泛、传播力强大的大众传媒,各种信息通过文字、图片、视频等在网络上传播,极大地满足了公众的信息需求。但是虚假信息、垃圾信息、暴力色情等非法有害信息在网络传播中也不时出现,这给国家和社会带来了不可低估的破坏作用和负面影响。中国互联网络信息中心(CNNIC)发布的《第41次中国互联网络发展状况统计报告》显示:“截至2017年12月,中国网民规模达7.72亿,手机网民规模达7.53亿;网民仍以10-39岁群体为主,其中10—19 岁年龄段群體占比分别为19.6%,网民中学生群体占比仍然最高,为25.4%。”随着近几年移动社交类、UGC 类平台、App等应用每天产生大量图片,无数暴力、淫秽色情图片混杂其中,将会对青少年的身心健康成长带来不良影响,如何应对网络信息传播中出现的淫秽色情等不良图片信息问题,保障网络信息内容安全,成为业界急需研究的内容。以此为出发点,本文对如何识别网络上的各种不良非法图片进行了研究,以便有效及时的识别发现互联网信息传播中的各种不良非法图片信息,保障网络信息内容安全。
1 网络不良图片识别技术相关研究及概念
1.1 论文统计
在中国知网CNKI中以“不良图片识别”为关键词进行检索,检索时间从2005年1月1日到2017年12月31日,共检索到关于不良图片识别研究的论文2篇(含博、硕士论文)。以“不良图片识别”为主题检索,检索到论文12篇,均为2010年以后发表论文。由此可见业界对此方面的研究还较少,今后还需各界加以重视,加大研究力度。
1.2 相关概念
不良图片识别一般是指基于计算机视觉的不良图片检测。其发展过程主要经历以下三个阶段。第一人工阶段,互联网发展初期,网络信息较少,网络环境也不够稳定,网络不良图片识别主要靠“人肉攻略”,即人工肉眼查看,发现不良图片及时删除。第二算法过滤阶段,随着互联网的快速发展,网络数据量开始剧增,人工识别已难以为继。以肤色识别算法过滤“黄色”图片成为“不良图片识别”主流,此时计算机识别与人工审核分别占80%和20%。第三人工智能阶段,移动互联网的发展产生的网络数据量使人工审核20%的数据也难易实现,加上视频、直播等业务和数据的爆发式增长,纯靠肤色识别算法作为“过滤”的方式已经落后,此时机器学习开始作为一种新的方式,承担起网络不良图片识别的重任。
不良图片识别从机器学习的角度看,本质上是一个图像分类问题,即通过分类器来判断图片是否含有不良信息。一般来说主要有以下三个实现步骤:一是分类器数学模型预定义,即首先定义一个数学模型如[y=F(x)],把待识别的图片[x]作为输入值,然后通过定义设计的数学模型[F], 输出该图片为不良图片的概率[y]。该步骤的关键在于分类标准的定义,即什么样的图片是不良图片。这里的不良图片不单单是指“露点”图片,还包括不“露点”的色情、低俗图片,另外还要排除雕塑、艺术作品等正常图片。二是训练学习,该步骤首先收集大量的样本数据,然后通过图片识别训练学习,进行特征提取,得到数学模型定义中的[F],由于深度学习的神经网络模型在图像识别技术中获得了突破性的进展,目前一般不良图片的识别通常采用CNN(卷积神经网络)、GoogLeNet、ResNet(残差网络)三种深度网络模型结构。通过模型,高效地将图片数据转变成可以运算的数学模型,以便更快更好地得到[F]。三是确定模型,通过第二步的训练学习,经过不断地迭代、算法调参,最终确定越来越精准的数学模型[F]。
网络视频和直播中的不良信息鉴别,在本质上与不良图片识别类似。在鉴别视频和直播中的不良信息时,动态的内容可以解码成图像帧进行判断,这样就与静态图片鉴别方法相似了。
2 网络不良图片识别技术综述
如上所述,网络不良图片识别虽然是个图像分类问题,但是和常见的MNIST、CIFAR、ImageNet等分类任务不同,不良图片识别有如下特点和难点:一是多标签数据。和 ImageNet 等单标签数据集不同,不良图片识别模型面对的图片没有特定类型,画面中包含的物体也没有限制。如穿着暴露的人和全裸露点的人物同时出现在画面内,输出的最终结果不能是色情和性感,而是判定为色情图片,也就是说是个带优先级的分类任务。二是非符号化图像。在 ImageNet、CIFAR 等数据集中,图像内容往往是比较明确的,而在不良图片识别中,面向的是真实场景中的图像,包含大量的非符号化数据。三是数据特殊性。在不良图片识别任务中,色情和性感图片在像素空间占据的只是很小的区域,其他类别占据了绝大部分像素空间。而在模型中,一般则是期望模型学习到的特征主要是和色情和性感图片相关的特征。在用于分类的特征空间中,因为其他类别图片种类非常丰富,所以和色情、性感类别的分类边界是难以捉摸的,另一方面色情、性感类别图片因为常常很相似,所以分类边界的求解非常有难度。针对不良图片识别的特点和难点,现阶段的关键技术研究如下。
2.1 卷积神经网络
目前卷积神经网络(Convolutional Neural Network,CNN)已经应用在几乎所有图像分类任务中。早在 1989 年,LeCun等就发明了卷积神经网络,并且被广泛应用于美国的很多银行系统中,用来识别支票上的手写数字。2012 年,Krizhevsky使用扩展了深度的卷积神经网络 AlexNet 在 ILSVRC 比赛中的取得了当时最佳的分类效果,使得卷积神经网络逐渐受到研究者们的重视。2014年,Network in Network 被提出,[1×1]卷积和 GlobalPooling 被广泛应用。同年的 GoogLeNet 开始把“并联”卷积路径的方式发扬光大,并在 ILSVRC 中拿下了分类指标的冠军。2015 年,为了解决深度网络随着层数加深性能却退化的问题,何恺明提出了 Residual Block 并基于此和前人经验推出了 ResNet,ResNet 虽然看上去更深了,直观来理解其实是不同深度网络的一个 ensemble。沿着这个思路,Gao Huang等在 2016 年合作提出了 DenseNet,并获得了 2017 年 CVPR 最佳论文。也有沿着 GoogLeNet 继续把“并联”卷积研究到极致的,其主要的观点是,卷积核的维度和学习难度也直接相关,让卷积响应图之间去掉关联,既能学习到没有相关性的特征,还能降低卷积核学习的难度。总之研究者们在优化网络结构的道路上还在继续,不过从实用的角度看,越是复杂的网络,训练的难度也常常越高。研究者们在不良图片识别模型研发的长时间摸索中,发现 ResNet 是在训练难度和模型性能上最平衡的一种结构。
2.2 迁移学习
尽管网络上的不良图片比比皆是,但样本数据的积累却不是一蹴而就的。而且训练数据与所需进行的分类任务中的测试数据的特征分布不相同,这种情况下采用合适的迁移学习方法则可以大大提高样本不充足任务的分类识别结果。也就是通常所说的将知识迁移到新环境中的能力,这一般被称为迁移学习。具体应用到不良图片识别上,就是在基于其他经过大量数据训练过的卷积神经网络模型基础上,利用有限的数据进行参数微调。
微调的思路是:在神经网络中,特征是分层一步步组合的。低层参数学习的一般是线条,纹理,颜色等信息,再高一些的层学习到简单图案,形状等,最高层的参数学习到的是由底层特征组合成的语义信息。所以在不同任务中,低层的特征往往是差不多的,那么只需要改变高层的参数就可以在不同任务间最大化共享信息,并达到很好的泛化。也就是说在不良图片的检测中,背景画面部分就是一般的图片,色情内容其实也是人,很多信息是和一般数据集,如 ImageNet 数据共享的。所以只需要学习到针对色情图片的高层语义信息就可以用少量数据训练一个良好泛化的模型。为了实现微调,一般首先会找一个常见的基础模型,比如 ImageNet预训练好的各种流行网络结构。然后冻结低层参数的学习率,只让模型高层和语义相关的参数在少量样本上进行学习。
2.3 类别响应图可视化
当一个模型训练好之后,为了提升指标研究者会探索一些模型本身的特性,然后做针对性的改进,可视化是这一步骤中最常见的手段之一。较常用的方法是类别激活响应图(Class Activation Map,CAM)。该方法的基本思想是把 Global Pooling 之后,特定类别的权重应用在 pooling 之前的 feature channel上,然后按照像素加权求和,得到该类别激活在不同位置上的响应。通过这种方法可以了解当前类别中图像的哪些部分是主要的激活图案。在分析模型的漏检和误检样本的时候,研究者可通过这种方法分析模型对图像中人眼能立即识别的图案是否敏感,以确定改进模型时更新数据的策略。
2.4 损失函数
在进行机器学习任务时,一般来说使用的每一个算法都有一个目标函数,算法便是对这个目标函数进行优化,特别是在分类或者回归任务中,通常使用损失函数(Loss Function)作为其目标函数,又称为代价函数(Cost Function)。
损失函数是用来评价模型的预测值 [Y∧=F(x)]与真实值[Y]的不一致程度,它是一个非负实值函数。通常使用 [L(Y,F(x))]来表示,损失函数越小,模型的性能就越好。选择一个合适的损失函数,是成功训练一個深度学习模型的关键,也是机器学习研究者专注改进的目标。各种各样的损失函数层出不穷,其中包括:适用于训练回归任务的欧式距离损失函数(Euclidean Loss),适用于 Siamese 网络的对比损失函数(Contrastive loss),适用于一对多分类任务的铰链损失函数(Hinge Loss),预测目标概率分布的 Sigmoid 交叉熵损失函数(Sigmoid Cross Entropy Loss),信息增益损失函数(InformationGain Loss),多项式逻辑损失函数(Multinomial Logistic Loss),Softmax损失函数 (SoftmaxWithLoss) 等等。
TripletLoss 是一种基于欧式距离的损失函数,自从 Google 提出后,在人脸识别等领域得到了广泛应用。优化 TripletLoss 时,算法尽量减小正样例对的欧氏距离,增大负样例对的欧式距离。基于欧式距离的分类,主要缺陷是对锐化图像和模糊图像缺少区分能力。SoftmaxWithLoss 是深度学习分类任务中最常用的损失函数,softmax 采用了连续函数来进行函数的逼近,最后采用概率的形式进行输出,这样弱化了欧氏距离损失函数带来的问题。
3 结语
随着网络信息量的日益剧增,网络不良图片也随之泛滥。不良图片的识别技术也从以人工审核为主逐渐转变到以机器学习等人工智能技术为主的阶段。以机器学习为主的不良图片识别技术的重点虽然在算法上,但是算法本身的迭代优化速度没有数据迭代快,而且各种图片识别算法差距并不是多大,所以目前不良图片识别技术的优化差异依然是基于数据本身, 而数据的难点是数据多样化,而不是数据的纯数量。拥有更多数据类型,并且能针对不同数据应用场景提出最合适的数据模型,才是不良图片识别技术的关键所在。
参考文献:
[1] 陈骁,金鑫,谭晓阳.基于躯干检测的单人不良图片识别[J].中国图象图形学报,2016(3).
[2] 杨虹,王一丁.一种不良图片快速过滤方法[J].软件时空,2008(4).
[3] 周飞燕,金林鹏,董军.卷积神经网络研究综述[J].计算机学报,2017(6).
[4] 常亮,邓小明,周明全,等.图像理解中的卷积神经网络[J].自动化学报,2016(9).
[5] 卢庆武,胡辉,胡松,等.实际网络环境中不良图片的过滤方法分析[J].信息与电脑,2016(5).