APP下载

基于伴随文本信息的Web图像批量标注方法

2018-10-13郭蕾蕾段国仑陶性留

网络安全与数据管理 2018年9期
关键词:分词文档聚类

郭蕾蕾,俞 璐,段国仑,陶性留

(1.陆军工程大学 通信工程学院,江苏 南京 210007;2.陆军工程大学 指挥控制工程学院,江苏 南京 210007)

0 引言

随着互联网的迅速普及以及多媒体技术的快速发展,图像资源的数量急剧增长。如何快速、有效检索图像正逐渐成为学术界研究的一个热点,图像标注作为图像检索的核心,也越来越受到研究者的关注。同时图像标注具有广泛的应用领域和前景,在图像分析、图像理解、大规模图像管理等不同领域均有一定的应用和研究[1]。

传统的图像标注大都是人工标注,即专家手工地对图像进行文本注释。然而面对海量图像,人工标注费时费力,同时会带入某些主观因素,直接影响到图像标注的准确性。显然这种依赖人工方式实现的图像标注,已经无法满足需求[2],图像自动标注技术得以迅速发展。

所谓图像自动标注,就是让计算机自动地为图像添加上能够反映图像内容或用户意图的文本标签[3]。图像自动标注分为有监督学习的图像自动标注和无监督学习的图像自动标注。由于大多数网络图像集都未带语义标签,因此无监督的学习方法备受学者关注,这也是本文研究的一个重点内容。

互联网时代,大多数图像是Web图像。Web图像通常关联着丰富的文本信息,如图像文件名、周边文本等,图像的语义或多或少地都与这些关联文本相关,分析挖掘这些关联文本信息,可以更准确地对图像进行标注[4]。因此,在Web图像语义自动标注过程中,如何利用Web图像的伴随文本来提高标注性能是当前研究的热点之一。

为说明伴随文本信息对于图像标注的重要性,本文提出了一种仅利用图像伴随文本信息,而没有利用图像特征的批量标注方法。

1 相关工作

1.1 TF-IDF算法

TF-IDF(Term Frequency-Inverse Document Frequency)算法是一种广泛应用于信息检索和文本挖掘领域的常用技术。其主要思想是:如果某个词在某篇文档中出现的频率高,即TF高;在语料库其他文档中出现的频率低,即DF很低,也即IDF高,则认为这个词具有很好的区分能力[5]。

词频(Term Frequency)、逆文档频率(Inverse Document Frequency)的计算公式如下:

(1)

(2)

tfidfi,j=tfi,j×idfi

(3)

1.2 向量空间模型(VSM)

向量空间模型(VSM)是文本建模中常用的模型之一,它的主要思想是将文本用多维空间的向量来表示,每一个不同的特征项(词语或句子)对应向量空间的一维,而每一维的值就是对应的特征项在文本中的特征值。

通常,向量空间模型(VSM)将文本集中的每个文档di用特征权重向量(wi1,wi2,..,win)表示,其中wij表示特征词tj(j=1,2,…,n)的权重。向量空间模型的构造过程如图1所示[6]。

图1 向量空间模型构造过程图

1.3 Word2vec与Doc2vec

向量空间模型中的特征权重向量常用Word2vec模型获得。Word2vec是Google在2013年开源的一款将词表征为空间向量的模型工具,主要采用连续词袋模型(Continuous Bag-Of-Words,CBOW)以及Skip-gram模型[7]。它基于人工神经网络,通过多层感知机将初始的底层特征组合为更抽象的高层特征,并将高层特征用于普通的机器学习方法以得到更好的效果。Word2vec通过训练,可以把文本内容的处理简化为n维向量空间中的向量运算,向量空间上的相似度可以用来表示文本语义上的相似度。

虽然可以直接将句子/文档中所有词的向量取均值作为它们的向量表示,但是这样会忽略单词之间的排列顺序对句子或文本信息的影响。基于此,MIKOLOV T提出了Doc2vec模型。Doc2vec模型其实是在Word2vec模型的基础上做出的改进,基本思路很接近。

2 基于伴随文本信息的图像标注

针对传统人工标注所展现出来的缺点,本文提出了如图2所示的方法来批量自动标注图像。

图2 图像标注流程图

2.1 文本预处理

一般而言,相比处理整个句子的文本,处理一个词汇组成的列表更为简单,因此,需要采用分词技术将字词与字词分割开来,即进行分词处理。对于中文分词,目前技术比较成熟,常用的分词工具有jieba、NLPIR、THULAC等。

分词后的文本中通常会存在大量的虚词、代词、生僻词或者没有特定含义的词,这些词语对文本分析起不到任何帮助。在具体的文本处理中,通常情况下需要构建一个停用词表,通过字符串匹配或借助其他策略将文本中的停用词剔除[8],这个过程就是去除停用词。

接下来利用Doc2vec将文档向量化,把每一个文档表示成向量形式,以便后续进行计算与处理。

2.2 文本聚类

2.2.1聚类意义

本文研究的是无监督图像标注,没有样本类别信息可供学习,采用聚类方式至少有两个优点:

(1)通过聚类可以抽取样本的本质特征,过滤掉一些无关的或者特有的信息。比如对于多个描述“犬类”的文档,若不采用聚类,得到的图像标注可能是具体的描述,如“贵宾犬”、“牧羊犬”、“秋田犬”等,但事实上看到这些图像,只希望标注出“狗”、“犬”等即可,聚类可以达到此目的。

(2)通过聚类得到的簇中包含了多个具有共性的文档,可将整个簇中的文本所对应的图像用相同的词语进行标注,借此解决批量标注图像的难题,有利于提高海量图像管理与检索的效率。

2.2.2AP聚类

Affinity Propagation聚类算法又叫近邻传播算法,简称AP[9],其基本思想是将全部样本看作网络的节点,通过数据元素之间的消息传递,实现数据集合中元素的自适应聚类[10]。AP聚类的输入为节点间的相似度矩阵S,其中s(i,j)表示节点i与节点j之间的相似度值,表明了j作为i的聚类中心的能力。聚类过程中,共有两种消息在各节点间传递,分别是吸引度(responsibility)和归属度(availability)。AP算法通过迭代过程不断更新每一个节点的吸引度和归属度值,直到产生m个高质量的Exemplar(类似于质心),同时将其余的数据点分配到相应的聚类中。吸引度信息用r(i,k)表示,即数据点k适合作为数据点i的聚类中心的程度,r(i,k)值越大,则表示数据点k成为聚类中心的能力越强;归属度信息用a(i,k)表示,即数据点i选择数据点k作为聚类中心的合适程度。两种信息的迭代公式如下:

r(i,k)←s(i,k)-maxk′≠k{a(i,k′)+s(i,k′)}

(4)

(5)

(6)

其中,a(i,k′)表示除k外其他点对i点的归属度值,初始为0;r(i′,k)表示节点k作为除i外其他节点的聚类中心的吸引度值。在相似度矩阵中,索引相同的点(如s(i,i))的值称为参考度或偏好参数(preference),此参数会影响到最后聚类的数量,参考度越大说明某个数据点成为聚类中心的能力越强,则最终聚类中心的个数越多。迭代开始前假设所有点成为聚类中心的能力相同,因此参考度一般设为相似度矩阵中所有值的最小值或者中位数。

2.3 关键词抽取

关键词抽取就是从文本中把与这篇文档意义最相关的一些词抽取出来。从算法的角度来看,关键词抽取算法主要有两类:(1)有监督学习算法,将关键词抽取过程视为二分类问题,先抽取出候选词,对每个候选词划定标签,训练关键词抽取分类器;(2)无监督学习算法,先抽取出候选词,然后对各个候选词进行打分,输出topK个分值最高的候选词作为关键词。根据打分的策略不同,有不同的算法,例如TF-IDF、TextRank等算法。

基于TF-IDF的抽取算法对文档集中的每个文档提取分值最高的5个关键词,其抽取步骤如下:

(1)预处理,对文本进行分词和词性标注,将满足指定词性的词作为候选词;

(2)分别计算每个词的TF-IDF值;

(3)根据每个词的TF-IDF值降序排列,并输出5个词汇作为可能的关键词。

2.4 相似度度量

文本聚类后得到不同的簇,每个簇中包含不同数量的具有相似性的文档,而且经过Word2vec词向量化及关键词抽取后,每个文档已经提取出了5个最具代表性的关键词,且这些关键词都在语料库中并被表示为向量形式。为了批量标注图像,需要把位于同一个簇中的样本的共性提取出来,因此需要对词语进行相似度度量,选取相似度较大的几个词语作为该簇中的所有图像的标注。为此,选取网页中经常检索的词语构建一个候选词词典,并将该词典加入到语料库,训练模型,得到词语的向量表示,每个簇中的图像的最终标注就是从该候选词词典中选出的与抽取的关键词相似度较大的几个词语。

2.4.1候选词与文档关键词的相似度度量

相似度度量通常采用的方法是计算样本间的距离,余弦相似度是用向量空间中两个向量夹角的余弦值来衡量两个样本个体间差异的大小。假设有两个n维向量a和b,其余弦相似度为:

(7)

式中,a·b表示两个向量的点积,夹角余弦取值范围为[-1,1],取值越大表示两向量的夹角越小,两向量越相似。

假设第i个簇中第j个文档经过关键词抽取后得到5个关键词kij1,kij2,…,kij5,候选词词典中有M个候选词h1,h2,…,hM。候选词语与抽取的关键词之间的相似度为:

(8)

其中,hm表示第m个候选词语的特征向量,kijp表示第i个簇中第j个文档抽取的第p个关键词的特征向量。

2.4.2候选词与文档的相似度度量

在得到候选词语与各文档抽取的关键词之间的余弦相似度后,由于每篇文档抽取的关键词有差异,不能作为整个聚类图像的标注结果,因此要提取聚类簇中文档关键词的共性,得到候选词语与每个文档之间的余弦相似度。通常一个候选词与文档中的某个关键词的相似度较大,就认为该候选词与该文档的相似度就大。因此选择候选词语与每个文档抽取的5个关键词中相似度最大的一个作为候选词语与该文档之间的相似度。

假设文本聚类后有K个簇c1,c2,…,cK,每个簇中有N个文档di1,di2,…,diN,则候选词与文档之间的余弦相似度为:

s(hm,dij)≜maxp=1,2,…,5{g(hm,kijp)}

i=1,2,…,K;m=1,2,…,M

(9)

其中,dij表示第i个簇中第j个文档,s(hm,dij)表示第m个候选词语与第i个簇中第j个文档的相似度。

2.4.3候选词与聚类簇的相似度度量

通过式(9)计算得到候选词与每个文档的相似度s(hm,dij)后,要想对每个簇进行批量标注,还需知道候选词与每个簇之间的相似度大小。由于关键词抽取、聚类等属于无监督学习,聚类后每个簇中的样本准确性不能保证,因此不能简单采取像2.4.2节中的方法直接将候选词与某簇中文档相似度最大的一个作为候选词与聚类簇的相似度。为了消除各种噪声影响,本文用候选词-文档相似度的均值来定义候选词与聚类簇的相似度。为避免聚类中得到的差异较大的文本带来的不良影响,需对N个候选词-文档相似度s(hm,dij)由大到小进行排序,排序结果用(si1,si2,…,siN)表示,选取topQ(Q≤N)个相似度求均值来计算候选词与第i个簇的相似度:

(10)

式中,sil表示第i个簇排序结果中第l个相似度值。

2.5 最终标注词输出

通过式(10)计算出每个候选词到每个簇的相似度值f(hm,ci),m=1,2,…,M;i=1,2,…,K,将每个簇中的相似度值由大到小顺序排列,选取值最大的3个对应的候选词作为该簇的标注结果。

3 实验结果

3.1 实验条件

为了验证本文方法的有效性,首先需要训练模型得到文档及词语的向量,为此下载了中文维基百科语料库。本文在PyCharm EDU环境下调用gensim库中的wikicorpus函数去除语料库中无用的标记符号,将压缩文件转换为txt文本,并安装开源项目OpenCC,去除繁体数据,完成繁简转化。

同时,在PyCharm EDU环境下编写Python程序爬取百度百科网页,获得了480幅图像及对应的伴随文本(一幅图像对应一个伴随文本文档),这些图像大致分为7类:狗(70)、植物(70)、飞机(70)、桥(70)、鸟类(70)、建筑(70)、山水(60)。随后将480个伴随文本文档添加入维基百科语料库,对添加后的文本使用jieba分词工具进行分词,分词过程中将自己构建的停用词表导入该程序以去除停用词,并调用gensim库中的Word2vec模型进行模型训练,得到包含大量词语的词汇库及所对应的向量。

本文还选取了115个网页检索中常用的词语构建了一个候选词词典,图像的最终标注结果将从这个候选词词典中得到。

3.2 评价标准

在本文中,所使用的数据集都是从网络上得到的真实数据,没有标准的标注结果,在验证实验结果前,首先对提取的480幅真实图像从候选词词典中选取某些词语进行了人工标注,每幅图像标注了1~6个语义标签。

对于聚类结果,采用纯度[11]进行了简单的评价,定义第i簇的纯度为:

(11)

其中,mi是第i簇中样本的个数,mij是第i簇中第j类的样本个数。

聚类的总纯度为:

(12)

其中,K表示聚类簇的个数,m是样本的总数。

本文使用准确率P(Precision)、召回率R(Recall)和F1值对每幅图像的标注结果进行评测[12],准确率、召回率、F1值定义如下:

(13)

(14)

(15)

图3 标注结果示例

其中,precision(Ii)表示第i幅图像标注的准确率,度量了图像标注的精度;recall(Ii)表示第i幅图像标注的召回率,度量了图像标注的完整性;F1(Ii)是准确率与召回率的加权平均值,度量了图像标注的综合性能,其值越接近1,表示性能越好。Numc(Ii)表示第i幅待标注图像返回的正确标注词语的个数,Numr(Ii)表示第i幅待标注图像返回的标注词语的个数,Numm(Ii)表示第i幅待标注图像人工标注词语的个数。

本文对图像集里的每幅图像进行标注,最后将所有图像的准确率、召回率、F1值分别取平均作为最终评价指标[13],即定义宏准确率(macro-precision)、宏召回率(macro-recall)、宏F1值(macro-F1),如下:

macro-precision=

(16)

macro-recall=

(17)

(18)

式中Image表示待标注图像集合,|Image|表示待标注图像集合中图像的数量。

为了更加直观地评价和展现标注结果,本文定义了一种简化的评价准则,即自动标注的词语中只要有一个与人工标注结果相同或相近,则认为图像被正确标注,得到图像标注的精度为:

(19)

其中,|correct|表示正确标注的图像的数目。

3.3 实验结果

本文对480幅图像利用其伴随文本信息进行了标注,在文本聚类中产生了7个簇,每个簇中包含数量不等的文档数,且在候选词与聚类簇相似度度量中设置Q=0.8×N,表1给出了此次标注的结果。

图3给出了利用本文所提方法得到的某个簇中部分图像标注结果的实例。

表1 图像标注的性能

从上述结果可以看出,大部分图像可以借助其文本信息实现标注,采用本文定义的简化准则,标注精度可达到88%,而且批量标注提高了标注的效率。

仅采用伴随文本信息进行图像标注难以达到更精确的结果,究其原因有如下几点:(1)图像伴随文本信息并不能完全表达图像的含义,如有些图像中“灯光”等信息没有在文本中体现,这说明图像视觉特征的重要性;(2)因为是无监督学习,文档关键词提取和聚类都难以保证准确性,如图3中的第6幅图像,因为没有正确聚类,导致标注不够准确。但总体来说,此次实验达到了预想的目标。

4 结论

本文仅利用图像的伴随文本信息作为特征,结合文本聚类及关键词抽取等技术,提出了基于伴随文本信息的Web图像批量标注框架,并且利用Python爬取百度百科网页自建图像数据库,实现了对图像的批量标注。

本文工作充分证明了伴随文本信息对于图像标注的重要性。下一步将研究图像的视觉特征,将图像特征与伴随文本信息进行结合,以实现对图像的精确标注。

猜你喜欢

分词文档聚类
浅谈Matlab与Word文档的应用接口
有人一声不吭向你扔了个文档
分词在英语教学中的妙用
基于K-means聚类的车-地无线通信场强研究
结巴分词在词云中的应用
结巴分词在词云中的应用
基于高斯混合聚类的阵列干涉SAR三维成像
基于RI码计算的Word复制文档鉴别
基于Spark平台的K-means聚类算法改进及并行化实现
基于改进的遗传算法的模糊聚类算法