?

面向數字資源的自動標簽模型

2020-08-26 14:56雷智文黃玲
哈爾濱理工大學學報 2020年3期

雷智文 黃玲

摘?要:針對數字資源標簽數量不足,獲取困難的問題,提出了一種新的自動標簽方法,對于收集的公共文化資源數據集和其它公開數據集,能夠有效的進行標簽擴展。提出過程依據神經網絡理論和生成學習理論,采用隱含狄利克雷分布(latent?dirichlet?allocation,?LDA)和Word2Vec方法分別對資源和初始標簽進行處理,生成資源和初始標簽的表示向量,然后以此兩種向量作為深度結構語義模型的輸入,建立面向數字資源的自動標簽模型。從結果來看,該方法的標簽擴展效果在精確度、平均排序倒數、平均準確率等指標上表現上總體優于文中提到的其它對比方法,能夠解決某些情況下資源標簽不足的問題,提高資源的利用率。

關鍵詞:標簽擴展;隱含狄利克雷分布;Word2Vec

DOI:10.15938/j.jhust.2020.03.022

中圖分類號:?TP181

文獻標志碼:?A

文章編號:?1007-2683(2020)03-0144-07

Abstract:In?this?paper,?we?proposed?a?novel?automatic?tagging?system?which?aimed?at?the?lack?of?tags?about?digital?resources?and?the?difficulty?of?extending?tags.?This?tagging?system?can?effectively?extend?tags?for?public?cultural?resources?we?collected?and?other?public?data?sets.?The?algorithm?of?tagging?system?based?on?neural?network?and?generative?learning.?We?use?Latent?Dirichlet?Allocation?(LDA)?and?Word2Vec?to?process?resources?and?initial?tags,?generating?the?representation?vectors?of?resources?and?initial?tags,?then?use?these?two?kinds?of?vector?to?build?this?automatic?tagging?system?focused?on?digital?resources.?From?the?results,?the?Precision,?MRR,?MAP?and?other?indexes?of?this?method?is?better?than?other?comparison?tagging?methods?mentioned?in?this?paper,?and?it?can?solve?the?lack?of?tags?in?some?cases.?Increasing?utilization?of?resources.

Keywords:automatic?tagging;?latent?dirichlet?allocation;?Word2Vec

0?引言

在互聯網應用中,對象和標簽的結合方法是一種非常有用的技術,標簽能夠大幅度提高信息檢索的效率,高質量的標簽還能夠幫助對資源進行分類和整合,使得資源的利用變得更加有效。對圖像、視頻及文本等資源進行自動標注的方法通常有兩類,一類是關鍵詞提取方法,另一類是近年來逐漸興起的關鍵詞生成方法,關鍵詞提取只依賴于文本本身的信息,不能生成新的信息,標簽提取的效果已經到了瓶頸。因此,能夠生成新信息的標簽提取方法近年來越來越受到人們的重視,這種新的標簽提取方法和傳統基于關鍵詞提取的方法最主要的不同點就是它往往擁有更加優化的詞庫和非線性結構,從而能夠取得更好的標簽提取效果。

1?介紹

在信息檢索領域,快速增長的信息量和日益困難的數據收集不斷帶來新的挑戰,亟需新的方法應對這些挑戰。為了解決資源可用標簽過少的問題,我們使用了一種新的自動標注方法,通過計算標簽之間的語義關系,對公共文化資源的已有標簽進行擴展,此方法已經在以前的工作[1]中進行了發表。在本文中,我們在前文研究工作的基礎上,改進了模型,同時對數據集進行了擴展,使用了新的評估指標和對比算法。在實驗中,我們使用了如下過程對標簽和資源進行處理。

對于文本資源,使用LDA模型,根據主題的分布生成頻率共現矩陣,矩陣的每一行即是一項資源的向量,表示該資源在該矩陣空間中的位置。

對于標簽,使用Word2Vec模型進行處理,將初始標簽映射到同一個向量空間中,同時生成初始標簽的表示向量。

通過使用如上的方法,我們完成對資源的標簽的向量化,然后我們根據資源和標簽的對應關系構建資源-標簽向量對,再構建深度結構語義模型(deep?structured?semantic?model,?DSSM)并使用向量化后的資源和標簽對模型進行訓練,訓練完成后再次利用訓練好的模型計算出資源和初始標簽集中每個標簽的相似度,利用相似度的大小對初始標簽進行排序,并取和該資源相似度最高的一批初始標簽作為該資源的擴展標簽。

2?相關研究

許多研究者都對自動標簽技術進行過討論,文[2]設計了一種名為TagAssist的系統,能夠利用現有的標簽內容為新的博客自動分配標簽。Belem等人[3]提出了一種為目標對象分配標簽的新方法,使用了啟發式的方法,能夠將新的度量方式加入現有的方法中,并使用一些生成備選詞語描述目標對象的內容。Huang等人[4]設計了一種新的深度結構語義模型,能夠將信息檢索中的詢問詞和檢索結果分別映射到相同的低維向量空間中,并使用詢問詞和檢索結果在對應向量空間中的距離表示它們的相似程度。文[5]提出了一種名為TagHats的分級自動標注系統,能夠根據目錄、主題以及關鍵詞生成出三種類型的標簽,根據目錄生成的標簽能夠在不同的維度上對文檔進行分類。Chirita等[6]提出了一種叫做P-TAG的技術,能夠為網頁生成個性化標簽。

在自動標簽的效率提升方面,文[7]提出了一種針對稀疏短文本的自動標簽方法。Si等人[8]提出了一種可擴展的實時標簽推薦方法。通過建立LDA模型,可以實時的計算出將某個標簽分配給一個文檔的概率,然后選擇概率最高的進行分配。

在自動標注使用的算法和數據及上,也有人進行了大量的前期研究,文[4]使用了詞散列(word?hashing)的處理方法,能夠擴大模型的規模,并能夠對字典進行擴展,使得模型能夠用于大型網頁搜索引擎。文[3]采用了RankSVM和遺傳算法,用于生成排序函數,精確分析給定標簽和對象之間的相似度。文[9]測試了不同的標簽排序方法,構建標簽云表示目標資源數據集。文[5]使用了層次分類法和關鍵詞提取算法,分別負責分配目錄標簽和主題標簽,和負責構建文檔模型。文[7]中使用了BibSonomy數據集對其提出的方法進行了驗證,結果表明了所采用方法的有效性。文[10]對其提出的方法在Flickr上的一組經過標簽的數據上進行了驗證。文[11]采用了分布式訓練過程,使用了真實博客文章數據。

3?自動標簽擴展模型

在以前的工作[1]中,已經詳細介紹了基于DSSM的自動標簽系統的原理,對之前所做工作進行簡單回顧。首先介紹數據的預處理過程。數據的預處理分為兩步,對于資源數據,使用LDA[12]模型去生成資源的主題分布,以此分布在每個主題上的概率組成的向量代替資源,對于資源的初始標簽,使用百度百科的幾乎所有詞條對Word2Vec模型進行訓練,并生成這些詞條的向量表示,在結果中找出初始標簽和其對應的向量表示,完成數據的處理后,我們使用此數據對DSSM模型進行訓練,然后使用訓練好的模型計算資源和所有初始標簽之間的相似度并對結果進行排序,取相似度最高的一批標簽作為自動標注的結果。

對于數據集中的文本資源,使用了LDA算法[13-15]去生成每個資源所對應的向量,LDA是一種文本主題模型,通過在文本資源上進行訓練,能夠生成文本資源的主題分布,使用此分布能夠計算出文本資源在確定主題數量下的向量表示。

對于各數據集的初始標簽,使用了Word2Vec去生成其表示向量,Word2Vec是一種用于提取詞向量的工具,包括CBOW模型和Skip-gram模型[16-17]中,使用的是CBOW模型,它能夠將不同的詞語簽映射到同一個向量空間中,同時獲得每個詞語的向量表示。

使用LDA和Word2Vec完成資源和標簽的向量化以后,根據資源和向量的初始關系將其組成資源-向量對,利用此資源-向量對訓練DSSM,最終得到DSSM模型的參數,訓練完成后,重新將資源和所有標簽作為輸入,計算資源和所有標簽的相似度,根據相似度進行排序,取相似度最高的作為資源的擴展標簽。DSSM能夠構建網絡計算文本之間的語義相似度,本文中使用的DSSM結構如圖?1所示,在圖中,IR表示資源輸入向量,OR表示資源輸出向量,IT表示標簽輸入向量,OT表示標簽輸出向量,在中間層l1,?l2,?…?ln中,W1,?W2,?…,?Wn表示相應權重矩陣,b1,?b2,?…,?bn表示偏差。

在訓練過程中,使用了梯度下降法進行迭代,訓練過程如下:

步驟1):輸入:N=迭代次數

RA=資源網絡初始結構參數,?TA=標簽網絡初始結構參數

RD=資源輸入向量,?TD=標簽輸入向量

WR=資源初始權重矩陣,?WT=標簽初始權重矩陣

步驟3):對RA,TA,WR,WT進行初始化

步驟4):For?n=1:N

步驟5):NR←RD

步驟6):NT←TD

步驟7):使用NR和NT對WR和WT進行更新

步驟8):End

步驟9):輸出:?WR=資源權重矩陣,?WT=標簽權重矩陣

4?實驗

在此部分中,闡述了實驗過程。包括實驗環境、實驗數據、評估指標、對比算法、實驗步驟、實驗結果和分析。

4.1?實驗環境

在實驗中,硬件環境為Intel?Core?i7?6700+NVIDIA?GeForce?GTX?1080。軟件環境為PyCharm+TensorFlow?1.4.0。PyCharm是一款Python?IDE,帶有一整套可以幫助用戶在使用Python語言開發時提高其效率的工具。TensorFlow是一個以數據流圖計算單元的開源軟件庫,圖的節點代表數學運算,圖的邊代表多維數組(張量),這種結構使得用戶能夠不用重復代碼就將計算任務部署在計算機或服務器的多個CPU或者GPU上,在本文中我們使用了TensorFlow中現成的模塊和工具。

4.2?實驗數據

使用的數據除了公共文化數據之外,還包括Last.fm數據集、MovieLens數據集和delicious數據集,公共文化數據來自于相關項目的大數據平臺,數據包括公共數字文化相關資源數據和其所對應的初始標簽,公共文化資源包括文化視頻的文本描述,博物館藏品介紹,文化相關書籍介紹等。Last.fm數據集包括音樂作者信息和用戶對作者的手動標注的標簽,MovieLens數據集包括電影信息和其對應的初始標簽,delicious數據集包括書簽信息和對應的初始標簽,各數據集的資源和標簽數量如表1所示。

對于數據中的資源,使用收集到的公共數字文化資源和另外三種公開數據集分別對LDA模型進行訓練,分別獲取在每種數據集下每個資源文檔的概率分布和模型的參數。訓練完成后,可以根據模型的參數計算出每個主題相對于資源文檔的條件概率p(topic|doc),資源向量每一維的數值即為此條件概率的值。對于新的資源,根據訓練好的參數直接為其生成資源向量。

對于初始標簽,為了能夠生成初始標簽的向量表示,提取了百度百科中的幾乎所有(864,705)詞條構建語料庫,然后將初始標簽中不存在于此語料庫中的詞添加進去,語料庫中詞語最終數量達到872,705,使用此語料庫對CBOW模型進行訓練,訓練完成后,這些詞語被映射到同一個向量空間中,同時得到這些詞語的向量表示,我們在此結果中對公共文化數據和其它公開數據集中的初始標簽進行搜索,找到初始標簽和其對應的向量表示。

4.3?評估指標

為了對算法的性能進行度量,使用以下幾種評估指標。

平均排序倒數(mean?reciprocal?rank,?MRR),計算排序后的標簽中被正確排序的標簽的序列倒數在整個測試數據中的平均值。MRR的計算方法如下:

其中R(tag)表示擴展后的標簽在初始標簽集中的位置。

精度(Precision),計算初始標簽在擴展后標簽中所占的比重。精度的計算方法如下:

其中σ(R(tag)≤N)為指示函數,表示當R(tag)≤N是返回1,否則返回0。在實驗中使用了P@1和P@5兩種指標。

平均準確率(mean?average?precision,?MAP),計算資源的標簽擴展準確率的平均值。平均準確率的計算方法為:

歸一化折損累計增益(normalized?discounted?cumulative?gain,?NDCG),計算公式為:

4.4?對比算法

將實驗的結果和常用標簽擴展算法進行了對比,參與對比的標簽擴展算法有TF-IDF[18],TextRank[19-20],N-gram[9,13],基于LDA的關鍵詞提取[15],TPR?[13-15]。

TF-IDF是一種用于提取文本關鍵詞的常用技術,通過統計單詞的詞頻(term?frequency)和逆文檔頻率(inverse?document?frequency),并將結果相乘的方式計算單詞的重要程度,詞頻表示單詞在文檔中出現的頻率,逆文檔頻率和包含單詞的文檔數有關,包含單詞的文檔數越多,逆文檔頻率越高,說明單詞有很好的類別區分能力。TextRank是一種基于圖的排序算法,通過把文本分割成不同的單元單詞并建立圖模型,利用投票機制對文本中的單詞進行排序,取票數最多的單詞為文本的標簽,TextRank的優點是不需要實現對文檔進行學習訓練,并且計算較為簡便,因而使用較為廣泛。N-gram的基本思想是將文本里面的內容按照字節進行大小為N的滑動窗口操作,形成長度為N的字節片段序列。每一個字節片段稱為gram,對所有的gram的出現次數進行統計,并且按照事先設定好的閾值進行過濾,形成關鍵gram列表,也就是這個文本的向量特征空間,最終以頻率最高的gram作為提取出的標簽?;贚DA的關鍵詞提取首先使用文本集對LDA模型進行訓練,完成訓練后得到一篇文章的主題分布和文章中詞的主題分布,然后通過KL散度來計算這兩個分布的相似性。如果文章的某一主題z的概率很大,而該文章中某個詞對于該主題z也擁有更大的概率,那么該詞就會有非常大的概率成為擴展的標簽。TPR是LDA與TextRank相結合的方法,其思想是文本的每個主題單獨運行各自的帶偏好的TextRank,每個主題的TextRank都會偏好與該主題有相關度較大的詞,對于每個主題z,根據LDA的訓練都可以得到每個主題下的詞的分布,可以把每個詞的概率值單做該主題下Textrank的跳轉概率來計算,從而優化每個詞的得分。

4.5?實驗步驟

在實驗中,我們首先使用了LDA和Word2Vec生成資源和標簽的表示向量,然后使用初始的資源-標簽對訓練DSSM模型,資源向量和標簽向量的維度分別為200和150。訓練完成后,我們計算每個資源和所有標簽的相似度,然后根據相似度由高到低對標簽進行排序,取前N個相似度最高的標簽作為資源的擴展標簽,圖2表示這一過程。

從圖中可以看出,實驗包括3個步驟,第一步是分別使用LDA和Word2Vec對資源和初始向量進行處理,向量化后的資源和標簽維度分別為200和150。第二步是使用資源和初始標簽的表示向量對DSSM模型進行訓練,實驗中采用的DSSM網絡層數和每一層的節點數如表2所示。

模型訓練完成后,可以計算給定標簽的資源概率,給定標簽的資源的先驗概率通過softmax函數進行計算。

其中γ為平滑因子,通常由經驗給出。資源和標簽之間的cos相似度,可以用以下公式進行計算。

最終收斂后,WR和WT都為近似的最優解,同時得到模型的參數結構。

對于每個資源-標簽對,使用(R,T+)去代替(R,T),其中T+為初始標簽,獲取模型參數的目標函數為最大化給定標簽的資源的似然:

第三步是使用訓練好的網絡對資源進行標簽擴展,在這一步中,網絡的參數固定,對數據集中的每一個資源,將其向量分別和所有初始標簽向量作為輸入,計算它們之間的相似度,然后根據資源和所有初始標簽的相似度的大小對初始標簽進行排序,取前N個標簽作為資源的擴展標簽,分別取N為10、20、30、40、50進行了實驗。

4.6?實驗結果和分析

在各個數據集上都用本文所提出的方法和對比算法進行了實驗,當擴展標簽數量N=20時,在不同數據集上各指標的實驗結果如表3所示。

分析實驗結果,可以看出在公共文化數據集和其它公開數據集上,DSSM標簽擴展的結果在P@1,P@5,MAP上明顯優于TF-IDF、TextRank、N-gram、LDA,這是因為DSSM是通過提取資源和標簽的特征,計算它們之間的相似度的方式進行標簽擴展,能夠挖掘出資源與標簽之間的深層信息,并且能夠以整個初始標簽作為備選庫進行標簽擴展。而TF-IDF、TextRank、N-gram是通過計算資源中詞語的重要程度,然后排序的方式提取標簽,詞語和資源之間沒有聯系,同時備選庫較少,所以擴展的精度不如DSSM。LDA雖然采用提取主題的方式進行標簽擴展,但是也沒有考慮資源和初始標簽之間的關系,所以結果也低于DSSM。而融合了TextRank和LDA的TPR在精度的表現上則與DSSM相當,說明在既考慮到單詞重要性又進行主題提取的情況下,標簽擴展的準確率能夠得到顯著改善。在MRR的表現上,可以看出在公共文化數據集上DSSM的MRR值略優于其它算法,而其它公開數據集上DSSM的MRR值并不突出,這表明DSSM在中文數據集中有一定的優勢,比較適合于中文資源的標簽擴展,其原因可能是因為在對初始標簽進行向量化時,Word2Vec的訓練集中的中文詞匯較多所致。在NDCG@3的表現上,DSSM和其它算法并無顯著差異。

同時,分別取標簽擴展數量N為10、20、30、40、50進行了實驗,不同N在各數據集上的MAP結果如表4所示。

從結果來看,總體上標簽擴展精度隨N的增加而增加,但當N達到一定數量時,精度不再增加,這是因為資源的初始標簽數量有限,當擴展標簽數量持續增加時,不能提供更加完善的對比。

在各個數據集上,本文所使用方法在總體上優于其它標簽擴展方法。

5?結?論

討論了使用深度結構語義模型進行標簽擴展的可能性,通過實驗和比較,對于所使用的各數據集,MRR值和精度能夠優于實驗中采用的其它對比算法,證明本文所提出方法在標簽擴展方向的優勢,在實際應用中,通過本文擴展的標簽在后續的使用中被認為是非常有效的。

我們未來的工作中,在以下方面將進行擴展研究,首先是數據的數量不是特別充分,未來還會在更大的數據集上對所提出方法進行驗證。其次,擴展標簽優劣程度還需要更加系統的進行衡量。

參?考?文?獻:

[1]?LEI?Zhiwen,?YANG?Yi,?HUANG?Weixing,?et?al.?Tag?Recommendation?for?Cultural?Resources[C]//?2018?IEEE?International?Conference?on?Software?Quality,?Reliability?and?Security?Companion?(QRS-C),?Lisbon,?2018:?566.

[2]?SOODS?C,?HAMMOND?K?J,?OWSLEY?S?H,?et?al.?TagAssist:?Automatic?Tag?Suggestion?for?Blog?Posts[C]//?ICWSM,?Colorado,?USA,?Mar?26-28,?2007.

[3]?BELEM,?FABIANO,?EDER?MARTINS,?et?al.?Associative?Tag?Recommendation?Exploiting?Multiple?Textual?Features[C]//?Proceedings?of?the?34th?International?ACM?SIGIR?Conference?on?Research?and?Development?in?Information?Retrieval,?ACM,?2011.?1033.

[4]?HUANG?Posen,?HE?Xiaodong,?GAO?Jianfeng,?et?al.?Learning?Deep?Structured?Semantic?Models?for?Web?Search?Using?Clickthrough?Data[C]//?Proceedings?of?the?22nd?ACM?International?Conference?on?Conference?on?Information?&?Knowledge?Management,?ACM,?2013:?2333.

[5]?NISHIDA?KYOSUKE,?FUJIMURA?KO.?Hierarchical?Auto-tagging:?Organizing?Q&A?Knowledge?for?Everyone[C]//?Proceedings?of?the?19th?ACM?International?Conference?on?Information?and?Knowledge?Management,?ACM,?2010:?1657.

[6]?CHIRITA,?PAUL-ALEXANDRU,?STEFANIA?COSTACHE,?et?al.?P-tag:?Large?Scale?Automatic?Generation?of?Personalized?Annotation?Tags?for?the?Web[C]//?Proceedings?of?the?16th?International?Conference?on?World?Wide?Web,?ACM,?2007:?845.

[7]?DIAZ-AVILES,?ERNESTO,?MIHAI?GEORGESCU,?et?al.?Lda?for?On-the-fly?Auto?Tagging[C]//?Proceedings?of?the?Fourth?ACM?Conference?on?Recommender?Systems,?ACM,?2010:?309.

[8]?SI?Xiance,?SUN?Maosong.?Tag-LDA?for?Scalable?Real-time?Tag?Recommendation[J].Journal?of?Information&Computational?Science,?2009,?6(2):?1009.

[9]?HARA?SUNAO,?KITAOKA?NORIHIDE,?TAKEDA?KAZUYA.?On-line?Detection?of?Task?Incompletion?for?Spoken?Dialog?Systems?Using?Utterance?and?Behavior?Tag?N-gram?Vectors[C]//?Proceedings?of?the?Paralinguistic?Information?and?its?Integration?in?Spoken?Dialogue?Systems?Workshop.?Springer,?New?York,?2011:?215.

[10]SKOUTAS,?DIMITRIOS,?MOHAMMAD?ALRIFAI.?Ranking?Tags?in?Resource?Collections[C]//?Proceedings?of?the?34th?International?ACM?SIGIR?Conference?on?Research?and?Development?in?Information?Retrieval.?ACM,?2011:?1207.

[11]ZHANG?Hongbin,?JI?Donghong,?YIN?Lan,?et?al.?Product?Image?Sentence?Annotation?Based?on?Kernel?Descriptors?and?Tag-rank[J].?Journal?of?Southeast?University,?2016,?32(2):?170.

[12]FRIGYIK?B,?KAPILA?A,?GUPTA?R.?Introduction?to?the?Dirichlet?Distribution?and?Related?Processes[R].?Department?of?Electrical?Engineering,?University?of?Washignton,?Uweetr-2010-0006,?2010.

[13]CHEN?LINCHIH.?An?Effective?LDA-based?Time?Topic?Model?to?Improve?Blog?Search?Performance[J].Information?Processing?&?Management,?2017,?53(6):?1299.

[14]PAVLINEK?MIHA,?PODGORELEC?VILI.?Text?Classification?Method?Based?on?Self-training?and?LDA?Topic?Models[J].Expert?Systems?with?Applications,?2017,?80:?83.

[15]LU?Yue,?MEI?Qiaozhu,?ZHAI?Chengxiang.?Investigating?Task?Performance?of?Probabilistic?Topic?Models:?An?Empirical?Study?of?PLSA?and?LDA[J].Information?Retrieval,?2011,?14(2):?178.

[16]LE?QUOC,?MIKOLOV?TOMAS.?Distributed?Representations?of?Sentences?and?Documents[C]//?International?Conference?on?Machine?Learning,?2014:?1188.

[17]MIKOLOV?TOMAS,?TOMAS,?CHEN?Kai,?GREG?CORRADO,?et?al.?Efficient?Estimation?of?Word?Representations?in?Vector?Space[C]//?arXiv?Preprint?arXiv:1301.3781,?2013.

[18]HUANG?Chenghui,?YIN?Jian,?HOU?Fang.?A?Text?Similarity?Measurement?Combining?Word?Semantic?Information?with?TF-IDF?Method[J].Jisuanji?Xuebao(Chinese?Journal?of?Computers),?2011,?34(5):?856.

[19]李鵬,王斌,石志偉,等.?Tag-TextRank:一種基于Tag的網頁關鍵詞抽取方法[C]//?全國信息檢索學術會議,2010:456.

LI?Peng,?WANG?Bin,?SHI?Zhiwei,?et?al.?Tag-TextRank:?A?Tag-Based?Keyword?Extraction?Method[C].?National?Conference?on?Information?Retrieval,?2010:456.

[20]LI?Peng,?WANG?Bin,?SHI?Zhiwei,?et?al.?Tag-TextRank:?A?Webpage?Keyword?Extraction?Method?Based?on?Tags[J].Journal?of?Computer?Research?and?Development,?2012,?49(11):?2344.

(編輯:溫澤宇)

91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合