葉 天 順
(復(fù)旦大學(xué)軟件學(xué)院 上海 201203)
進(jìn)入21世紀(jì)之后,互聯(lián)網(wǎng)的飛速發(fā)展,一個(gè)極度信息化時(shí)代的到來(lái),對(duì)人們生活的各個(gè)方面都產(chǎn)生了極大的影響。這些年來(lái)世界各地的網(wǎng)絡(luò)技術(shù)飛速發(fā)展,伴隨著移動(dòng)互聯(lián)網(wǎng)的出現(xiàn),各種手持智能設(shè)備的普及,微博、論壇已經(jīng)離開(kāi)不了我們的生活。大量新興社交媒體不斷涌現(xiàn),各種創(chuàng)新技術(shù)不斷地推動(dòng)網(wǎng)絡(luò)傳播向普遍性、多樣性的方向發(fā)展。由于移動(dòng)互聯(lián)網(wǎng)的普及,普通群眾可以方便地在網(wǎng)上發(fā)表自己的觀(guān)點(diǎn),對(duì)于消費(fèi)后的餐廳酒店可以方便地進(jìn)行評(píng)論,發(fā)表意見(jiàn)變得越來(lái)越方便。用戶(hù)使用Facebook、Twitter、Yelp、微博和微信等社交媒體平臺(tái)接收朋友的生活更新,并從朋友那里學(xué)習(xí)知識(shí)。眾所周知的社會(huì)網(wǎng)絡(luò)效應(yīng)是“同質(zhì)性”的概念,這種概念在心理學(xué)[1]中發(fā)展并在社交網(wǎng)絡(luò)[2]中觀(guān)察到。這表明用戶(hù)和朋友之間往往會(huì)有相似的意見(jiàn)或主題。另一方面,社會(huì)語(yǔ)言學(xué)家還發(fā)現(xiàn),社會(huì)中的自然語(yǔ)言理解需要理解語(yǔ)言所嵌入的社交網(wǎng)絡(luò)。一個(gè)網(wǎng)絡(luò)可能會(huì)松散或緊密,這取決于成員之間如何互動(dòng)[3],并可能影響發(fā)表者采用的發(fā)言模式[4]。世界上的每個(gè)人都有自己的語(yǔ)言模式,并且會(huì)受到其他人的影響,所以擴(kuò)展語(yǔ)言模型以進(jìn)行社交化是非常有意義的事情。最近,人們已開(kāi)發(fā)出社交化語(yǔ)言模型,但是這些模型主要用于社交媒體文本搜索[5-7]。Zeng等[8]提出一種社交詞嵌入的算法,但是其社交正則化有不足之處。本文提出的社交詞嵌入的算法通過(guò)實(shí)驗(yàn)證明,所生成的詞向量的性能要優(yōu)于其他算法。
本文介紹了一種社交化的詞嵌入語(yǔ)言模型來(lái)為社交媒體中的詞生成依賴(lài)社交關(guān)系的向量。該模型采用了最簡(jiǎn)單但最有效的word2vec[8]中使用的詞嵌入模型作為基礎(chǔ)模型。為了結(jié)合朋友關(guān)系,當(dāng)訓(xùn)練詞向量時(shí),本文提出了一個(gè)社交正則項(xiàng)將社交關(guān)系融入模型。為了演示社交化詞嵌入算法,本文使用Yelp商業(yè)評(píng)論數(shù)據(jù)來(lái)訓(xùn)練社交詞嵌入語(yǔ)言模型。隨后進(jìn)行了Perplexity實(shí)驗(yàn)和SVM情感分類(lèi)實(shí)驗(yàn)來(lái)驗(yàn)證社交詞嵌入語(yǔ)言模型生成的詞嵌入向量要優(yōu)于其他的詞嵌入模型。
在將社交關(guān)系融入模型之前,我們需要將每個(gè)用戶(hù)向量加入模型中。為了訓(xùn)練詞嵌入向量,本文將連續(xù)詞袋模型(CBOW)[9]作為基礎(chǔ)模型。與CBOW不同的是,社交詞嵌入模型為每個(gè)用戶(hù)分配一個(gè)詞向量,并且加入模型進(jìn)行訓(xùn)練[8]。對(duì)于每個(gè)詞不僅像CBOW模型一樣,提供每個(gè)詞的上下文,而且為每個(gè)詞加入這個(gè)詞所對(duì)應(yīng)的用戶(hù)向量到模型中,在完成每個(gè)詞向量訓(xùn)練的同時(shí),也為每個(gè)用戶(hù)訓(xùn)練出了每個(gè)用戶(hù)的向量。
(1)
這里與之前介紹word2vec模型不同的地方是,對(duì)于不同的用戶(hù)文檔進(jìn)行輸入時(shí),模型中加入不同用戶(hù)的向量。與CBOW模型不同,這里指定上下文單詞是依賴(lài)于用戶(hù)的,不同的詞不僅要對(duì)應(yīng)其上下文信息,還要對(duì)應(yīng)不同的用戶(hù)。這意味著對(duì)于每個(gè)用戶(hù)ui,他/她將考慮預(yù)測(cè)的詞,即給出全局詞的含義并將其定制為他/她自己的偏好。更具體地說(shuō),假設(shè)使用wj∈d,其中d是向量wj的維數(shù),作為單詞w的全局向量表示。本文還將使用用戶(hù)向量ui∈d來(lái)表示每個(gè)用戶(hù)。然后,將全局詞向量和用戶(hù)向量組合為新的向量如果有一個(gè)單詞序列wj-s,…,wj+s,那么用戶(hù)ui的組合詞向量表示為與word2vec最大的不同之處是,在輸入向量時(shí),對(duì)于不同的單詞,加入其對(duì)應(yīng)的每個(gè)用戶(hù)向量。由于logP(wj|Cwj,ui))的計(jì)算需要對(duì)詞匯表中所有單詞進(jìn)行歸一化,所以當(dāng)詞匯量很大時(shí),CBOW模型難以?xún)?yōu)化。因此,最初有兩種技術(shù)用于優(yōu)化問(wèn)題:分層softmax模型[10-11]和負(fù)采樣模型[9]。由于社交詞嵌入語(yǔ)言模型實(shí)現(xiàn)的代碼是用負(fù)采樣為基本模型來(lái)實(shí)現(xiàn)的。本文以負(fù)采樣作為例子來(lái)進(jìn)行介紹,需要優(yōu)化的目標(biāo)函數(shù)是:
(2)
為了最大化目標(biāo)函數(shù),使用隨機(jī)梯度上升法對(duì)上式進(jìn)行優(yōu)化,可以推導(dǎo)出相應(yīng)的更新函數(shù)。
(3)
(4)
(5)
通過(guò)迭代學(xué)習(xí),最后可以得到每個(gè)單詞的詞向量和每個(gè)用戶(hù)的向量。
將用戶(hù)的好友關(guān)系通過(guò)本文提出的社交正則項(xiàng),融入到語(yǔ)言模型中,對(duì)于改善詞嵌入向量的學(xué)習(xí)效果可以起到很大的幫助。
(6)
(7)
(8)
當(dāng)我們使用由ui發(fā)布的文檔時(shí),用戶(hù)向量ui應(yīng)該根據(jù)其所有朋友的uj的向量進(jìn)行更新,而用戶(hù)向量uj僅基于ui進(jìn)行更新。可以將第二個(gè)目標(biāo)函數(shù)與第一個(gè)目標(biāo)函數(shù)相結(jié)合,并對(duì)全局詞向量、參數(shù)向量和本地用戶(hù)向量交替執(zhí)行隨機(jī)梯度上升法。但是,由式(7)、式(8)可知用戶(hù)向量將被更新的次數(shù)比單詞向量多得多。最初在CBOW優(yōu)化中,所有全局詞向量不受約束,因?yàn)閱卧~向量的大小可以由學(xué)習(xí)速率(與單詞的頻率組合)限定。本文使用了一個(gè)用戶(hù)向量的約束,使數(shù)值優(yōu)化穩(wěn)定。所有的損失函數(shù)是:
(9)
算法1社交詞嵌入算法
輸入:N個(gè)用戶(hù)(u1,…,uN)的社交媒體數(shù)據(jù),其中每個(gè)用戶(hù)有一個(gè)語(yǔ)料庫(kù)Wi={di,1,…,di,Mi},Mi為用戶(hù)ui寫(xiě)的文檔數(shù)量。
初始化:最大迭代次數(shù)T,學(xué)習(xí)速率η1、η2,社交正則化權(quán)重λ,上下文窗口大小c,約束參數(shù)r。
If Iterationt for alluido for alldiinWido end for if ‖ui‖>rthen end if if ‖uj‖>rthen end if end if end if 輸出:詞向量wj和用戶(hù)向量ui。 本節(jié)使用Yelp數(shù)據(jù)集來(lái)訓(xùn)練社交詞嵌入語(yǔ)言模型,通過(guò)兩個(gè)實(shí)驗(yàn)來(lái)展示本文所提出來(lái)的語(yǔ)言模型生成社交詞嵌入向量的有效性。 實(shí)驗(yàn)中使用Yelp Round 10數(shù)據(jù)集。Yelp網(wǎng)站在國(guó)外就是類(lèi)似于中國(guó)的大眾點(diǎn)評(píng)網(wǎng)站。在Yelp,用戶(hù)可以為一些商家撰寫(xiě)評(píng)論,例如餐廳,酒店等。用戶(hù)可以為餐廳或者酒店進(jìn)行打分,也可以彼此關(guān)注以接收來(lái)自朋友的信息(一些朋友信息來(lái)自Facebook或其他社交網(wǎng)絡(luò))。這個(gè)數(shù)據(jù)集和其他數(shù)據(jù)集有的優(yōu)勢(shì)是提供了好友關(guān)系,這也是為什么本實(shí)驗(yàn)選擇這個(gè)數(shù)據(jù)集的原因。Yelp數(shù)據(jù)集統(tǒng)計(jì)如表1所示。Yelp發(fā)布的數(shù)據(jù)量在數(shù)年內(nèi)增長(zhǎng)很多,所以數(shù)據(jù)量大、用戶(hù)撰寫(xiě)的評(píng)論之多適合社交詞嵌入語(yǔ)言模型進(jìn)行詞向量的訓(xùn)練。Yelp是美國(guó)最大的點(diǎn)評(píng)網(wǎng)站,令人興奮的是:Yelp公開(kāi)了他們內(nèi)部的數(shù)據(jù)集。這是可獲取大量文本的最大的社交網(wǎng)絡(luò)數(shù)據(jù)之一。實(shí)驗(yàn)中將數(shù)據(jù)隨機(jī)分為訓(xùn)練集、開(kāi)發(fā)集和測(cè)試集,其比例為8∶1∶1。如表1所示,所有結(jié)果均基于此分段的數(shù)據(jù)集。 表1 Yelp數(shù)據(jù)庫(kù)數(shù)據(jù)統(tǒng)計(jì)結(jié)果 對(duì)于Yelp提供的數(shù)據(jù)集,本實(shí)驗(yàn)并沒(méi)有使用它所提供的所有數(shù)據(jù),而是選取了模型所需要的數(shù)據(jù),比如:每個(gè)用戶(hù)及其評(píng)論、好友關(guān)系、對(duì)不同商品的評(píng)分等。本實(shí)驗(yàn)基于分離出的訓(xùn)練數(shù)據(jù)訓(xùn)練了所有的詞嵌入模型。對(duì)于下游實(shí)驗(yàn),本實(shí)驗(yàn)將根據(jù)想要測(cè)試模型的不同意圖來(lái)更改設(shè)置。詞嵌入模型代碼是基于用C語(yǔ)言編寫(xiě)的原始版本word2vec。word2vec源碼是Google所公布的源碼。本實(shí)驗(yàn)以此為基礎(chǔ)在word2vec源碼上面寫(xiě)入社交詞嵌入模型代碼。本實(shí)驗(yàn)和文獻(xiàn)[8]所進(jìn)行的實(shí)驗(yàn)進(jìn)行了對(duì)比,為了進(jìn)行公平比較,本實(shí)驗(yàn)將原始word2vec的超參數(shù)設(shè)置為對(duì)于所有模型都是相同的。例如,窗口大小設(shè)置為5,并且單詞的維度被設(shè)置為100。實(shí)驗(yàn)對(duì)所有的詞嵌入使用了CBOW模型和負(fù)采樣訓(xùn)練語(yǔ)言模型。 如果要對(duì)一個(gè)語(yǔ)言模型評(píng)判其好壞,最佳的方式是把它應(yīng)用到實(shí)際問(wèn)題中去,比如機(jī)器翻譯、語(yǔ)音識(shí)別等。然后觀(guān)察這個(gè)語(yǔ)言模型在這些實(shí)際任務(wù)中的具體表現(xiàn)。但是,這種方法首先是不容易進(jìn)行操作,其次是需要大量的時(shí)間。因此,人們就希望找一種比較直接評(píng)判方法。希望按照語(yǔ)言模型本身的一些特點(diǎn),來(lái)設(shè)計(jì)出一個(gè)簡(jiǎn)單又高效的指標(biāo)。于是,提出了perplexity。Perplexity是一種使用在自然語(yǔ)言處理領(lǐng)域中用來(lái)評(píng)價(jià)一個(gè)語(yǔ)言模型的好壞的非常有效的指標(biāo)。它可以評(píng)價(jià)一個(gè)語(yǔ)言模型是否為一個(gè)很好的預(yù)測(cè)樣本的標(biāo)準(zhǔn)。如果復(fù)雜度越低,即perplexity值越小,表示語(yǔ)言模型的預(yù)測(cè)性能更好。本文在第一個(gè)實(shí)驗(yàn)中選用perplexity(復(fù)雜度)來(lái)評(píng)價(jià)社交詞嵌入語(yǔ)言模型。Perplexity的定義如下: (10) 式中:wi代表第i個(gè)詞,PP為Perplexity運(yùn)算出來(lái)的結(jié)果。 在第一個(gè)實(shí)驗(yàn)中,使用不同的參數(shù)來(lái)測(cè)試詞嵌入模型。首先在開(kāi)發(fā)集尋找最優(yōu)的超參數(shù),然后在測(cè)試集上進(jìn)行測(cè)試。使用perplexity作為實(shí)驗(yàn)的一種指標(biāo),由于本質(zhì)上社交詞嵌入語(yǔ)言模型和word2vec不是直接優(yōu)化perplexity的語(yǔ)言模型,因此本實(shí)驗(yàn)的perplexity值要高于文獻(xiàn)中的一些perplexity值。本實(shí)驗(yàn)僅用于展示本文所提出的模型的不同超參數(shù)設(shè)置。根據(jù)定義,perplexity是用來(lái)評(píng)估一個(gè)模型在預(yù)測(cè)當(dāng)前單詞的基礎(chǔ)上有多少其他單詞的指標(biāo)。由于本實(shí)驗(yàn)使用大小為s=5的滑動(dòng)窗口來(lái)訓(xùn)練所有單詞嵌入,所以實(shí)驗(yàn)中提出的是六元perplexity,然后根據(jù)整個(gè)訓(xùn)練數(shù)據(jù)訓(xùn)練詞嵌入。為了提高測(cè)試不同超參數(shù)的效率,對(duì)于開(kāi)發(fā)集和測(cè)試集,實(shí)驗(yàn)中隨機(jī)抽取每個(gè)用戶(hù)的一個(gè)句子來(lái)評(píng)估基于perplexity的句子。 實(shí)驗(yàn)結(jié)果如圖1和圖2所示。實(shí)驗(yàn)?zāi)康氖菫榱藢?duì)比與之前相似文獻(xiàn)中的實(shí)驗(yàn)和進(jìn)行超參數(shù)的設(shè)置,而不是與文獻(xiàn)中其他類(lèi)型的perplexity進(jìn)行對(duì)比。本類(lèi)型perplexity值偏高主要有兩個(gè)原因:(1) 本文提出的模型并不像其他語(yǔ)言模型那樣直接優(yōu)化perplexity。因此,該模型可能沒(méi)有很好的擬合數(shù)據(jù)。(2) 本實(shí)驗(yàn)使用的Yelp數(shù)據(jù)比正式語(yǔ)言更嘈雜,因此,perplexity更高。這也在文獻(xiàn)[7]中得到驗(yàn)證。在經(jīng)驗(yàn)上,盡管word2vec和本文提出的模型并不直接優(yōu)化perplexity,但它在訓(xùn)練的損失和測(cè)試有效性之間有良好的折衷,作為其他下游任務(wù)(下節(jié)中的SVM情感分類(lèi)實(shí)驗(yàn))的詞表示,有著優(yōu)秀的效果。 圖1 Perplexity在開(kāi)發(fā)集上的結(jié)果(r固定 λ變化) 圖2 Perplexity在開(kāi)發(fā)集上的結(jié)果(λ固定 r變化) 實(shí)驗(yàn)在YelpR10數(shù)據(jù)集上進(jìn)行測(cè)試,如圖1所示,固定r(用戶(hù)向量的L2正則約束)和變化λ(社交正則化參數(shù))的perplexity結(jié)果。在固定的r和變化的λ的情況下,本實(shí)驗(yàn)訓(xùn)練出的社交網(wǎng)絡(luò)詞嵌入的向量相比word2vec算法生成的詞向量,可以明顯地改善perplexity結(jié)果。本文所提出的社交正則項(xiàng)訓(xùn)練的詞向量的效果要略?xún)?yōu)于文獻(xiàn)[8]中提出的社交正則項(xiàng)。可以看出,當(dāng)增大社交正則項(xiàng)時(shí),perplexity可以得到進(jìn)一步改善,當(dāng)λ=1時(shí),實(shí)驗(yàn)效果達(dá)到最好,但當(dāng)λ過(guò)大時(shí)不會(huì)獲得更多的改善。這個(gè)原因可能是:在固定用戶(hù)向量大小時(shí),增加社交正則項(xiàng)將傾向于首先通過(guò)其朋友來(lái)優(yōu)化每個(gè)用戶(hù)向量,但最終使所有用戶(hù)向量變得盡可能相似,這將再次使其欠擬合。 圖2中顯示變化的r(用戶(hù)向量的L2正則約束)與固定λ=1(社交正則化參數(shù))的結(jié)果。它表明,當(dāng)增加正則項(xiàng)約束r時(shí),perplexity首先被降低。當(dāng)r=1時(shí),perplexity值達(dá)到最小。可以看出,本文所提出的優(yōu)化模型略?xún)?yōu)于文獻(xiàn)[8]所提出的社交正則項(xiàng)。當(dāng)繼續(xù)增加r時(shí),再次會(huì)使perplexity值增大。如果用戶(hù)向量的參數(shù)r變得太大,那么當(dāng)優(yōu)化代價(jià)函數(shù)時(shí),它將支配單詞向量。因此,在本文提出的算法中,參數(shù)r和λ是耦合的,沒(méi)有任何一種趨勢(shì)會(huì)使perplexity持續(xù)減少,所以需要通過(guò)實(shí)驗(yàn)選出最優(yōu)的超參數(shù)。實(shí)驗(yàn)將參數(shù)在{2-5,…,25}的范圍內(nèi)執(zhí)行網(wǎng)格搜索,根據(jù)驗(yàn)證集合選擇最佳的超參數(shù)。 表2為測(cè)試集上進(jìn)行測(cè)試的最終結(jié)果,可以看到,應(yīng)用詞嵌入社交化語(yǔ)言模型使最后的結(jié)果有顯著的改善,并且本文所提出的社交正則項(xiàng)的改善結(jié)果要優(yōu)于文獻(xiàn)[8]所提出來(lái)的相關(guān)模型。 表2 Perplexity在測(cè)試集上的結(jié)果 在本實(shí)驗(yàn)中使用perplexity作為評(píng)價(jià)社交詞嵌入語(yǔ)言模型的指標(biāo),首先在開(kāi)發(fā)集上找出最優(yōu)的超參數(shù):r(用戶(hù)向量的L2正則約束)和λ(社交正則化參數(shù)),然后在測(cè)試集上進(jìn)行對(duì)比實(shí)驗(yàn)。本文所提出的社交正則項(xiàng)所訓(xùn)練出來(lái)的詞向量在perplexity作為評(píng)價(jià)指標(biāo)上要優(yōu)于word2vec和文獻(xiàn)[8]模型所訓(xùn)練的詞向量,說(shuō)明了本文所提出的社交正則項(xiàng)的有效性。 本節(jié)要測(cè)試社交化詞嵌入的下游任務(wù)——Yelp評(píng)論的分?jǐn)?shù)預(yù)測(cè)。在Yelp網(wǎng)站上,用戶(hù)可以寫(xiě)評(píng)論給商家。同時(shí),用戶(hù)可以為服務(wù)提供評(píng)分,對(duì)每個(gè)商家可以打一到五分。實(shí)驗(yàn)?zāi)康氖鞘褂蒙缃辉~嵌入模型訓(xùn)練出來(lái)的詞向量,將用戶(hù)發(fā)表的每句話(huà)相加求和進(jìn)行平均表示成向量,使用支持向量機(jī)作為機(jī)器學(xué)習(xí)方法進(jìn)行學(xué)習(xí),然后進(jìn)行預(yù)測(cè)得到結(jié)果。本實(shí)驗(yàn)遵循文獻(xiàn)[8]中的任務(wù),這是長(zhǎng)文本情感分類(lèi)。為了測(cè)試這個(gè)任務(wù),實(shí)驗(yàn)采用簡(jiǎn)單的支持向量機(jī)(SVM)作為機(jī)器學(xué)習(xí)方法,其中特征是用戶(hù)向量和單詞向量的平均值,并選擇不同比例的數(shù)據(jù)來(lái)訓(xùn)練SVM分類(lèi)器。為了測(cè)試重要的數(shù)據(jù)選擇或預(yù)處理如何影響最終結(jié)果,實(shí)驗(yàn)還將用戶(hù)分為頭部用戶(hù)和尾部用戶(hù)。頭部用戶(hù),就是那些發(fā)布了大量評(píng)論的用戶(hù),而尾部用戶(hù)發(fā)布較少。然后簡(jiǎn)單地對(duì)所有用戶(hù)進(jìn)行排序,并選擇那些發(fā)布了全部評(píng)論的一半用戶(hù)為頭部用戶(hù),其他用戶(hù)則作為尾部用戶(hù)。隨機(jī)選擇五分之一的訓(xùn)練數(shù)據(jù)進(jìn)行SVM訓(xùn)練以提高實(shí)驗(yàn)效率。 表3顯示了頭部和尾部用戶(hù)的統(tǒng)計(jì)數(shù)據(jù)??梢钥闯?,頭部用戶(hù)傾向于發(fā)布更多評(píng)論并擁有更多朋友。圖3顯示了基于頭部和尾部子集訓(xùn)練的結(jié)果。可以看到,本文提出的社交正則化模型的預(yù)測(cè)結(jié)果要高于word2vec和文獻(xiàn)[8]模型的結(jié)果,進(jìn)一步說(shuō)明本文提出的社交網(wǎng)絡(luò)正則化的有效性。從圖中還可以推測(cè)出,頭部數(shù)據(jù)的個(gè)性化和社交化的改善比尾部數(shù)據(jù)更大。這意味著,當(dāng)用戶(hù)評(píng)論較少,同時(shí)與該用戶(hù)的關(guān)系鏈接較少時(shí),當(dāng)前的算法無(wú)法很好地進(jìn)行訓(xùn)練。當(dāng)用戶(hù)評(píng)論較多并且有較多的好友關(guān)系時(shí),可以用本文提出的模型算法進(jìn)行較好的訓(xùn)練。另一方面,預(yù)測(cè)頭部評(píng)論的準(zhǔn)確度高于尾部。這意味著,當(dāng)用戶(hù)寫(xiě)的評(píng)論越多和擁有更多的好友時(shí),社交詞嵌入模型可以更好地提取相關(guān)信息生成更有效果的詞向量。但是,實(shí)際上更有可能在網(wǎng)絡(luò)中隨機(jī)抽取用戶(hù)來(lái)標(biāo)注相應(yīng)的數(shù)據(jù)。因此,當(dāng)遇到需要為社交媒體注釋數(shù)據(jù)的真正問(wèn)題時(shí),認(rèn)真對(duì)待不同用戶(hù)群體可能會(huì)更好??梢赃x擇用戶(hù)好友更多而且發(fā)表了較多評(píng)論的用戶(hù)。 表3 1/5訓(xùn)練集的頭部和尾部數(shù)據(jù)統(tǒng)計(jì)結(jié)果 圖3 SVM分類(lèi)在頭部和尾部數(shù)據(jù)上的準(zhǔn)確率 本實(shí)驗(yàn)還將支持向量機(jī)在全部的五分之一數(shù)據(jù)上進(jìn)行訓(xùn)練,在開(kāi)發(fā)集上進(jìn)行超參數(shù)調(diào)整(包括用于SVM的參數(shù)),在測(cè)試集上進(jìn)行測(cè)試,并將結(jié)果在表4中顯示??梢钥闯觯疚奶岢龅纳缃徽齽t化模型要比文獻(xiàn)[8]模型準(zhǔn)確率高0.11%,比word2vec模型要好0.4%,再次通過(guò)實(shí)驗(yàn)證明社交詞嵌入模型的有效性。 表4 SVM分類(lèi)在測(cè)試集上的準(zhǔn)確率 本節(jié)提出了一種社交化的詞嵌入算法,將社交關(guān)系加入語(yǔ)言模型的訓(xùn)練中,以從社交媒體文本中和用戶(hù)社交關(guān)系中學(xué)習(xí)一組全局詞向量和一組本地用戶(hù)向量。一個(gè)簡(jiǎn)單但有效的社交正則化被強(qiáng)加給詞嵌入語(yǔ)言模型。通過(guò)實(shí)驗(yàn)表明,用戶(hù)向量本身的個(gè)性化和社交正則化可以改善下游任務(wù)。使用兩組實(shí)驗(yàn)來(lái)演示本文提出的社交詞嵌入算法的有效性。實(shí)驗(yàn)對(duì)比了Goolge提出的word2vec和文獻(xiàn)[8]中的模型,均取得了略好于它們的效果,證明了本文提出的社交詞嵌入語(yǔ)言模型的正確性和有效性。 本文提出了一種社交化的詞嵌入方法來(lái)為社交媒體中的詞生成依賴(lài)社交的詞嵌入向量。該模型采用了最簡(jiǎn)單但最有效的word2vec中使用的詞嵌入模型作為基礎(chǔ)模型。為了結(jié)合朋友關(guān)系,本文為模型添加一個(gè)社交正則項(xiàng),然后使用Yelp商業(yè)評(píng)論數(shù)據(jù)來(lái)訓(xùn)練社交詞嵌入語(yǔ)言模型,進(jìn)行了Perplexity實(shí)驗(yàn)和SVM情感分類(lèi)實(shí)驗(yàn),驗(yàn)證了本文提出的模型生成的詞嵌入向量要優(yōu)于其他的詞嵌入模型。 本文工作中也存在不足,那些擁有較多好友和發(fā)表較多評(píng)論的用戶(hù),在應(yīng)用社交詞嵌入語(yǔ)言模型時(shí)所得到的實(shí)驗(yàn)結(jié)果的改進(jìn)要優(yōu)于好友數(shù)和評(píng)論數(shù)較少的用戶(hù)。未來(lái)需要在模型中改善那些發(fā)表評(píng)論很少的用戶(hù)和那些好友比較少用戶(hù)。2 實(shí) 驗(yàn)
2.1 數(shù)據(jù)集和實(shí)驗(yàn)設(shè)置
2.2 Perplexity實(shí)驗(yàn)
2.3 SVM情感分類(lèi)實(shí)驗(yàn)
3 結(jié) 語(yǔ)