郭蕾蕾,俞 璐,段國侖,陶性留
(1.陸軍工程大學(xué) 通信工程學(xué)院,江蘇 南京 210007;2.陸軍工程大學(xué) 指揮控制工程學(xué)院,江蘇 南京 210007)
隨著互聯(lián)網(wǎng)的迅速普及以及多媒體技術(shù)的快速發(fā)展,圖像資源的數(shù)量急劇增長。如何快速、有效檢索圖像正逐漸成為學(xué)術(shù)界研究的一個熱點,圖像標(biāo)注作為圖像檢索的核心,也越來越受到研究者的關(guān)注。同時圖像標(biāo)注具有廣泛的應(yīng)用領(lǐng)域和前景,在圖像分析、圖像理解、大規(guī)模圖像管理等不同領(lǐng)域均有一定的應(yīng)用和研究[1]。
傳統(tǒng)的圖像標(biāo)注大都是人工標(biāo)注,即專家手工地對圖像進行文本注釋。然而面對海量圖像,人工標(biāo)注費時費力,同時會帶入某些主觀因素,直接影響到圖像標(biāo)注的準(zhǔn)確性。顯然這種依賴人工方式實現(xiàn)的圖像標(biāo)注,已經(jīng)無法滿足需求[2],圖像自動標(biāo)注技術(shù)得以迅速發(fā)展。
所謂圖像自動標(biāo)注,就是讓計算機自動地為圖像添加上能夠反映圖像內(nèi)容或用戶意圖的文本標(biāo)簽[3]。圖像自動標(biāo)注分為有監(jiān)督學(xué)習(xí)的圖像自動標(biāo)注和無監(jiān)督學(xué)習(xí)的圖像自動標(biāo)注。由于大多數(shù)網(wǎng)絡(luò)圖像集都未帶語義標(biāo)簽,因此無監(jiān)督的學(xué)習(xí)方法備受學(xué)者關(guān)注,這也是本文研究的一個重點內(nèi)容。
互聯(lián)網(wǎng)時代,大多數(shù)圖像是Web圖像。Web圖像通常關(guān)聯(lián)著豐富的文本信息,如圖像文件名、周邊文本等,圖像的語義或多或少地都與這些關(guān)聯(lián)文本相關(guān),分析挖掘這些關(guān)聯(lián)文本信息,可以更準(zhǔn)確地對圖像進行標(biāo)注[4]。因此,在Web圖像語義自動標(biāo)注過程中,如何利用Web圖像的伴隨文本來提高標(biāo)注性能是當(dāng)前研究的熱點之一。
為說明伴隨文本信息對于圖像標(biāo)注的重要性,本文提出了一種僅利用圖像伴隨文本信息,而沒有利用圖像特征的批量標(biāo)注方法。
TF-IDF(Term Frequency-Inverse Document Frequency)算法是一種廣泛應(yīng)用于信息檢索和文本挖掘領(lǐng)域的常用技術(shù)。其主要思想是:如果某個詞在某篇文檔中出現(xiàn)的頻率高,即TF高;在語料庫其他文檔中出現(xiàn)的頻率低,即DF很低,也即IDF高,則認(rèn)為這個詞具有很好的區(qū)分能力[5]。
詞頻(Term Frequency)、逆文檔頻率(Inverse Document Frequency)的計算公式如下:
(1)
(2)
tfidfi,j=tfi,j×idfi
(3)
向量空間模型(VSM)是文本建模中常用的模型之一,它的主要思想是將文本用多維空間的向量來表示,每一個不同的特征項(詞語或句子)對應(yīng)向量空間的一維,而每一維的值就是對應(yīng)的特征項在文本中的特征值。
通常,向量空間模型(VSM)將文本集中的每個文檔di用特征權(quán)重向量(wi1,wi2,..,win)表示,其中wij表示特征詞tj(j=1,2,…,n)的權(quán)重。向量空間模型的構(gòu)造過程如圖1所示[6]。
圖1 向量空間模型構(gòu)造過程圖
向量空間模型中的特征權(quán)重向量常用Word2vec模型獲得。Word2vec是Google在2013年開源的一款將詞表征為空間向量的模型工具,主要采用連續(xù)詞袋模型(Continuous Bag-Of-Words,CBOW)以及Skip-gram模型[7]。它基于人工神經(jīng)網(wǎng)絡(luò),通過多層感知機將初始的底層特征組合為更抽象的高層特征,并將高層特征用于普通的機器學(xué)習(xí)方法以得到更好的效果。Word2vec通過訓(xùn)練,可以把文本內(nèi)容的處理簡化為n維向量空間中的向量運算,向量空間上的相似度可以用來表示文本語義上的相似度。
雖然可以直接將句子/文檔中所有詞的向量取均值作為它們的向量表示,但是這樣會忽略單詞之間的排列順序?qū)渥踊蛭谋拘畔⒌挠绊憽;诖?,MIKOLOV T提出了Doc2vec模型。Doc2vec模型其實是在Word2vec模型的基礎(chǔ)上做出的改進,基本思路很接近。
針對傳統(tǒng)人工標(biāo)注所展現(xiàn)出來的缺點,本文提出了如圖2所示的方法來批量自動標(biāo)注圖像。
圖2 圖像標(biāo)注流程圖
一般而言,相比處理整個句子的文本,處理一個詞匯組成的列表更為簡單,因此,需要采用分詞技術(shù)將字詞與字詞分割開來,即進行分詞處理。對于中文分詞,目前技術(shù)比較成熟,常用的分詞工具有jieba、NLPIR、THULAC等。
分詞后的文本中通常會存在大量的虛詞、代詞、生僻詞或者沒有特定含義的詞,這些詞語對文本分析起不到任何幫助。在具體的文本處理中,通常情況下需要構(gòu)建一個停用詞表,通過字符串匹配或借助其他策略將文本中的停用詞剔除[8],這個過程就是去除停用詞。
接下來利用Doc2vec將文檔向量化,把每一個文檔表示成向量形式,以便后續(xù)進行計算與處理。
2.2.1聚類意義
本文研究的是無監(jiān)督圖像標(biāo)注,沒有樣本類別信息可供學(xué)習(xí),采用聚類方式至少有兩個優(yōu)點:
(1)通過聚類可以抽取樣本的本質(zhì)特征,過濾掉一些無關(guān)的或者特有的信息。比如對于多個描述“犬類”的文檔,若不采用聚類,得到的圖像標(biāo)注可能是具體的描述,如“貴賓犬”、“牧羊犬”、“秋田犬”等,但事實上看到這些圖像,只希望標(biāo)注出“狗”、“犬”等即可,聚類可以達到此目的。
(2)通過聚類得到的簇中包含了多個具有共性的文檔,可將整個簇中的文本所對應(yīng)的圖像用相同的詞語進行標(biāo)注,借此解決批量標(biāo)注圖像的難題,有利于提高海量圖像管理與檢索的效率。
2.2.2AP聚類
Affinity Propagation聚類算法又叫近鄰傳播算法,簡稱AP[9],其基本思想是將全部樣本看作網(wǎng)絡(luò)的節(jié)點,通過數(shù)據(jù)元素之間的消息傳遞,實現(xiàn)數(shù)據(jù)集合中元素的自適應(yīng)聚類[10]。AP聚類的輸入為節(jié)點間的相似度矩陣S,其中s(i,j)表示節(jié)點i與節(jié)點j之間的相似度值,表明了j作為i的聚類中心的能力。聚類過程中,共有兩種消息在各節(jié)點間傳遞,分別是吸引度(responsibility)和歸屬度(availability)。AP算法通過迭代過程不斷更新每一個節(jié)點的吸引度和歸屬度值,直到產(chǎn)生m個高質(zhì)量的Exemplar(類似于質(zhì)心),同時將其余的數(shù)據(jù)點分配到相應(yīng)的聚類中。吸引度信息用r(i,k)表示,即數(shù)據(jù)點k適合作為數(shù)據(jù)點i的聚類中心的程度,r(i,k)值越大,則表示數(shù)據(jù)點k成為聚類中心的能力越強;歸屬度信息用a(i,k)表示,即數(shù)據(jù)點i選擇數(shù)據(jù)點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)表示節(jié)點k作為除i外其他節(jié)點的聚類中心的吸引度值。在相似度矩陣中,索引相同的點(如s(i,i))的值稱為參考度或偏好參數(shù)(preference),此參數(shù)會影響到最后聚類的數(shù)量,參考度越大說明某個數(shù)據(jù)點成為聚類中心的能力越強,則最終聚類中心的個數(shù)越多。迭代開始前假設(shè)所有點成為聚類中心的能力相同,因此參考度一般設(shè)為相似度矩陣中所有值的最小值或者中位數(shù)。
關(guān)鍵詞抽取就是從文本中把與這篇文檔意義最相關(guān)的一些詞抽取出來。從算法的角度來看,關(guān)鍵詞抽取算法主要有兩類:(1)有監(jiān)督學(xué)習(xí)算法,將關(guān)鍵詞抽取過程視為二分類問題,先抽取出候選詞,對每個候選詞劃定標(biāo)簽,訓(xùn)練關(guān)鍵詞抽取分類器;(2)無監(jiān)督學(xué)習(xí)算法,先抽取出候選詞,然后對各個候選詞進行打分,輸出topK個分值最高的候選詞作為關(guān)鍵詞。根據(jù)打分的策略不同,有不同的算法,例如TF-IDF、TextRank等算法。
基于TF-IDF的抽取算法對文檔集中的每個文檔提取分值最高的5個關(guān)鍵詞,其抽取步驟如下:
(1)預(yù)處理,對文本進行分詞和詞性標(biāo)注,將滿足指定詞性的詞作為候選詞;
(2)分別計算每個詞的TF-IDF值;
(3)根據(jù)每個詞的TF-IDF值降序排列,并輸出5個詞匯作為可能的關(guān)鍵詞。
文本聚類后得到不同的簇,每個簇中包含不同數(shù)量的具有相似性的文檔,而且經(jīng)過Word2vec詞向量化及關(guān)鍵詞抽取后,每個文檔已經(jīng)提取出了5個最具代表性的關(guān)鍵詞,且這些關(guān)鍵詞都在語料庫中并被表示為向量形式。為了批量標(biāo)注圖像,需要把位于同一個簇中的樣本的共性提取出來,因此需要對詞語進行相似度度量,選取相似度較大的幾個詞語作為該簇中的所有圖像的標(biāo)注。為此,選取網(wǎng)頁中經(jīng)常檢索的詞語構(gòu)建一個候選詞詞典,并將該詞典加入到語料庫,訓(xùn)練模型,得到詞語的向量表示,每個簇中的圖像的最終標(biāo)注就是從該候選詞詞典中選出的與抽取的關(guān)鍵詞相似度較大的幾個詞語。
2.4.1候選詞與文檔關(guān)鍵詞的相似度度量
相似度度量通常采用的方法是計算樣本間的距離,余弦相似度是用向量空間中兩個向量夾角的余弦值來衡量兩個樣本個體間差異的大小。假設(shè)有兩個n維向量a和b,其余弦相似度為:
(7)
式中,a·b表示兩個向量的點積,夾角余弦取值范圍為[-1,1],取值越大表示兩向量的夾角越小,兩向量越相似。
假設(shè)第i個簇中第j個文檔經(jīng)過關(guān)鍵詞抽取后得到5個關(guān)鍵詞kij1,kij2,…,kij5,候選詞詞典中有M個候選詞h1,h2,…,hM。候選詞語與抽取的關(guān)鍵詞之間的相似度為:
(8)
其中,hm表示第m個候選詞語的特征向量,kijp表示第i個簇中第j個文檔抽取的第p個關(guān)鍵詞的特征向量。
2.4.2候選詞與文檔的相似度度量
在得到候選詞語與各文檔抽取的關(guān)鍵詞之間的余弦相似度后,由于每篇文檔抽取的關(guān)鍵詞有差異,不能作為整個聚類圖像的標(biāo)注結(jié)果,因此要提取聚類簇中文檔關(guān)鍵詞的共性,得到候選詞語與每個文檔之間的余弦相似度。通常一個候選詞與文檔中的某個關(guān)鍵詞的相似度較大,就認(rèn)為該候選詞與該文檔的相似度就大。因此選擇候選詞語與每個文檔抽取的5個關(guān)鍵詞中相似度最大的一個作為候選詞語與該文檔之間的相似度。
假設(shè)文本聚類后有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)后,要想對每個簇進行批量標(biāo)注,還需知道候選詞與每個簇之間的相似度大小。由于關(guān)鍵詞抽取、聚類等屬于無監(jiān)督學(xué)習(xí),聚類后每個簇中的樣本準(zhǔn)確性不能保證,因此不能簡單采取像2.4.2節(jié)中的方法直接將候選詞與某簇中文檔相似度最大的一個作為候選詞與聚類簇的相似度。為了消除各種噪聲影響,本文用候選詞-文檔相似度的均值來定義候選詞與聚類簇的相似度。為避免聚類中得到的差異較大的文本帶來的不良影響,需對N個候選詞-文檔相似度s(hm,dij)由大到小進行排序,排序結(jié)果用(si1,si2,…,siN)表示,選取topQ(Q≤N)個相似度求均值來計算候選詞與第i個簇的相似度:
(10)
式中,sil表示第i個簇排序結(jié)果中第l個相似度值。
通過式(10)計算出每個候選詞到每個簇的相似度值f(hm,ci),m=1,2,…,M;i=1,2,…,K,將每個簇中的相似度值由大到小順序排列,選取值最大的3個對應(yīng)的候選詞作為該簇的標(biāo)注結(jié)果。
為了驗證本文方法的有效性,首先需要訓(xùn)練模型得到文檔及詞語的向量,為此下載了中文維基百科語料庫。本文在PyCharm EDU環(huán)境下調(diào)用gensim庫中的wikicorpus函數(shù)去除語料庫中無用的標(biāo)記符號,將壓縮文件轉(zhuǎn)換為txt文本,并安裝開源項目OpenCC,去除繁體數(shù)據(jù),完成繁簡轉(zhuǎn)化。
同時,在PyCharm EDU環(huán)境下編寫Python程序爬取百度百科網(wǎng)頁,獲得了480幅圖像及對應(yīng)的伴隨文本(一幅圖像對應(yīng)一個伴隨文本文檔),這些圖像大致分為7類:狗(70)、植物(70)、飛機(70)、橋(70)、鳥類(70)、建筑(70)、山水(60)。隨后將480個伴隨文本文檔添加入維基百科語料庫,對添加后的文本使用jieba分詞工具進行分詞,分詞過程中將自己構(gòu)建的停用詞表導(dǎo)入該程序以去除停用詞,并調(diào)用gensim庫中的Word2vec模型進行模型訓(xùn)練,得到包含大量詞語的詞匯庫及所對應(yīng)的向量。
本文還選取了115個網(wǎng)頁檢索中常用的詞語構(gòu)建了一個候選詞詞典,圖像的最終標(biāo)注結(jié)果將從這個候選詞詞典中得到。
在本文中,所使用的數(shù)據(jù)集都是從網(wǎng)絡(luò)上得到的真實數(shù)據(jù),沒有標(biāo)準(zhǔn)的標(biāo)注結(jié)果,在驗證實驗結(jié)果前,首先對提取的480幅真實圖像從候選詞詞典中選取某些詞語進行了人工標(biāo)注,每幅圖像標(biāo)注了1~6個語義標(biāo)簽。
對于聚類結(jié)果,采用純度[11]進行了簡單的評價,定義第i簇的純度為:
(11)
其中,mi是第i簇中樣本的個數(shù),mij是第i簇中第j類的樣本個數(shù)。
聚類的總純度為:
(12)
其中,K表示聚類簇的個數(shù),m是樣本的總數(shù)。
本文使用準(zhǔn)確率P(Precision)、召回率R(Recall)和F1值對每幅圖像的標(biāo)注結(jié)果進行評測[12],準(zhǔn)確率、召回率、F1值定義如下:
(13)
(14)
(15)
圖3 標(biāo)注結(jié)果示例
其中,precision(Ii)表示第i幅圖像標(biāo)注的準(zhǔn)確率,度量了圖像標(biāo)注的精度;recall(Ii)表示第i幅圖像標(biāo)注的召回率,度量了圖像標(biāo)注的完整性;F1(Ii)是準(zhǔn)確率與召回率的加權(quán)平均值,度量了圖像標(biāo)注的綜合性能,其值越接近1,表示性能越好。Numc(Ii)表示第i幅待標(biāo)注圖像返回的正確標(biāo)注詞語的個數(shù),Numr(Ii)表示第i幅待標(biāo)注圖像返回的標(biāo)注詞語的個數(shù),Numm(Ii)表示第i幅待標(biāo)注圖像人工標(biāo)注詞語的個數(shù)。
本文對圖像集里的每幅圖像進行標(biāo)注,最后將所有圖像的準(zhǔn)確率、召回率、F1值分別取平均作為最終評價指標(biāo)[13],即定義宏準(zhǔn)確率(macro-precision)、宏召回率(macro-recall)、宏F1值(macro-F1),如下:
macro-precision=
(16)
macro-recall=
(17)
(18)
式中Image表示待標(biāo)注圖像集合,|Image|表示待標(biāo)注圖像集合中圖像的數(shù)量。
為了更加直觀地評價和展現(xiàn)標(biāo)注結(jié)果,本文定義了一種簡化的評價準(zhǔn)則,即自動標(biāo)注的詞語中只要有一個與人工標(biāo)注結(jié)果相同或相近,則認(rèn)為圖像被正確標(biāo)注,得到圖像標(biāo)注的精度為:
(19)
其中,|correct|表示正確標(biāo)注的圖像的數(shù)目。
本文對480幅圖像利用其伴隨文本信息進行了標(biāo)注,在文本聚類中產(chǎn)生了7個簇,每個簇中包含數(shù)量不等的文檔數(shù),且在候選詞與聚類簇相似度度量中設(shè)置Q=0.8×N,表1給出了此次標(biāo)注的結(jié)果。
圖3給出了利用本文所提方法得到的某個簇中部分圖像標(biāo)注結(jié)果的實例。
表1 圖像標(biāo)注的性能
從上述結(jié)果可以看出,大部分圖像可以借助其文本信息實現(xiàn)標(biāo)注,采用本文定義的簡化準(zhǔn)則,標(biāo)注精度可達到88%,而且批量標(biāo)注提高了標(biāo)注的效率。
僅采用伴隨文本信息進行圖像標(biāo)注難以達到更精確的結(jié)果,究其原因有如下幾點:(1)圖像伴隨文本信息并不能完全表達圖像的含義,如有些圖像中“燈光”等信息沒有在文本中體現(xiàn),這說明圖像視覺特征的重要性;(2)因為是無監(jiān)督學(xué)習(xí),文檔關(guān)鍵詞提取和聚類都難以保證準(zhǔn)確性,如圖3中的第6幅圖像,因為沒有正確聚類,導(dǎo)致標(biāo)注不夠準(zhǔn)確。但總體來說,此次實驗達到了預(yù)想的目標(biāo)。
本文僅利用圖像的伴隨文本信息作為特征,結(jié)合文本聚類及關(guān)鍵詞抽取等技術(shù),提出了基于伴隨文本信息的Web圖像批量標(biāo)注框架,并且利用Python爬取百度百科網(wǎng)頁自建圖像數(shù)據(jù)庫,實現(xiàn)了對圖像的批量標(biāo)注。
本文工作充分證明了伴隨文本信息對于圖像標(biāo)注的重要性。下一步將研究圖像的視覺特征,將圖像特征與伴隨文本信息進行結(jié)合,以實現(xiàn)對圖像的精確標(biāo)注。