冶忠林,趙海興,張 科,朱 宇
(1. 青海師范大學 計算機學院,青海 西寧 810008;2. 陜西師范大學 計算機科學學院,陜西 西安 710062;3. 青海省藏文信息處理與機器翻譯重點實驗室,青海 西寧 810008;4. 藏文信息處理教育部重點實驗室,青海 西寧 810008)
表示學習是機器學習中的一個重要研究方向,表示學習的結(jié)果可直接輸入各類機器學習任務(wù)中,用于提升其算法性能[1]。目前表示學習研究主要致力于網(wǎng)絡(luò)表示學習[2]、詞表示學習[3]和知識表示學習[4]等任務(wù)。其中,清華大學劉知遠老師項目組在該三個領(lǐng)域都取得諸多的研究成果[5-6]。分布式表示最早由Hinton提出[7],分布式詞表示學習旨在通過算法學習得到詞語的一種壓縮的、稠密的、低維度的特征向量,最終得到的向量可簡稱為詞表示、詞嵌入、詞向量等。詞向量可以反映出詞語之間的語義、上下文等關(guān)系[8]。其中最經(jīng)典的算法為Mikolov等[9-10]提出的Word2Vec模型。
目前,分布式詞表示學習主要研究如何基于神經(jīng)網(wǎng)絡(luò)的方法改進詞表示在詞相似度和詞類推任務(wù)中的性能,也取得了豐富的研究成果。例如,傾向于主題共性的TWE算法[11]、利用句法分析優(yōu)化的DEPS方法[12]、基于多原型詞嵌入的Huang方法等[13]?;谏窠?jīng)網(wǎng)絡(luò)的詞表示學習算法也存在如下不足: (1) 罕見詞由于語料匱乏而得不到充分的上下文詞語對共現(xiàn),進而無法準確有效地訓練出其表示向量。(2) 某些語義相反的詞語出現(xiàn)于相互上下文時,可使意義相反的詞語由于更多的上下文詞語對共現(xiàn),而形成更相近的表示空間距離。(3) 意義相近的兩個詞語假如均不出現(xiàn)于對方的上下文窗口時,可使訓練得到的兩個同義詞表示向量在詞向量空間中具有較遠的距離。
本文提出了一種融合多源信息的詞表示學習算法(MSWE),該算法旨在將詞語的語義描述和同義詞與反義詞等外部資源信息融入詞表示學習模型中,使得學習得到的詞表示向量蘊含更多的信息,而不僅僅是詞語的上下文等結(jié)構(gòu)信息。
首先,本文構(gòu)建了一個同義詞與反義詞詞典(Synonyms and Antonyms Directory, SAD),在詞表示模型學習的過程中基于同義詞與反義詞詞典SAD明確地提示某些上下文詞語對是同義詞,某些詞語對是反義詞,此種行為使得同義詞的詞嵌入在向量表示空間上具有更相近的空間距離,而反義詞的詞嵌入則在向量表示空間上具有更遠的空間距離。另外,罕見詞由于缺少充足的上下文詞語對,導(dǎo)致了模型訓練不充分,但SAD詞典通過添加同義詞與反義詞信息,給予罕見詞更多的特征信息。因此,可有效優(yōu)化神經(jīng)網(wǎng)絡(luò)詞表示學習模型中存在的三個不足。
其次,本文從維基百科和在線英語詞典中抽取了詞語的解釋和描述文本作為詞語的屬性文本。該屬性文本是有別于上下文結(jié)構(gòu)的內(nèi)在語義信息,也可稱之為詞語的屬性語義文本。在語言模型中,罕見詞由于缺乏上下文詞語的貢獻,從而得不到充分的訓練,如果使用上述屬性語義文本則可有效地彌補因為結(jié)構(gòu)特征稀疏而導(dǎo)致的罕見詞訓練不充分問題。對于非罕見詞,屬性語義文本也能提供豐富的參考特征,從而優(yōu)化詞表示學習過程。對于反義詞出現(xiàn)于上下文窗口且同義詞未出現(xiàn)于上下文窗口的不足,屬性語義文本也能根據(jù)詞語的內(nèi)在語義信息判斷,誘導(dǎo)詞表示學習模型訓練。因此,通過構(gòu)建詞語的屬性語義文本可有效地解決神經(jīng)網(wǎng)絡(luò)詞表示學習中存在的三個不足。
再次,現(xiàn)有的詞表示學習常用的方法是在Word2Vec的目標函數(shù)后面添加一些約束項。而基于矩陣分解思想進行研究和改進的工作較少。由于,Levy和Goldberg證明了Word2Vec的實質(zhì)是隱式地分解添加了負采樣的非負點互信息矩陣。因此,本文采用了誘導(dǎo)矩陣補全(Inductive Matrix Completion, IMC)的矩陣分解算法訓練語言模型,該模型是一個多資源融合學習的模型,可通過兩個輔助矩陣優(yōu)化目標矩陣的分解。
基于以上的處理,本文提出的算法可有效解決基于神經(jīng)網(wǎng)絡(luò)的詞表示學習中存在的三個不足,即通過同義詞與反義詞詞典、屬性語義文本和誘導(dǎo)矩陣補全算法,罕見詞、同義詞和反義詞被優(yōu)化三次。另外,通過顯式地構(gòu)建SAD詞典,以及詞語的解釋和描述文本,可有效提升詞表示學習算法在詞相似度評測任務(wù)中的性能。
詞語表示學習最簡單的是獨熱表示(One-hot Representation)[14],獨熱表示存在表示維度高、數(shù)據(jù)稀疏、無法反映語義信息等缺陷,進而無法進行詞語之間的語義計算。而分布式詞表示學習可以完全解決該問題。因為分布式詞表示學習方法一般通過神經(jīng)網(wǎng)絡(luò)將詞語與其上下文詞語之間的關(guān)系壓縮到一個低維度的向量表示空間中,該壓縮機制的提出完全是模擬了人腦中神經(jīng)元的工作機制。壓縮后詞表示向量中的每一個維度均與詞語的某種結(jié)構(gòu)存在關(guān)聯(lián)關(guān)系,例如,文獻[15-17]對詞表示向量中單維度的實際意義進行了開創(chuàng)性的研究。
基于神經(jīng)網(wǎng)絡(luò)訓練詞向量也經(jīng)歷了從復(fù)雜到簡單、從低效到高效的發(fā)展歷程。例如,Bengio[6]于2006年提出了神經(jīng)網(wǎng)絡(luò)概率模型(Neural Probabilistic Language Model, NPLM),該模型開創(chuàng)了使用神經(jīng)網(wǎng)絡(luò)訓練詞向量的先河。需要注意的是,最早將分布式詞向量應(yīng)用于實際任務(wù)的是Miikkulainen和Dyer[18]。但是,NPLM訓練約1千萬的詞語,需要耗時3周左右。因此,在文獻[19-22]中Bengio、Goodman、Hinton、Mnih等人對NLPM的優(yōu)化提出了不同的方案。Mikolov等[9-10]將詞向量學習和語言模型學習分步訓練,從而提出了Word2Vec模型,Word2Vec被廣泛應(yīng)用于文本分類[23]、分詞[24]、情緒分類[25-26]等領(lǐng)域。隨后,短語[27]、句子[28]、文檔[29]等的表示學習算法被相繼提出。
隨后,Levy和Goldberg[30]證明了Word2Vec的實質(zhì)是隱式地分解添加了負采樣的非負點互信息矩陣(Shifted Positive Pointwise Mutual Information, SPPMI)。如果該矩陣刪除了負采樣系數(shù)(不考慮負采樣),則變成了非負點互信息矩陣(Positive Pointwise Mutual Information, PPMI)。獲得了詞語和上下文詞語之間的PPMI矩陣,可較方便地計算得到Shifted PPMI(SPPMI)矩陣。分解PPMI矩陣和SPPMI矩陣則可得到每個詞語的分布式表示向量。Levy和Goldberg在文獻[31]中驗證了使用奇異值分解(Singular Value Decomposition, SVD)PPMI在部分數(shù)據(jù)集上詞表示的性能優(yōu)于SGNS,但是在有些數(shù)據(jù)集上性能恰好相反。在文獻[27]中,使用SVD分解SPPMI矩陣在詞相似度任務(wù)上性能均優(yōu)于SGNS。文獻[32-33]中,Hamilton等認為如果想要精準地得到詞表示向量,SVD方法應(yīng)該為首選,而非SGNS。
在神經(jīng)概率模型中,詞表示學習的目標是最大化詞語序列的出現(xiàn)概率,如式(1)所示。
(1)
但上述計算復(fù)雜度非常高,隨后,Mikolov等[9-10]提出了CBOW和Skip-Gram兩種詞表示訓練模型。Mikolov等同時提出了兩種優(yōu)化加速方法: 層次化的Softmax(Hierarchical Softmax, HS)和負采樣(Negative Sampling, NS)?;贜S優(yōu)化的Skip-Gram可簡稱為SGNS。
在文獻[30]中已經(jīng)證明,SNGS建模的過程為隱式地分解特征矩陣的過程。該特征矩陣可通過點互信息(Pointwise Mutual Information,PMI)矩陣進行構(gòu)建。
PMI主要是用來衡量兩個變量之間的相關(guān)性,其定義如式(2)所示。
(2)
log取自信息論中對概率的量化轉(zhuǎn)換。在自然語言處理等任務(wù)中,Church和Hanks[34]首次將PMI矩陣引入到計算詞語相似度任務(wù)中[35]。因此,PMI也可以衡量兩個詞語之間的相關(guān)性,其可定義為式(3)所示。
(3)
其中,#(w,c)為詞語w和上下文c在整個語料上出現(xiàn)的次數(shù)。
Levy等在文獻[30]中將PMI矩陣重新定義為式(4)所示。
(4)
式(4)在式(3)的基礎(chǔ)上乘了|D|(總詞語個數(shù)),避免PMI的值太小。
Levy等在文獻[30]中證明了語言建模中SGNS模型的實質(zhì)為矩陣分解,如式(5)所示。
(5)
其中,k為負采樣,通過設(shè)置k值可以調(diào)節(jié)在矩陣分解的過程中負采樣對詞表示性能的影響。由于式(5)會出現(xiàn)如下情形:
PMI(w,c)=log 0=-∞
(6)
因此,在自然語言處理中,可用PPMI矩陣替換PMI矩陣,其定義如式7所示。
PPMI(w,c)=max{PMI(w,c),0}
(7)
最終,Levy等[30]結(jié)合式(5)和式(7)提出了一種新的基于矩陣分解的詞表示學習算法,該算法顯式地分解SPPMI矩陣,該矩陣定義為式(8)所示。
SPPMI(w,c)=max{PMI(w,c)-logk,0}
(8)
至此,文獻[30]提出了PMI矩陣、PPMI矩陣和SPPMI矩陣,它們的定義如式(9)~式(11)所示。
式(9)中,PMI矩陣中會出現(xiàn)元素值為負無窮的情形。式(10)中,PPMI矩陣中未考慮SGNS中的負采樣數(shù)k。式(11)中,SPPMI矩陣既能避免元素值為負無窮的情形,又能融入SGNS中的負采樣k。因此,為了更好地獲得每個詞語的表示向量,Levy等[30]使用了SVD方法對SPPMI矩陣進行分解,即MSPPMI≈U·Σ·VT,此時每個詞語的表示向量可定義為式(12)所示。
WSVD=U·Σα
(12)
Caron[36]建議為了獲得更好性能的詞向量,應(yīng)該仔細調(diào)整α的值。Levy等[30]設(shè)置了α為0.5。
文獻[32-33]建議在基于矩陣分解的詞表示學習任務(wù)中應(yīng)該盡量使用SVD獲得高性能的詞表示向量。但是SVD算法是一個單純的矩陣分解算法,該算法與本文的設(shè)想有些差別,因此,本文希望借助協(xié)同過濾的思想實現(xiàn)多源數(shù)據(jù)特征協(xié)同分解,從而使得學習得到的詞表示中蘊含各個輔助矩陣中有價值的特征信息。
基于本文收集的同義詞與反義詞信息,可以較方便地構(gòu)建同義詞與反義詞矩陣(Synonyms and Antonyms Matrix, SAM)。基于本文收集的詞語屬性文本,進而較方便地構(gòu)建詞語語義特征矩陣(Semantic Feature Matrix, SFM)。式(11)詳細介紹了如何構(gòu)建上下文特征矩陣(Context Feature Matrix, CFM)。SFM矩陣能夠反映詞語之間的屬性語義關(guān)聯(lián),CFM矩陣能夠反映詞語之間的結(jié)構(gòu)語義關(guān)聯(lián)。SAM矩陣可以使同義詞的嵌入在向量空間上具有更相近的空間距離,使反義詞的嵌入在向量空間上具有更遠的空間距離,而非同義詞和非反義詞卻不受影響。
至此,本文算法的難點在于如何將SAM、SFM和CFM三個特征矩陣進行聯(lián)合學習。恰巧的是,Natarajan和Dhillon[37]在2014年提出了一種新的誘導(dǎo)矩陣補全(Inductive Matrix Completion, IMC)算法。 IMC算法使用了基因特征輔助矩陣X∈d1×m和疾病特征輔助矩陣Y∈d2×n去分解基因-疾病目標矩陣M∈m×n。IMC的目標函數(shù)定義如式(13)所示。
(13)
由式(13)可知,IMC算法的實質(zhì)也是矩陣分解,但是在矩陣分解的過程中,從矩陣X∈d1×m和矩陣Y∈d2×n中學習有價值的特征嵌入到矩陣W∈k×d1和矩陣H∈k×d2中,最終使得矩陣M∈m×n滿足M≈XTWTHY。
綜上所述,本文使用誘導(dǎo)矩陣補全算法融合學習SAM、SFM和CFM三個特征矩陣,使用WTH作為每個詞語的表示向量。對于集成學習,最直接的設(shè)想是將CFM矩陣設(shè)置為IMC算法中待分解的目標矩陣M∈m×n,將SAM特征矩陣設(shè)置為IMC算法中的矩陣X∈d1×m,將SFM特征矩陣設(shè)置為IMC算法中的矩陣Y∈d2×n,該算法被稱為基于多源信息融合的分布式詞表示學習算法(MSWE)。為了提升性能,本文基于IMC算法嘗試了另外6種特征學習方式,其基本流程將在“實驗與分析”一節(jié)展開詳述。另外,我們通過分析可以發(fā)現(xiàn),SAM和SFM的準確構(gòu)建與否直接影響著CFM分解后WTH在詞相似度等任務(wù)中的表現(xiàn)性能。
首先將所有的相似度測試集中的單詞放入到一個文本中,并對該文本中的詞語做去重處理,得到由測試集構(gòu)成的相似度詞典S,S的大小為5 987,且si∈S,i<=|S|。
本文下載了最新版本的全部英文維基百科語料(1)https: //dumps.wikimedia.org/。SGNS算法在訓練語言模型時需要每個詞語以空格的方式分割,由于英文自帶空格作為分隔符,因此將全部的維基百科語料輸入到SGNS模型便可以訓練得到語言模型。本文的目標是更好地分解上下文特征矩陣CFM,因此首先需要構(gòu)建出穩(wěn)健的CFM特征矩陣。整個英文維基百科語料有數(shù)千萬個詞語,而基于矩陣分解的算法計算數(shù)千萬詞語的表示向量具有較高的運算復(fù)雜度,因此,本文僅考慮如何訓練出相似度詞典S中每個詞語的表示向量,即僅考慮5 987個詞語。綜上,CFM特征矩陣構(gòu)建可分為兩個部分。
(1)上下文特征文本預(yù)處理(a)從下載的英文維基百科語料中抽取出正文文本,并刪除所有的HTML標記等噪聲數(shù)據(jù); (b)將正文文本中的大寫單詞和大寫字母全部轉(zhuǎn)化為小寫; (c)將正文文本中的數(shù)字全部轉(zhuǎn)化為特殊符號“NUMBER”; (d)將正文文本以逗號、問號、感嘆號斷行,即每行一條文本; (e)如果該行文本中包含有相似度詞典S中的任意一個詞語,則保留該條文本,否則刪除該條文本。最終保留的文本有3 770 834條。
在網(wǎng)絡(luò)資源中,有較多的網(wǎng)站可以獲取詞語的同義詞和反義詞等信息。本文使用Thesaurus(2)http: //www.thesaurus.com/提供的同義詞與反義詞數(shù)據(jù)。構(gòu)建SAM特征矩陣的具體步驟如下:
(1)同義詞與反義詞爬取使用爬蟲技術(shù),利用“http://www.thesaurus.com/browse/+關(guān)鍵詞+?s=t”作為爬取內(nèi)容的鏈接,爬取之后的內(nèi)容為含有HTML標記的文本,因此需要對該文本做提取同義詞與反義詞的操作。經(jīng)過分析發(fā)現(xiàn),該文本中含有同義詞與反義詞的文本行為json格式的數(shù)據(jù)。因此僅需要解析json數(shù)據(jù)就可以提取得到相似度詞典中每個詞語的同義詞和反義詞列表。
SFM特征矩陣可被認為是詞語之間的結(jié)構(gòu)語義關(guān)聯(lián),該語義信息是由詞語與上下文詞語之間的結(jié)構(gòu)特征所反映出來的。具體構(gòu)建過程如下:
(1)語義文本爬取對于相似度詞典S中的每個詞語si做如下處理: (a)從英文維基百科頁面中抽取詞語的解釋和描述文本,解釋文本的起始標記為“si”,終止標記為“
(2)語義文本預(yù)處理(a)刪除HTML等標記; (b)刪除英文停用詞; (c)得到每個si的語義文本,記為ST文件。
本文訓練詞向量的目標函數(shù)為式(13),該目標公式來自于誘導(dǎo)矩陣補全算法。誘導(dǎo)矩陣補全算法通過兩個輔助矩陣X∈d1×m和Y∈d2×n分解目標矩陣M∈m×n,分解后得到矩陣W∈k×d1和矩陣H∈k×d2中,本文使用WTH作為每個詞語的表示特征矩陣。因此,本文的模型訓練復(fù)雜度主要來自于誘導(dǎo)矩陣補全過程,該過程的算法復(fù)雜度為O((nnz(M)+md2+mk)k),nnz(M)表示M中非零元素的個數(shù)。
在文獻[12]中使用了6個詞相似度數(shù)據(jù)集評測提出算法的性能,本文同樣使用文獻[12]中所采用的6個數(shù)據(jù)集,并和文獻[12]提出的算法做對比,其中,WordSim353在多篇文獻中被作為評測數(shù)據(jù)集[38-41]。WordSim353通常被拆分為WordSim Similarity和WordSim Relatedness兩個評測數(shù)據(jù)集。另外,本文刪除了相似度詞典中的名詞所有格詞語和不能在網(wǎng)絡(luò)資源中查詢到解釋或描述文本的詞語,總共刪除詞語118個,最終在相似度詞典中有剩余詞語5 987個。評測數(shù)據(jù)集的具體信息如表1所示。
本文通過訓練5 987個詞語的表示向量,驗證基于誘導(dǎo)矩陣補全的詞語表示學習的可行性。本文算法首先在小規(guī)模的語料數(shù)據(jù)和詞典知識上進行學習。而超大規(guī)模的矩陣分解一般是采用迭代和Map-Reduce[43]等分布式計算框架。另外,基于消息傳遞接口(Message-Passing-Interface, MPI)[44]可實現(xiàn)進程級別的矩陣分解并行算法。這些計算框架為大規(guī)模語料數(shù)據(jù)的表示學習提供了可能。
表1 詞相似度評測數(shù)據(jù)集
為了研究不同的融合方式對詞表示的性能影響,本文提出了7類信息集成方法:
MSWE@CFM_SFM使用SVD將SFM特征矩陣降維為100,并作為IMC算法中的矩陣Y。CFM特征矩陣不降維且作為IMC算法中的矩陣M。IMC算法中的矩陣X設(shè)置為單位矩陣E。
MSWE@SAM_CFM_SFM使用SVD將SFM特征矩陣降維為100,作為IMC算法中的矩陣Y。CFM特征矩陣不降維且作為IMC算法中的矩陣M。SAM矩陣設(shè)置為IMC算法中的矩陣X。
MSWE@sam_CFM_SFM使用SVD將SFM特征矩陣降維為100,作為IMC算法中的矩陣Y。CFM特征矩陣不降維且作為IMC算法中的矩陣M。將SAM特征矩陣中的-1修改為0,且作為IMC算法中的矩陣X。
MSWE@CFM_sam_SFM使用SVD將SFM特征矩陣降維為100,作為IMC算法中的矩陣Y。CFM特征矩陣中設(shè)置同義詞為1,反義詞為0,其余元素值保持不變,變換后的CFM特征矩陣作為IMC算法中的矩陣M。IMC算法中的矩陣X設(shè)置為單位矩陣E。
MSWE@CFM_SAM使用SVD將SAM特征矩陣降維為100,且作為IMC算法中的矩陣Y。IMC算法中的矩陣X設(shè)置為單位矩陣E。
MSWE@CFM_SAM+SFM使用SVD將SFM特征矩陣降維為100,使用SVD將SAM特征矩陣降維為100,兩個降維后的矩陣簡單拼接后作為IMC算法中的矩陣Y。IMC算法中的矩陣X設(shè)置為單位矩陣E。
MSWE@CFM_SAM+CFM_SFM使用SVD將SFM特征矩陣降維為100,使用SVD將SAM特征矩陣降維為100,并分別使用IMC算法得到各自的詞語表示,之后將兩者的詞語表示進行線性拼接。
以上算法是本文算法的7類數(shù)據(jù)融入嘗試,MSWE@CFM_SFM和MSWE@CFM_SAM對比分析了將屬性語義特征和同義詞與反義詞特征設(shè)置為IMC算法中的矩陣Y后對詞語表示的影響,矩陣X設(shè)置為單位矩陣。MSWE@SAM_CFM_SFM和MSWE@sam_CFM_SFM對比分析了將同義詞與反義詞特征矩陣中的反義詞設(shè)置為0或-1時對詞語表示的影響。另外,MSWE@CFM_SAM+SFM和MSWE@CFM_SAM+CFM_SFM對比分析了先融合后分解與先分解后融合策略對詞語表示的影響。為了驗證本文提出的融合算法的性能,本文又引入了5類基于神經(jīng)網(wǎng)絡(luò)的詞表示學習算法進行性能對比測試。例如,CBOW和Skip-Gram是Word2Vec[9-10]提出的兩種語言訓練模型,基于負采樣優(yōu)化的Skip-Gram簡稱為SGNS。DEPS是文獻[12]所提出的算法,Glove是文獻[42]所提出的方法,Huang是文獻[13]所提出的算法。為了驗證本文算法中引入的CFM、SFM和SAM是否有效,本文分別測試了它們在詞相似度評測數(shù)據(jù)集上的表現(xiàn),評測方法為保留原始維度長度和使用SVD降維到100維度時的性能。本實驗中的設(shè)置為: 窗口大小為5,向量長度為100,λ為0.1。在構(gòu)建SFM矩陣時,僅保留了詞頻大于等于2的詞語。本文算法與其他各對比算法均在2.2節(jié)中處理所得的3 770 834條文本上進行實驗。對比算法所采用的語料中不包含同義詞與反義詞信息以及解釋文本等。
本節(jié)詳細列出了每類算法在6類評測數(shù)據(jù)集上的性能表現(xiàn),進而分析本文提出的算法為何能夠在詞語相似度評測中獲得較好的性能。本文使用余弦相似度公式計算了兩個詞語之間的相似度值。本文同樣使用余弦相似度衡量評測數(shù)據(jù)集中的人工標注的結(jié)果與本實驗提供的相似度值之間的相關(guān)性,即人工標注的相似度值與計算所得的相似度值之間的余弦相似度值作為衡量算法優(yōu)劣的評價指標。具體結(jié)果如表2所示。
表2 詞表示學習算法性能對比分析
從表2可以看出,本文提出的多源數(shù)據(jù)融合的詞表示學習算法中,有5類數(shù)據(jù)融合方式均能在6類詞相似度評測數(shù)據(jù)集上獲得優(yōu)異的性能。尤其是在Rare Words和M Turk上性能的提升是最明顯的。本文在之前內(nèi)容中已經(jīng)闡述過,SAM、CFM和SFM的性能直接影響特征融合的后詞表示的性能。從表2中可以發(fā)現(xiàn),SGNS和CBOW的性能基本一致。CFM為本文通過2.2節(jié)中的步驟構(gòu)建出來的特征矩陣,由于CFM是SGNS隱式分解的目標矩陣,因此,SGNS和CFM在理論上是性能一致的。但是結(jié)果顯示,CFM(未使用SVD分解)的性能略優(yōu)于SGNS,尤其在Rare Words數(shù)據(jù)集上優(yōu)勢更明顯,這說明基于構(gòu)建矩陣的方法能夠過濾掉一些噪聲詞匯。另外,本文構(gòu)建的SFM特征矩陣的性能劣于SGNS,也劣于CFM(SVD)。CFM(SVD)和SFM(SVD)拼接后性能提升不明顯,其性能稍優(yōu)于CFM(SVD)的詞表示性能,高于SFM(SVD)的詞表示性能,這表明簡單的向量拼接在一定范圍內(nèi)能帶來性能上的提升。采用了基于誘導(dǎo)矩陣補全的數(shù)據(jù)特征融合算法后,MSWE@SAM_CFM_SFM和MSWE@sam_CFM_SFM的性能劣于SGNS,而其余5類特征融合方式卻獲得了優(yōu)異的性能表現(xiàn),這表明基于誘導(dǎo)補全的數(shù)據(jù)特征融合方式比簡單的特征拼接更有效果。另外,基于該實驗結(jié)構(gòu)還發(fā)現(xiàn),本文構(gòu)建的同義詞與反義詞特征矩陣SAM,如果將其直接作為IMC算法中的矩陣X,不論是否將反義詞之間的元素值設(shè)置為0或-1,均將獲得較差的性能。但是如果將SAM特征矩陣降維后作為IMC中的矩陣Y,其性能較CFM與CFM(SVD)均獲得了較大的提升。上下文特征矩陣CFM與屬性語義特征矩陣SFM聯(lián)合分解,不論是否將CFM中的同義詞設(shè)置為1且反義詞設(shè)置為0,其對結(jié)果的影響較小。另外,將CFM同SFM和SAM的其中之一聯(lián)合分解,其性能均優(yōu)于CFM,這說明將屬性文本和同義詞與反義詞融入詞表示得到的性能優(yōu)于僅考慮上下文結(jié)構(gòu)的詞表示。MSWE@CFM_SAM+SFM和MSWE@CFM_SAM+CFM_SFM的實驗結(jié)果表明,將SAM和SFM先使用IMC分解后線性拼接的性能優(yōu)于將其先線性拼接后使用IMC分解。
綜上分析,本文可得出如下結(jié)論:
(1) 將不同源的特征降維后,采用簡單的拼接并不能得到詞表示性能的較大提升。
(2) 比起拼接的策略融合多源數(shù)據(jù)特征,本文引入的誘導(dǎo)矩陣補全算法能夠從融合的多源特征中學習到重要的數(shù)據(jù)特征,使得最終學習得到的詞表示性能得到極大的提升。
(3) 如果方法得當,通過構(gòu)建語言模型的SPPMI矩陣,其獲得的詞表示性能能夠達到與基于神經(jīng)網(wǎng)絡(luò)的詞表示等同或更優(yōu)的性能。
(4) 在引入多源特征時,使用SVD降維后的特征比使用原始的特征更有效。例如,本文中使用的同義詞與反義詞特征矩陣SAM。
(5) 融合多源的數(shù)據(jù)特征構(gòu)建出來的詞表示的性能優(yōu)于使用單一特征構(gòu)建的詞表示性能,因此,在詞表示學習算法中,基于誘導(dǎo)矩陣補全的多視圖集成學習是一種行之有效的方法。
在構(gòu)建詞語的屬性語義特征SFM時,并不是所有的詞語都參與構(gòu)建矩陣的過程,本文按照詞頻過濾掉了一些詞頻小于閾值的詞匯。表3是爬取的屬性語義文本中詞頻大于或者等于閾值的詞語個數(shù)。
表3 屬性特征文本中詞語數(shù)量統(tǒng)計
如表3所示,語義文本中共有詞語45 927個,詞頻大于或者等于2的詞語在語義文本中共有22 744個,隨著閾值的變大,參與構(gòu)建矩陣的詞語數(shù)量就越少。本文設(shè)置的詞頻過濾閾值為2、4、6、8、10、15、20。那么,通過不同閾值構(gòu)建的SFM矩陣對詞表示的性能影響又是如何呢?其分析結(jié)果如圖1所示。
圖1 詞頻過濾對SFM特征矩陣的性能影響
從圖1可以看出,在6個詞語相似度數(shù)據(jù)集上,設(shè)置詞語表示長度為100,隨著詞頻閾值設(shè)置越大,過濾掉的詞匯就越多,在這種條件下構(gòu)建出來的SFM特征矩陣在詞語相似度任務(wù)上表現(xiàn)出來的性能就越差。當設(shè)置詞頻過濾閾值為2時,參與構(gòu)建SFM特征矩陣的詞語就越多,因此,得到的SFM特征矩陣的詞表示性能就越好。
CFM(SPPMI)特征矩陣為SGNS的矩陣分解目標矩陣,因此,CFM(SPPMI)矩陣采用SVD降維后得到的詞表示與SGNS算法獲得的詞表示是同種性質(zhì)的,即同一種算法采用不同的方式實現(xiàn)而獲得的詞表示。SGNS是采用淺層的三層神經(jīng)網(wǎng)絡(luò)搭建的模型,采用隨機負采樣算法優(yōu)化加速模型的擬合。CFM矩陣來源于SGNS的分解形式,因此為了保持形式一致,CFM(SPPMI)也保留了負采樣值k的設(shè)置[式(8)]。此時的k可以被認為是負采樣值的大小,也可以被認為是CFM(SPPMI)與SGNS之間的偏移量。圖2展示了不同k值對CFM特征矩陣的詞表示性能影響,k的取值為1、3、5、7、15、30。
圖2 負采樣k對CFM(SPPMI)特征矩陣的性能影響
從圖2可知,在Rare Words評測數(shù)據(jù)集上,設(shè)置詞語表示長度為100,隨著k值的不斷變大,CFM(SPPMI)的詞表示性能得到逐漸的提升。在其余5個詞相似度評測數(shù)據(jù)集上,CFM(SPPMI)的性能提升得非常緩慢,總體來講,當負采樣為30時,CFM的性能肯定是優(yōu)于負采樣取值為1的情形。這種增長緩慢的原因是,隨著負采樣值取的增大,引入的噪聲數(shù)據(jù)也越大,即使用的負樣本也越多(不存在上下文關(guān)系的詞語)。
從表2中可以發(fā)現(xiàn),MSWE@CFM_SFM、MSWE@CFM_sam_SFM、MSWE@CFM_SAM和MSWE@CFM_SAM+CFM_SFM等的多源信息融合方式是行之有效的,且其性能在詞語表示學習的相似度評測任務(wù)中均優(yōu)于單一的結(jié)構(gòu)特征模型,例如,SGNS、CBOW、Huang、Glove和DEPS等模型。但是上述實驗是在詞表示向量長度為100,且IMC算法中λ為0.1的設(shè)置下所得到的數(shù)據(jù)結(jié)果。因此,表4~表7中詳細分析了詞表示向量長度和式(13)中的λ在Rare Words評測集上對詞表示性能的影響。的取值為30、50、100、150和200,λ的取值為10-1、10-2、10-3、10-4和10-5。
表4 MSWE@CFM_SFM的λ與影響分析
表4 MSWE@CFM_SFM的λ與影響分析
?λ10-510-410-310-210-1300.89560.89580.89570.89570.8961500.88030.88030.88040.88030.88031000.86150.86130.86120.86130.86131500.83450.83450.83470.83470.83492000.82650.82670.82660.82650.8266
表5 MSWE@CFM_sam_SFM的λ與影響分
表5 MSWE@CFM_sam_SFM的λ與影響分
?λ10-510-410-310-210-1300.89840.89840.89840.89840.8987500.88330.88330.88330.88330.88341000.85350.85350.85350.85350.85361500.83760.83760.83760.83760.83792000.82940.82940.82940.82940.8300
表6 MSWE@CFM_SAM的λ與影響分析
表6 MSWE@CFM_SAM的λ與影響分析
?λ10-510-410-310-210-1300.87120.87160.87110.87170.8716500.83910.83930.83900.83920.83921000.82150.82160.82160.82150.82191500.81310.81340.81310.81300.81392000.81340.81350.81340.81450.8138
表7 MSWE@CFM_SAM+CFM_SFM的λ與影響分析
表7 MSWE@CFM_SAM+CFM_SFM的λ與影響分析
?λ10-510-410-310-210-1300.91050.91020.91020.91040.9107500.90090.90090.90090.90100.90161000.88020.88030.88010.88020.88031500.86480.86480.86480.86480.86502000.85020.85020.85010.85040.8504
在基于神經(jīng)網(wǎng)絡(luò)的詞表示學習中,如果詞向量的維數(shù)設(shè)置過大,會導(dǎo)致模型訓練時間較長,但是向量中包含的特征信息較多。如果詞向量的維數(shù)設(shè)置過小,雖然模型訓練時間較短,但是詞向量中包含的特征信息就較少。只有取得合適的詞向量維度值,才能在詞相似度和文本分類等評測任務(wù)中發(fā)揮出更好的性能。而在表4、表5和表6中,詞向量的維度設(shè)置得越小,則在詞相似度評測任務(wù)中表現(xiàn)出的性能越好。該結(jié)論和基于神經(jīng)網(wǎng)絡(luò)的詞表示學習中關(guān)于維度的認識較為不同。在基于神經(jīng)網(wǎng)絡(luò)的詞表示學習中,把當前詞語與其上下文詞語的結(jié)構(gòu)關(guān)系嵌入到固定長度的向量空間時,過大或過小的向量維度會引起特征的冗余或丟失。此外,在不同的語料上,相同的算法可能取得的最佳維度也不相同。本文算法的實質(zhì)是矩陣的聯(lián)合分解,以當前詞語與上下文詞語構(gòu)成的CFM特征矩陣為待分解目標矩陣,以同義詞與反義詞特征矩陣SAM和屬性語義特征SFM作為輔助分解矩陣。在分解算法中,當較小的維度被選擇時,分解算法往往會保留關(guān)鍵特征,同時刪除冗余特征,此外,擴大了不同特征之間的差異性,以便于更好地為后續(xù)的應(yīng)用服務(wù)。當然,過小的維度也同樣會導(dǎo)致特征的嚴重丟失,導(dǎo)致在詞相似度評測中表現(xiàn)出較差的性能。對于分解算法的維度,主要依賴于數(shù)據(jù)之間的相關(guān)性,即數(shù)據(jù)之間的關(guān)聯(lián)性越強,則適合降維到更小的維度,如果數(shù)據(jù)之間的關(guān)聯(lián)性較弱,則適合降維到更大的維度。本文主要是研究如何分解CFM特征矩陣,而該矩陣中的每個值均是詞語之間的上下文關(guān)系。因此,降維的維度數(shù)越少,其詞表示學習性能越好。
詞表示學習旨在學習得到詞語的低維度向量表示。向量在高維空間中呈現(xiàn)出一條多維度的線,但是投影到二維的平面之后,呈現(xiàn)出點的效果。在該節(jié)實驗中,本文將隨機選取1 000個詞語的表示向量,然后將它們投影到二維的平面上,從這些點表現(xiàn)出來的形狀分析算法捕獲了何種性質(zhì)的詞語特征。降維算法使用t-SNE算法,具體結(jié)果如圖3所示。
圖3 詞表示向量可視化
從圖3可以看出,SGNS和CFM(SVD)所訓練得到的詞表示經(jīng)過降維可視化后呈現(xiàn)出較為凌亂的布局。Glove的可視化結(jié)果中表現(xiàn)出了兩個明顯的聚類現(xiàn)象。本文中所采用的MSWE@CFM_SFM、MSWE@CFM_sam_SFM、MSWE@CFM_SAM和MSWE@CFM_SAM+SFM的可視化結(jié)果為離散的線性分布趨勢。經(jīng)過分析可以發(fā)現(xiàn),SGNS、Glove和CFM(SVD)三種算法僅僅考慮了詞語的上下文結(jié)構(gòu)關(guān)聯(lián)。假如某些詞語之間不存在上下文結(jié)構(gòu)關(guān)系,則訓練所得的詞表示在向量空間上具有較遠的距離,因此,投影到二維平面上就會呈現(xiàn)出離散的點布局。另外,本文基于詞語的屬性語義文本,可以從另外一個角度彌補因為詞語上下文結(jié)構(gòu)缺失導(dǎo)致的訓練不充分問題。
在圖3中(a)、(b)、(c)均為基于上下文結(jié)構(gòu)特征的詞表示學習算法獲得的詞向量可視化結(jié)果。從這三個可視化結(jié)果中可以發(fā)現(xiàn),詞表示向量的可視化分布顯現(xiàn)出圓形的分布。因此,可以認為基于上下文結(jié)構(gòu)訓練所得的詞向量在向量空間中的分布是均勻的。而圖3中(d)、(e)、(f)、(g)為加入了同義詞與反義詞、屬于語義文本后詞向量的可視化結(jié)果,且呈現(xiàn)出離散的線性的分布。如果兩個詞語不互相出現(xiàn)于對方的上下文中,則基于結(jié)構(gòu)訓練所得的詞表示的可視化中這兩個詞語的分布處于較遠的距離較遠。而如果這兩個詞語為同義詞或具有相似的屬性語義文本,則本文提出的MSWE算法能夠使得這兩個詞語在向量空間中具有更近的空間距離。因此,同義詞與屬性語義文本猶如兩種不同性質(zhì)的力,使得這些離散而凌亂的點更加靠近。
本文提出了一種基于多源信息融合的詞表示學習算法(MSWE)。該算法從基于神經(jīng)網(wǎng)絡(luò)的詞表示學習中獲得靈感,引入了SGNS的矩陣分解形式矩陣(SPPMI矩陣)。研究了SPPMI矩陣和SGNS之間的關(guān)系,并探討了如何構(gòu)建SPPMI矩陣才能使其性能與基于神經(jīng)網(wǎng)絡(luò)的SGNS性能達到一致水平或更優(yōu)。為了獲得更加優(yōu)異的詞表示學習性能,本文引入了多視圖集成學習的思想。該思想使用了多源的詞特征組合優(yōu)化學習,進而提升詞表示學習的性能。本文引入了詞的同義詞和反義詞數(shù)據(jù)、詞語的語義文本數(shù)據(jù)來優(yōu)化詞向量學習模型,即優(yōu)化本文提出的基于神經(jīng)網(wǎng)絡(luò)的詞表示學習存在的3個不足。為了更好地從多源數(shù)據(jù)中學習到有價值的數(shù)據(jù)特征,本文引入了誘導(dǎo)矩陣補全算法。實驗結(jié)果表明,誘導(dǎo)矩陣補全算法能夠顯著地提升詞表示學習的性能,其性能優(yōu)于簡單地將多源特征進行拼接的方法。MSWE的性能在Rare Words和M.Turk詞語相似度評測數(shù)據(jù)集上提升是最明顯的,在其余4個詞語相似度評測數(shù)據(jù)集上也均有明顯的性能提升。本文在隨后的實驗章節(jié),又著重分析了MSWE算法的參數(shù)影響,得到了一些有價值的參數(shù)組合,例如,MSWE在向量長度為30時的詞表示性能優(yōu)于長度為100的詞表示。尤其是在可視化小節(jié)中發(fā)現(xiàn),MSWE算法訓練得到的詞表示在二維平面上呈現(xiàn)出離散的線性分布趨勢。該發(fā)現(xiàn)證明本文提出的MSWE算法使得更相關(guān)的詞語在向量空間上具有更近的空間距離,而非相關(guān)詞語在向量空間上具有更遠的空間距離,其實質(zhì)也是對SGNS的一種向量優(yōu)化。