• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      基于情感分析和LDA主題模型的協(xié)同過濾推薦算法

      2017-06-01 11:29:47席俊杰代心媛何炎祥
      中文信息學(xué)報(bào) 2017年2期
      關(guān)鍵詞:副詞物品文本

      彭 敏,席俊杰,代心媛,何炎祥

      (武漢大學(xué) 計(jì)算機(jī)學(xué)院,湖北 武漢 430072)

      基于情感分析和LDA主題模型的協(xié)同過濾推薦算法

      彭 敏,席俊杰,代心媛,何炎祥

      (武漢大學(xué) 計(jì)算機(jī)學(xué)院,湖北 武漢 430072)

      協(xié)同過濾推薦算法通?;谖锲坊蛴脩舻南嗨贫葋韺?shí)現(xiàn)個(gè)性化推薦,但是數(shù)據(jù)的稀疏性往往導(dǎo)致推薦精度不理想。大多數(shù)傳統(tǒng)推薦算法僅考慮用戶對物品的總體評分,而忽略了評論文本中用戶對物品各個(gè)屬性面的偏好。該文提出一種基于情感分析的推薦算法SACF(reviews sentiment analysis for collaborative filtering),該算法在經(jīng)典的協(xié)同過濾推薦算法的基礎(chǔ)上,考慮評論文本對相似度計(jì)算的影響。SACF算法利用LDA主題模型挖掘物品潛在的K個(gè)屬性面,通過用戶在各個(gè)屬性面上的情感偏好計(jì)算用戶相似度,從而構(gòu)建推薦模型?;诰〇|網(wǎng)上評論數(shù)據(jù)集的實(shí)驗(yàn)結(jié)果表明,SACF算法不但可以有效地改善傳統(tǒng)協(xié)同過濾推薦算法中數(shù)據(jù)稀疏性的問題,而且提高了推薦系統(tǒng)的精度。

      推薦系統(tǒng);協(xié)同過濾;LDA;情感分析

      1 引言

      隨著互聯(lián)網(wǎng)的普及和信息技術(shù)突飛猛進(jìn)的發(fā)展,信息的過度豐富給信息篩選帶來了巨大的挑戰(zhàn)。個(gè)性化推薦系統(tǒng)的出現(xiàn)為用戶提供了一種解決信息過載的工具。協(xié)同過濾算法是目前應(yīng)用最廣泛的推薦算法[1-2],主要包括基于用戶[3]和基于物品[4]的協(xié)同過濾。其基本原理是基于相似性,通過度量共同評分向量的相似度來尋找相似的用戶或物品。然而,數(shù)據(jù)缺乏使得用戶共同評論的物品較少,導(dǎo)致計(jì)算相似度不準(zhǔn)確,最終影響推薦精度。

      一方面,傳統(tǒng)的協(xié)同過濾算法根據(jù)用戶的總體評分,使得用戶或者物品的相似度度量不夠精確。以手機(jī)評論為例,用戶u1和u2對同一款手機(jī)的總體評分均為4分,u1可能喜歡該款手機(jī)的外觀而認(rèn)為價(jià)格過高,而u2可能不太滿意這款手機(jī)的外觀但認(rèn)為價(jià)格合適。雖然u1和u2對該款手機(jī)的總體評分相同,但是他們的偏好卻不盡相同。由此可見評論文本中隱含著大量有關(guān)用戶偏好的信息,若能充分利用這些信息,通過對評論文本進(jìn)行情感分析,找到相似用戶,可提高推薦精度。

      另一方面,當(dāng)數(shù)據(jù)集比較稀疏時(shí),由于用戶共同評分的物品較少,僅依賴用戶對物品的總體評分來計(jì)算相似度也會(huì)導(dǎo)致相似度計(jì)算不準(zhǔn)確??紤]到用戶在評論中往往會(huì)對物品的多個(gè)屬性面進(jìn)行評價(jià),本文將基于總體評分向量的相似度計(jì)算轉(zhuǎn)化為基于屬性面層次的相似度計(jì)算。通過擴(kuò)展向量維度,在一定程度上解決數(shù)據(jù)的稀疏性問題,以提高推薦精度。

      為此,本文提出一種新的協(xié)同過濾推薦算法SACF,該算法采用一種新穎的基于情感分析和LDA主題模型的方法來預(yù)測用戶對物品屬性面的評分,并將用戶基于屬性面評分的相似度和基于總體評分的相似度進(jìn)行融合,從而找到最相似的N個(gè)用戶進(jìn)行推薦。

      本文工作的主要貢獻(xiàn)包括以下幾點(diǎn):

      (1) 將傳統(tǒng)協(xié)同過濾推薦算法中基于用戶對物品總體評分的相似度計(jì)算轉(zhuǎn)化為基于屬性面層次的相似度計(jì)算,提高了相似度計(jì)算的準(zhǔn)確性。

      (2) 提出了一種新穎的基于情感分析和LDA主題模型的算法SACF,該算法通過提取物品的屬性面,以及預(yù)測用戶對屬性面的評分來尋找相似用戶。

      (3) 通過相關(guān)實(shí)驗(yàn)分析,證明本文所提出的推薦方法從一定程度上解決了數(shù)據(jù)稀疏性的問題,提高了推薦的精度。

      2 相關(guān)工作

      2.1 推薦系統(tǒng)

      推薦系統(tǒng)(recommender system)大致可分為兩大類: 基于內(nèi)容的推薦方法和協(xié)同過濾推薦?;趦?nèi)容的推薦方法[5]是根據(jù)內(nèi)容的相似性來發(fā)現(xiàn)相似物品。其優(yōu)點(diǎn)是簡單、有效,但是基于用戶歷史信息進(jìn)行推薦,不能發(fā)掘新的用戶感興趣的信息。協(xié)同過濾推薦則是基于相似用戶具有相似喜好這一假設(shè)來進(jìn)行推薦。該類方法最大的問題是,在高維空間中基于稀疏數(shù)據(jù)計(jì)算的相似度并不準(zhǔn)確。為解決數(shù)據(jù)稀疏性的問題,很多工作對傳統(tǒng)的協(xié)同過濾推薦算法進(jìn)行改進(jìn)。

      文獻(xiàn)[6]首先根據(jù)物品之間的相似性初步預(yù)測用戶對未購買物品的評分,然后再借助傳統(tǒng)的協(xié)同過濾推薦算法進(jìn)行推薦。該方法雖然能夠緩解數(shù)據(jù)稀疏性的問題,但是初步預(yù)測評分的不準(zhǔn)確將直接導(dǎo)致最終的推薦精度不高。文獻(xiàn)[7]首先根據(jù)相似性項(xiàng)目進(jìn)行聚類,然后在初始聚類的基礎(chǔ)上進(jìn)行交叉迭代調(diào)整,最終使得聚類簇達(dá)到較為穩(wěn)定的狀態(tài),從而尋找到目標(biāo)項(xiàng)目最近鄰居并產(chǎn)生推薦。該方法雖然在一定程度上提高了推薦精度,但是聚類算法的準(zhǔn)確度將成為推薦精度的瓶頸。

      近年來,采用LDA主題模型和評論文本進(jìn)行推薦的研究逐漸增多,但很少有研究將兩者結(jié)合起來的?,F(xiàn)有的利用LDA進(jìn)行推薦的研究多數(shù)是針對文檔進(jìn)行推薦[8],而不是將LDA應(yīng)用于物品的評論文本。跟本文工作比較相近的是文獻(xiàn)[9]和文獻(xiàn)[10],文獻(xiàn)[9]依據(jù)隱語義模型[11]的基本原理,使用LDA直接將用戶對物品的評分矩陣進(jìn)行分解,通過降維的方法來提高相似度的計(jì)算精度。但是降維處理往往導(dǎo)致信息丟失,在物品空間維度很高或者用戶評分矩陣比較稀疏的情況下,降維效果難以得到保證。文獻(xiàn)[10]通過對評論文本進(jìn)行情感分析,挖掘用戶對物品各屬性的情感偏好,然后通過聚集或者平均的方法預(yù)測用戶對物品的總體評分,最后利用協(xié)同過濾的方法進(jìn)行推薦。文獻(xiàn)[12]則是在情感分析的基礎(chǔ)上采用回歸的方法預(yù)測總體的評分值。這些方法雖然利用評論文本緩解了數(shù)據(jù)稀疏性的問題,但是簡單地通過聚合或者回歸的方法來預(yù)測總體評分而忽略了用戶在不同屬性面上的相似性,導(dǎo)致相似度計(jì)算不夠準(zhǔn)確,進(jìn)而影響了推薦精度。本文充分利用評分文本提供的信息,將相似度的計(jì)算轉(zhuǎn)化到屬性層面,使得相似度計(jì)算更加精確。

      2.2 情感分析

      現(xiàn)有的屬性詞和情感詞提取方法主要分為有監(jiān)督的學(xué)習(xí)方法[13-14]、半監(jiān)督的學(xué)習(xí)方法[15]和無監(jiān)督的學(xué)習(xí)方法[16-17]。文獻(xiàn)[18]是最早也是當(dāng)前最流行的屬性詞、情感詞提取方法,它主要是基于關(guān)聯(lián)規(guī)則來挖掘?qū)傩栽~和情感詞。盡管屬性詞和情感詞提取很早就開始研究,但是情感分析在推薦算法中的研究才剛剛起步。情感分析在推薦系統(tǒng)中的應(yīng)用主要包括屬性詞和情感詞的提取[14,18-19]及對屬性面的評分預(yù)測[20-22]。文獻(xiàn)[20]根據(jù)文獻(xiàn)[19]的方法提取出評論文本中的屬性詞和情感詞,然后基于統(tǒng)計(jì)方法預(yù)測用戶對物品屬性面的評分。該方法將一個(gè)句子中所有的情感詞都作為該句子中屬性詞的修飾詞,導(dǎo)致計(jì)算的評分值不準(zhǔn)確。

      文獻(xiàn)[21]著重提取屬性詞—情感詞對,它首先基于“中文文本中副詞后面緊跟著形容詞”這一規(guī)則,利用副詞的種子詞庫來提取情感詞;然后通過預(yù)設(shè)的屬性詞相似度閾值進(jìn)行過濾,用高頻率屬性詞替代低頻率屬性詞,得到屬性面-情感詞對;最后利用情感詞的情感極性來預(yù)測用戶對屬性面的評分分值。該文中提取屬性詞—情感詞對的方法存在一些缺陷: 首先,在利用種子副詞提取情感詞以及根據(jù)已有情感詞和屬性詞提取新的屬性詞和情感詞時(shí),它只考慮了詞匯的位置信息,即詞匯之間的距離,這會(huì)將那些原本不存在修飾關(guān)系的詞對也提取出來,導(dǎo)致最終提取出的詞對不夠準(zhǔn)確。其次,若一個(gè)情感詞前面沒有任何副詞,該方法將不能提取出這樣的情感詞。

      針對文獻(xiàn)[21]中方法存在的缺陷,本文在該方法的基礎(chǔ)上進(jìn)行改進(jìn),提出一種新的情感詞提取方法。首先,擴(kuò)充情感詞的種子詞庫,使得前面沒有副詞的情感詞不會(huì)被遺漏;其次,利用依存句法分析,提取屬性詞-情感詞對,從而過濾掉不相關(guān)的詞對,提高了詞對的提取精度;最后,在評分預(yù)測階段,考慮程度副詞和否定副詞對屬性詞分值的影響,使得屬性詞的評分更加準(zhǔn)確。

      此外,本文利用LDA主題模型來獲取物品潛在的屬性面,并結(jié)合用戶關(guān)注度,預(yù)測用戶對物品屬性面的評分。實(shí)驗(yàn)表明,本文提出的方法能夠更準(zhǔn)確合理地預(yù)測用戶對屬性面的評分。

      3 問題描述

      本節(jié)首先給出屬性面和情感詞的定義,然后形式化描述本文的主要任務(wù)。

      屬性面: 在線評論時(shí)用戶常使用不同的詞匯描述相同的產(chǎn)品特征,如屬性詞“顏色”和“色彩”都是關(guān)于手機(jī)的顏色外觀的特征描述詞,屬于同一個(gè)屬性面。本文使用LDA主題模型將這些語義相近的屬性詞匯歸納為同一個(gè)屬性面。

      情感詞: 情感詞表達(dá)了用戶對物品屬性面積極或者消極的情緒、態(tài)度和情感。例如,在評論語句“手機(jī)的外觀很好看”中,“好看”一詞表達(dá)了用戶積極的情感極性。

      屬性詞-情感詞對: 一個(gè)屬性詞和在評論句子中表達(dá)該屬性詞極性的情感詞組成的詞對。

      基于以上定義,本文的問題可以描述為,對于給定的N個(gè)用戶U={u1,u2,…,uN}對L個(gè)物品R={r1,r2,…,rL}的M個(gè)評論文本的集合D={d1,d2,…,dM},首先,從每個(gè)評論文本的每個(gè)句子中抽取屬性詞和情感詞,并根據(jù)屬性詞的極性得到用戶對屬性詞評分的四元組集合{userid, itemid, feature, value};然后利用LDA主題模型發(fā)現(xiàn)物品潛在的K個(gè)屬性面F={f1,f2,…,fK};其次,計(jì)算用戶對屬性面的評分四元組{userid, itemid, feature-aspect, value};最后,構(gòu)建用戶相似度模型,根據(jù)用戶最相似的K個(gè)鄰居進(jìn)行個(gè)性化推薦。

      4 SACF推薦算法

      本文中提出的SACF推薦算法主要包括兩個(gè)部分: (1)屬性面的評分預(yù)測。對評論文本進(jìn)行情感分析,提取屬性詞—情感詞對,并預(yù)測用戶對屬性面的評分。(2)物品推薦。根據(jù)(1)中用戶對屬性面的評分計(jì)算用戶之間的相似度,并將其與用戶對物品總體評分的相似度融合,得到用戶之間的綜合相似度,進(jìn)而根據(jù)最相似的K個(gè)鄰居用戶進(jìn)行物品推薦。推薦算法流程圖如圖1所示。

      圖1 推薦算法流程圖

      4.1 概率主題模型

      概率主題模型可用于識(shí)別大規(guī)模文檔集中潛在的主題信息,這些主題能夠很好地被理解。其中,狄利克雷分布(latent dirichlet allocation,LDA)是目前被廣泛應(yīng)用的一種概率主題模型。

      LDA是一種無監(jiān)督的機(jī)器學(xué)習(xí)技術(shù),它是一個(gè)“文檔—主題—詞匯”的三層貝葉斯模型,其中每一篇文檔d∈D表示為K個(gè)主題的概率分布θd,每一個(gè)主題k又表示成N個(gè)詞所構(gòu)成的概率分布φk。

      LDA主題模型包含每個(gè)主題的詞匯分布概率φk、每個(gè)文檔的主題分布概率θd,以及每個(gè)詞匯的主題分配序列zd,j,參數(shù){θ,φ}和主題分配序列z可通過吉布斯采樣獲得。LDA主題模型以如下概率產(chǎn)生文本集合D,如式(1)所示。

      (1)

      其中,θzdj表示特定主題的產(chǎn)生概率,φzdj,wdj表示詞匯wdj屬于該主題的概率。

      本文采用LDA主題模型將情感分析中提取出來的屬性詞聚集成屬性面。LDA主題模型建立在文檔的基礎(chǔ)上,因此,這里的首要任務(wù)是構(gòu)建文檔集合??紤]到需要獲得每個(gè)用戶對各個(gè)屬性面的關(guān)注度,因此本文首先將用戶u的所有評論文本集合作為主題模型中的文檔du,并使用從情感分析中提取出的屬性詞構(gòu)建文檔的空間向量。然后通過LDA主題模型挖掘出潛在的K個(gè)屬性面,最終獲得文檔—主題分布矩陣θ和主題—詞匯分布矩陣φ。

      4.2 屬性面評分預(yù)測

      在本文中,屬性面的評分預(yù)測方法主要包括三個(gè)步驟: (1)從評論文本中提取屬性詞—情感詞對; (2)根據(jù)情感詞和修飾情感詞的副詞預(yù)測對應(yīng)屬性詞的分值; (3)利用LDA主題模型將屬性詞聚集成潛在屬性面,并預(yù)測屬性面的評分。下面我們將詳細(xì)闡述這三個(gè)步驟。

      4.2.1 屬性詞—情感詞對提取

      在評論文本中,不同用戶采用不同的屬性詞和情感詞來表達(dá)觀點(diǎn)。采用人工標(biāo)注的提取方法顯然是不合適的,這將耗費(fèi)大量的時(shí)間并且召回率很低。本文受到文獻(xiàn)[21]中屬性詞—情感詞對提取方法的啟發(fā),并在原有方法的基礎(chǔ)上進(jìn)行改進(jìn),提出一種新的屬性詞—情感詞對提取方法。

      文獻(xiàn)[21]中,作者依據(jù)“緊跟在副詞后面的形容詞是情感詞”這一規(guī)則,利用副詞的種子詞庫提取情感詞。然而,這一規(guī)則將會(huì)漏掉那些前面沒有副詞的情感詞,致使提取出的情感詞-屬性詞對召回率下降。此外,文獻(xiàn)[21]中提取情感詞和屬性詞的方法是基于詞距的,即在一個(gè)句子中根據(jù)兩個(gè)詞匯之間的距離來判斷他們是否具有依賴關(guān)系,這樣往往會(huì)把那些沒有依賴關(guān)系或者具有不正確依賴關(guān)系的詞對找出來,從而導(dǎo)致屬性詞—情感詞對的提取準(zhǔn)確率下降。針對這兩點(diǎn)缺陷,本文在提取過程中加入了情感詞的種子詞庫,首先采用句法分析器對句子進(jìn)行依存句法解析,然后根據(jù)所需要的依存關(guān)系進(jìn)行過濾。在整個(gè)提取過程中主要涉及兩種依存關(guān)系: 一是副詞修飾形容詞的狀中關(guān)系(ADV),二是形容詞修飾名詞的定中關(guān)系(ATT)。詞匯極性判斷的方法[23-24]有很多,本文采用文獻(xiàn)[23]中的方法對新提取的情感詞進(jìn)行極性判斷。

      4.2.2 屬性詞的分值預(yù)測

      經(jīng)過上一個(gè)步驟中屬性詞—情感詞對的提取,我們得到用戶ui對物品rj的評論四元組{userid, itemid, feature, opinion},然后依據(jù)情感詞的極性和修飾情感詞的副詞來預(yù)測用戶對屬性詞的評分。由于我們需要計(jì)算用戶對屬性詞的評分,所以需要設(shè)置情感詞極性的初始分值,即情感基數(shù)。情感基數(shù)可以是任意不為0的實(shí)數(shù)(在后文的計(jì)算中將對其進(jìn)行歸一化處理,不影響最終的評分預(yù)測),這里為了方便計(jì)算,我們設(shè)定情感詞的情感基數(shù)為1,即積極的情感詞為1,消極的情感詞為-1。很多情感分析的研究[20-21]在進(jìn)行情感分值預(yù)測的時(shí)候僅考慮了情感詞而忽略了副詞的修飾成分,或者簡單地將副詞劃分為“高、低”兩個(gè)等級(jí)。而文獻(xiàn)[25]的研究工作,考慮到程度副詞和否定副詞的影響,將程度副詞分為七個(gè)等級(jí),并根其表達(dá)的強(qiáng)烈程度設(shè)定相應(yīng)的副詞修飾百分比。副詞修飾百分比即在初始情感基數(shù)基礎(chǔ)上增加的比例,屬性詞分值=(1+副詞修飾百分比)×情感基數(shù),相應(yīng)的副詞修飾百分比如表1所示。

      表1 程度副詞修飾百分比

      最終屬性詞的分值由情感基數(shù)和對應(yīng)副詞的修飾百分比相乘得到,考慮到程度副詞和否定副詞以及兩種副詞的組合形式對情感詞的修飾,我們得到如表2所示的計(jì)算方法。

      表2 屬性詞打分計(jì)算方法

      注: (1) PW為正向情感詞,NW為負(fù)向情感詞,SV為情感詞的情感打分,Neg為否定副詞,Int為程度副詞,P為副詞的修飾百分比。

      (2) SV(好)=0.8,SV(差)=-0.8,P(很)=0.5,P(特別)=0.7。

      需要指出的是當(dāng)程度副詞和否定副詞出現(xiàn)順序不同時(shí),計(jì)算方法有所差異。當(dāng)否定副詞出現(xiàn)在程度副詞之前時(shí),實(shí)際上削弱了否定副詞帶來的負(fù)面效應(yīng)。因此在這種情況下我們將程度副詞的修飾百分比進(jìn)行轉(zhuǎn)向;而當(dāng)程度副詞出現(xiàn)在否定副詞之前時(shí),則直接按副詞出現(xiàn)順序疊加副詞修飾效果即可。在如表2所示的例子中,我們依據(jù)表2的打分規(guī)則得到“不是特別好”的情感打分為0.24,“特別不好”的情感打分為-1.36,這是符合實(shí)際生活中的情感表達(dá)傾向的。給定評論四元組集合{userid, itemid, feature, opinion},最終求得用戶ui對物品rj的wn屬性詞的分值為Sijn。

      4.2.3 屬性面的分值預(yù)測

      本文將提取出的屬性詞作為LDA主題模型中的特征詞匯,利用LDA算法將相關(guān)詞匯歸屬到相應(yīng)的主題,從而屬性詞被聚集成K個(gè)屬性面,其中每個(gè)面表現(xiàn)為屬性詞的概率分布,從而將屬性詞和屬性面相關(guān)聯(lián),然后根據(jù)主題-詞匯分布得到用戶ui對物品rj的fk屬性面的評分,如式(2)所示。

      (2)

      其中,φkn為主題—詞匯分布中詞匯wn屬于主題fn的概率。

      若一個(gè)用戶在評論文本中對某個(gè)屬性面的評論越頻繁,表明該用戶越關(guān)注該屬性面,因而,在預(yù)測用戶對物品屬性面的評分中,若能考慮該用戶關(guān)注度的影響,將會(huì)使得預(yù)測結(jié)果更準(zhǔn)確,我們在實(shí)驗(yàn)部分也給出了相關(guān)證明。事實(shí)上,LDA主題模型中得到的文檔—主題的分布矩陣θik即用戶i對物品第k個(gè)屬性面的關(guān)注度。因此,在式(1)的基礎(chǔ)上,考慮用戶關(guān)注度對屬性面評分的影響,得到用戶ui對物品rj的fk屬性面評分,如式(3)所示。

      (3)

      其中,θk為文檔dui在主題k上的分布概率,即用戶ui對fk屬性面的關(guān)注度。

      整合式(2)和式(3),得到用戶ui對物品j的fk屬性面綜合評分,如式(4)所示。

      (4)

      4.3 用戶相似度計(jì)算

      在上文中已經(jīng)得到用戶u對物品j的第k屬性面的評分四元組集合{u,j,k,Su,j,k},本文使用余弦相似度計(jì)算用戶u和用戶v在評論文本上的相似度如式(5)所示。

      (5)

      其中,Ru表示用戶u的評論物品集合,Kuj表示用戶u對物品j評論的屬性面集合,Kuj∩Kvj表示兩用戶在物品j上評論的屬性面的交集。

      盡管評論文本中含有豐富的表達(dá)用戶情感傾向的語義信息,但是并非所有文本信息都有價(jià)值。例如某些用戶在評論中并沒有顯露出自己對物品屬性面的情感偏好,對于這類用戶,總體評分信息往往比評論文本更有價(jià)值??紤]到該因素,依據(jù)傳統(tǒng)推薦方法的基本思想,我們同時(shí)考慮不同用戶在總體評分上的相似性,其計(jì)算方式如式(6)所示。

      (6)

      其中Wuj表示用戶u對物品j的總體評分值。

      最后,將用戶在評論文本上的相似度simfeature(u,v)與用戶的總體評分相似度simscore(u,v)融合來度量用戶之間的綜合相似度sim(u,v),如式(7)所示。

      (7)

      其中,γ為兩類相似度之間的平衡參數(shù)。

      4.4 算法描述

      最后,本文提出的基于情感分析和LDA主題模型的協(xié)同過濾推薦算法的整體過程呈現(xiàn)在算法1中。

      算法1:SACF算法輸入:用戶評分矩陣,用戶對物品的評論文本集合輸出:推薦集合步驟:(1)對評論文本進(jìn)行情感分析,提取出所有的屬性詞?情感詞對;(2)利用LDA主題模型,生成物品的K個(gè)潛在屬性面,并結(jié)合公式(1)中的屬性詞?情感詞對,預(yù)測用戶對物品屬性面的評分;(3)根據(jù)公式(2)中用戶對物品屬性面的評分,計(jì)算用戶相似度矩陣;(4)融合用戶的評分相似度,計(jì)算最終的用戶相似度矩陣;(5)對任意用戶u,利用步驟(4)中的相似度矩陣選擇與其最相似的K個(gè)鄰居Nk,依據(jù)式(8)對未評分物品i的評分進(jìn)行預(yù)測。rui=∑k∈Nksim(u,k)·Wki∑k∈Nksim(u,k)(8)

      5 實(shí)驗(yàn)結(jié)果與分析

      5.1 實(shí)驗(yàn)設(shè)置

      為驗(yàn)證本文提出的SACF算法的有效性,文中使用中國知名的電商網(wǎng)站京東(www.jd.com)的手機(jī)評論數(shù)據(jù)集進(jìn)行實(shí)驗(yàn)。該數(shù)據(jù)集總共包括109 691條評論信息,過濾掉評論數(shù)小于5的用戶,最終得到2 887個(gè)用戶對868個(gè)物品的33 778條評論。每條評論包括用戶對物品的總體評分值(介于1~5分之間)和評論文本。實(shí)驗(yàn)采取五折交叉驗(yàn)證進(jìn)行,每次采用約80%的原數(shù)據(jù)集作為訓(xùn)練集,20%為測試集,重復(fù)五次后取平均結(jié)果。

      此外,本文采用中國科學(xué)院的分詞工具ICTCLAS*http://ictclas.nlpir.org/對評論文本進(jìn)行分詞和詞性標(biāo)注,采用哈爾濱工業(yè)大學(xué)LTP[26]進(jìn)行句法分析。本文中副詞和形容詞的種子詞庫均來自于中國知網(wǎng)。

      本文將SACF算法和以下基準(zhǔn)推薦算法進(jìn)行比較:

      (1) CF(collaborative filtering): 傳統(tǒng)的基于用戶的協(xié)同過濾推薦算法。

      (2) LDA-CF[8]: 使用LDA主題模型對評分矩陣進(jìn)行降維,從而預(yù)測用戶對物品的評分。

      (3) RI-CF(rating inference collaborative filtering )[12]: 將評論文本進(jìn)行情感分析,預(yù)測出用戶在物品各個(gè)屬性面上的評分,再使用其提出的回歸方法計(jì)算用戶對物品的總體評分。

      (4) PORE(preference and opinion-based recommendation algorithm)[21]: 通過分析評論文本中用戶的偏好,結(jié)合物品和特征屬性之間的關(guān)系,從而預(yù)測用戶對物品的評分。

      此外,為驗(yàn)證融合用戶的總體評分相似度,以及用戶對物品屬性面關(guān)注度對推薦算法的影響,我們從SACF算法衍生出兩組對比方法:

      (5) SACF-WR(sentiment analysis collaborative filtering without rating): 僅考慮用戶對屬性面評分相似度的協(xié)同過濾,忽略SACF算法中用戶對物品總體評分的影響(用戶最終相似度由式(5)產(chǎn)生)。

      (6) SACF-WC(sentiment analysis collaborative filtering without concern): 不考慮用戶關(guān)注度的協(xié)同過濾方法,在計(jì)算用戶對屬性面評分時(shí)忽略關(guān)注度因子(式(3)中θik)的影響。

      5.2 評估指標(biāo)

      在推薦系統(tǒng)的評估標(biāo)準(zhǔn)中,最常用的是平均絕對誤差(mean absolute error,MAE) ,該指標(biāo)可以直觀地對推薦質(zhì)量進(jìn)行度量,并被大多數(shù)推薦系統(tǒng)相關(guān)研究所采用。本文采用平均絕對誤差MAE衡量預(yù)測評分值的準(zhǔn)確性,如式(9)所示。

      (9)

      其中,{p1,p2,…,pN}為推薦算法預(yù)測的用戶評分集合,{q1,q2,…,qN}為實(shí)際的用戶評分集合。MAE值越小,表明推薦算法預(yù)測的用戶評分與實(shí)際的用戶評分之間的誤差越小,推薦質(zhì)量越高;反之,表明推薦質(zhì)量越低。

      5.3 實(shí)驗(yàn)結(jié)果分析

      5.3.1 情感詞—屬性詞對提取

      為了驗(yàn)證本文提出的情感詞-屬性詞對提取方法(opinion feature extraction)的有效性,我們從數(shù)據(jù)集中隨機(jī)選取3 000個(gè)評論文本,然后人工標(biāo)注出文本中的情感詞和屬性詞,最終得到122個(gè)屬性詞和153個(gè)情感詞。我們將HU和LIU[18]和LIU和HE[21]的方法作為基準(zhǔn)方法,與本文的情感詞-屬性詞對提取方法進(jìn)行比較。提取屬性詞和情感詞的準(zhǔn)確率(提取出正確的情感詞和屬性詞的百分比)、召回率(提取出正確的情感詞和屬性詞占標(biāo)注詞匯的百分比),以及F值=(2×precision×recall)/(precision+recall)如表3和表4所示。

      表3 情感詞提取結(jié)果

      表4 屬性詞提取結(jié)果

      從表3可以發(fā)現(xiàn),盡管本文方法和對比方法提取情感詞的準(zhǔn)確率相當(dāng),但是本文方法具有較高的召回率,原因是本文方法利用副詞將那些沒有屬性詞修飾的情感詞也提取出來。除此之外,我們加入了情感詞的種子詞庫,從而保證前面沒有副詞的情感詞不會(huì)被遺漏。

      同時(shí),表4結(jié)果表明,本文中提取屬性詞的方法具有最高的準(zhǔn)確率,這是因?yàn)閷Ρ确椒ú捎没谠~距的方式來提取屬性詞,而本文的算法采用句法分析器對句子進(jìn)行依存句法解析,根據(jù)所需要的依存關(guān)系對屬性詞進(jìn)行過濾,從而提高了屬性詞提取的準(zhǔn)確率。

      5.3.2 參數(shù)分析

      在本文的推薦算法中,LDA主題模型中主題的個(gè)數(shù)K和相似度的融合參數(shù)γ對推薦精度有較大的影響,因此,我們針對這兩個(gè)參數(shù)進(jìn)行如下分析。

      (1) 主題數(shù)目的影響。

      圖2 屬性面?zhèn)€數(shù)K取不同值下的MAE

      為探討LDA主題模型中主題個(gè)數(shù)K對實(shí)驗(yàn)結(jié)果的影響,本文設(shè)置主題個(gè)數(shù)K的取值從5到40進(jìn)行相關(guān)實(shí)驗(yàn),結(jié)果如圖2所示。這里設(shè)置用戶屬性面評分相似度和總體評分相似度的融合參數(shù)γ=0.5,LDA主題模型參數(shù)α=0.5,β=0.1,最鄰近用戶數(shù)N=20。結(jié)果顯示,當(dāng)主題個(gè)數(shù)為25時(shí)效果最好。原因是當(dāng)K的取值過小(K<25)時(shí),LDA不能準(zhǔn)確地區(qū)分評論文本中潛在的屬性面,進(jìn)而不能夠詳細(xì)地挖掘出用戶在各個(gè)面上的偏好;當(dāng)K的取值過大(K>25)時(shí),屬性面之間的耦合度過高,進(jìn)而影響各個(gè)面上的評分預(yù)測精度。此外,隨著屬性面的增多,用戶在屬性面上的評分矩陣將變得稀疏,進(jìn)而影響相似度的計(jì)算精度。

      (2) 融合參數(shù)的影響。

      為測試融合參數(shù)對實(shí)驗(yàn)結(jié)果的影響,我們將γ的值從0變化到1,實(shí)驗(yàn)結(jié)果如圖3所示。這里,設(shè)定LDA主題個(gè)數(shù)K=25,最鄰近用戶數(shù)N=20。結(jié)果顯示當(dāng)γ=0.9時(shí)效果最佳。MAE之所以不是在γ=1時(shí)取得最小值,是因?yàn)樵谙嗨贫鹊娜诤现锌傮w評分的相似度對推薦精度有一定影響,但是從評論文本中通過情感分析得到的用戶相似度對算法的影響更大,這進(jìn)一步證明了本文的觀點(diǎn)。

      圖3 不同平衡因子γ下的MAE

      5.3.3 本文方法和基準(zhǔn)方法

      在對比實(shí)驗(yàn)中,設(shè)置SACF算法主題數(shù)目K=25,融合參數(shù)γ=0.9,計(jì)算出融合相似度后,采用基于用戶的推薦方法進(jìn)行實(shí)驗(yàn),實(shí)驗(yàn)結(jié)果如圖4所示。

      圖4 不同推薦算法的MAE值比較

      從圖4可以看出,當(dāng)最鄰近用戶數(shù)N小于60時(shí),三種方法得到的MAE值均較高;隨著N的增加,MAE值均隨之減?。欢?dāng)N大于120,算法的MAE值均趨于穩(wěn)定。當(dāng)最鄰近用戶數(shù)N相同時(shí),SACF算法具有最小的 MAE值,這說明本文提出的方法能夠有效地提高推薦質(zhì)量。而同樣采用了LDA主題模型,SACF算法得到的MAE值比LDA-CF小,說明采用評論文本確實(shí)可以提高推薦精度。然而同樣利用了評論文本信息的RI-CF算法效果卻不如SACF算法,這說明通過LDA主題模型來獲取用戶在物品各個(gè)屬性面上的相似度的方法是有效的。

      此外,本文將SACF衍生得到的兩組方法的實(shí)驗(yàn)結(jié)果進(jìn)行了比較。通過對比SACF-WR和CF的實(shí)驗(yàn)結(jié)果,可以發(fā)現(xiàn),基于屬性面相似度的推薦比傳統(tǒng)的基于用戶總體評分的協(xié)同過濾推薦算法更加準(zhǔn)確,這說明基于屬性面的相似度度量方法更能夠精確地發(fā)現(xiàn)相似用戶,從而提高了推薦精度。比較SACF和SACF-WR的實(shí)驗(yàn)結(jié)果可以看出,融合之后的相似度計(jì)算方法比僅使用情感分析相似度方法的推薦效果更好,這說明融合用戶總體評分相似度可以提高推薦精度。此外,SACF和SACF-WC的實(shí)驗(yàn)結(jié)果表明,考慮用戶對屬性面關(guān)注度的影響可提高算法的推薦精度。

      由于基準(zhǔn)算法PORE[21]不屬于協(xié)同過濾推薦算法這一類別,因此我們將其與本文的算法SACF單獨(dú)進(jìn)行實(shí)驗(yàn)對比。實(shí)驗(yàn)中PORE的屬性特征包括四個(gè)評分特征和十個(gè)情感特征,設(shè)置SACF主題數(shù)目K=25,融合參數(shù)γ=0.9,最鄰近用戶數(shù)N=160。五折交叉驗(yàn)證得到的MAE值及平均MAE值如表5所示。

      表5 PORE和SACF的MAE值

      實(shí)驗(yàn)結(jié)果顯示,SACF算法得到的平均MAE值較低??梢?,對于此類基于文本情感分析的推薦算法,屬性特征和情感詞的提取對最終的推薦精度有很大影響,而前文中情感分析的實(shí)驗(yàn)部分顯示,在屬性特征和情感詞的提取中,SACF具有較高的F值,從而決定了其更好的推薦效果。此外,區(qū)別于PORE采用詞匯的相似度來合并屬性詞,SACF采用LDA主題模型將屬性詞聚集成更加精確的面,因此提高了推薦精度。

      5.3.4 案例分析

      為說明本文中LDA主題模型生成的K個(gè)屬性面的有效性,我們將屬性面以屬性詞的形式進(jìn)行展示,即根據(jù)主題—詞匯分布中屬性詞的分布概率,選擇前五個(gè)最相關(guān)的屬性詞匯表示每個(gè)屬性面。最終,從25個(gè)屬性面中選取最重要十個(gè)屬性面,結(jié)果如表6所示。

      表6 屬性面詞匯分布

      從表6可以看出,每個(gè)屬性面都包含了與該屬性特征相關(guān)的屬性詞,我們從屬性詞的分布大致可以識(shí)別出每個(gè)屬性面所表達(dá)的含義。例如,從屬性面1的詞匯分布中可以看出該屬性面與手機(jī)電池相關(guān)。

      6 總結(jié)

      本文提出了一種基于情感分析的協(xié)同過濾推薦算法SACF,該算法將傳統(tǒng)的協(xié)同過濾中用戶對物品總體評分的相似度擴(kuò)展為融合了屬性面和評分的相似度。該算法充分利用了評論文本的豐富信息,通過情感分析和LDA主題模型,挖掘物品潛在的屬性面,并預(yù)測用戶對物品屬性面的評分,從而在屬性面的層次上計(jì)算用戶的相似度矩陣。實(shí)驗(yàn)結(jié)果表明,SACF算法使得用戶相似度的計(jì)算更加準(zhǔn)確,從而提高了推薦精度。此外,SACF算法也在一定程度上解決了數(shù)據(jù)的稀疏性問題。在下一步工作中,我們將改進(jìn)情感分析算法,使得屬性詞-情感詞對的提取和屬性面評分計(jì)算更加準(zhǔn)確,從而進(jìn)一步提高推薦算法的精度。

      [1] Pu P, Chen L, Hu R. A user-centric evaluation framework for recommender system[C] //Proceedings of the 5th ACM Conference Recommender System. New York: ACM Press, 2011: 157-164.

      [2] Knijnenburg B P, Willemsen M C, Gantner Z, et al. Explaining the user experience of recommender system[J]. User Modeling and User-Adapted Interaction, 2012, 22(4): 441-504.

      [3] Sarwar B M, Karypis G, Konstan J A,et al. Analysis of recommendation algorithms for ecommerce[C] //Proceedings of the 2nd ACM Conference on Electronic Commerce. New York: ACM Press, 2000: 158-167.

      [4] Sarwar B M, Karypis G, Konstan J, et al. Item-based collaborative filtering recommendation algorithms[C] //Proceeding of the 10th International Conference on World Wide Web. New York: ACM Press, 2001: 285-295.

      [5] Mooney R J, Roy L. Content-based book recommending using learning for text categorization[C] //Proceedings of the ACM international conference on digital libraries. New York: ACM Press, 2000: 195-204.

      [6] 鄧愛林,朱揚(yáng)勇,施伯樂.基于項(xiàng)目評分預(yù)測的協(xié)同過濾推薦算法[J].軟件學(xué)報(bào), 2003, 14(09): 1621-1628.

      [7] 王明文,陶紅亮,熊小勇.雙向聚類迭代的協(xié)同過濾推薦算法[J].中文信息學(xué)報(bào), 2007, 22(4): 61-65.

      [8] Chang T M, Hsiao W F. LDA-based personalized document recommendation[C]// Proceedings of the PACIS 2013, Paper 13.

      [9] 廉濤,馬軍,王帥強(qiáng)等. LDA-CF: 一種混合協(xié)同過濾方法[J].中文信息學(xué)報(bào),2014,28( 2) : 129-135.

      [10] C W ki Leung, S C fai Chan, F lai Chung. Integrating collaborative filtering and sentiment analysis: A rating inference approach// Proceedings of the ECAI-Workshop on Recommender Systems, 2006,62-66.

      [11] Hofmann T, Puzicha J. Latent class models for collaborative filtering[C] //Proceedings of the 16th IJCAI, 1999: 688-693.

      [12] Ganu G, Kakodkar Y. Improving the quality of predictions using textual information in online user reviews[J]. Information Systems 38(1), 1-15,2013.

      [13] Moraes R, Valiati J F, Gaviao Neto W P. Document-level sentiment classification an empirical comparison between SVM and ANN[J]. Expert System with Applications, 2013, 40(2): 621-633.

      [14] Sayeedunnissa S F, Hussain A R, Hameed M A. Supervised Opinion Mining of Social Network Data Using a Bag-of-Words Approach on the Cloud[C] //Proceedings of 7th International Conference on Bio-Inspired Computing: Theories and Applications (BIC-TA 2012). India: Springer, 2013: 299-309.

      [15] 黃詩琳,鄭小林,陳德人.針對產(chǎn)品命名實(shí)體識(shí)的半監(jiān)督學(xué)習(xí)方法[J].北京郵電大學(xué)學(xué)報(bào), 2013, 36(002): 20-23.

      [16] Chen C C, Chen Z Y, Wu C Y.An unsupervised approach for person name bipolarization using principal component analysis[J]. IEEE Transactions on Knowledge and Data Engineering, 2012, 24(11): 1963-1976.

      [17] Paltoglou G, Thelwall M. Twitter, MySpace, Digg: Unsupervised Sentiment Analysis in Social Media[J]. ACM Transactions on Intelligent Systems and Technology (TIST), 2012, 3(4): 66.

      [18] Hu M, Liu B. Mining and summarizing customer reviews[C] //Proceedings of the 10th ACM SIGKDD international conference on Knowledge discovery and data mining. New York: ACM Press, 2004: 168-177.

      [19] Qiu G, Liu B, Bu J, et al. Opinion word expansion and target extraction through double propagation[C] //Computational Linguistics. 2011: 9-27.

      [20] Wang Yuanhong, Liu Yang, Yu Xiaohui. Collaborative Filtering with Aspect-Based Opinion Mining: A Tensor Factorization Approach[C] //Proceedings of the IEEE International Conference on Data Mining. Piscataway NJ: IEEE, 2012: 1152-1157.

      [21] Liu Hongyan, He Jun, Wang Tingting, et al. Combining user preferences and user opinions for accurate recommendation[J]. Electronic Commerce Research and Applications, 2013, 12(1): 14-23.

      [22] 劉麗佳,郭劍毅,周蘭江等. 基于LM算法的領(lǐng)域概念實(shí)體屬性關(guān)系抽取[J].中文信息學(xué)報(bào), 2014, 28(6): 216-222.

      [23] Liu H, Yang H, Li W, et al. CRO: A system for online review structurization[C] //Proceedings of the 14th ACM SIGKDD international conference on Knowledge discovery and data mining. New York: ACM Press, 2008: 1085-1088.

      [24] 宋曉雷,王素格,李紅霞等.基于概率潛在語義分析的詞匯情感傾向判別[J].中文信息學(xué)報(bào), 2011, 25(2): 89-93.

      [25] M Taboada, J Brooke, M Tofiloski, et al. Lexicon-based methods for sentiment analysis[J]. Computational Linguistics, 2011, 37(2): 267-307.

      [26] Che Wanxiang, Li Zhenghua, Liu Ting. LTP: A Chinise Language Technology Platform[C]//Proceedings of 23rd International Conference on Computational Linguistics: Demonstrations. New York: ACM, 2010: 13-16.

      Collaborative Filtering Recommendation Based onSentiment Analysis and LDA Topic Model

      PENG Min,XI Junjie,DAI Xinyuan,HE Yanxiang

      (School of Computer, Wuhan University, Wuhan, Hubei 430072, China)

      Collaborative filtering achieves personalized recommendation based on the similarity between items or users. However, the data sparseness affects the calculation of similarity, leading to a low recommendation accuracy. Most of the traditional recommendation algorithms only consider the rate matrix between users and items, while ignoring the item reviews generated by users, that offer valuable information about the user’s preferences to different attributes of the items. In this paper, we proposed a novel recommendation algorithm, called SACF (sentiment analysis collaborative filtering), which considers the impact of the review texts on the prediction of final score of items. By incorporating LDA topic model, SACF can extract K latent attribute aspects of the items and compute the user similarity according to the sentiment tendency in such attribute aspects. Our experimental results on Jingdong review dataset demonstrate that, the proposed method can not only alleviates the problem of data sparseness in collaborative filtering scheme, but also improves the recommendation accuracy.

      recommender system; filtering recommendation; LDA; sentiment analysis

      彭敏(1973—),教授,主要研究領(lǐng)域?yàn)樽匀徽Z言處理、信息檢索、分布式計(jì)算等。E?mail:pengm@whu.edu.cn席俊杰(1989—),碩士,主要研究領(lǐng)域?yàn)樽匀徽Z言處理、數(shù)據(jù)挖掘、推薦系統(tǒng)。E?mail:xijunjie@whu.edu.cn代心媛(1991—),碩士,主要研究領(lǐng)域?yàn)樽匀徽Z言處理、數(shù)據(jù)挖掘、情感分析。E?mail:tracy_day@whu.edu.cn

      2015-09-06 定稿日期: 2016-03-23

      國家自然科學(xué)基金(61472291, 61303115)

      1003-0077(2017)02-0194-10

      TP391

      A

      猜你喜歡
      副詞物品文本
      The Wheels on the Bus
      稱物品
      副詞“好容易”及其詞匯化成因
      “雙十一”,你搶到了想要的物品嗎?
      在808DA上文本顯示的改善
      誰動(dòng)了凡·高的物品
      基于doc2vec和TF-IDF的相似文本識(shí)別
      電子制作(2018年18期)2018-11-14 01:48:06
      文本之中·文本之外·文本之上——童話故事《坐井觀天》的教學(xué)隱喻
      找物品
      副詞和副詞詞組
      民权县| 邵东县| 双柏县| 蓬溪县| 中江县| 合山市| 密云县| 临漳县| 青冈县| 蒙自县| 岳阳市| 濉溪县| 宁乡县| 平果县| 上杭县| 磐石市| 平南县| 尼勒克县| 庆城县| 肇东市| 六枝特区| 池州市| 兴宁市| 夏津县| 庆云县| 华宁县| 景宁| 五莲县| 遂平县| 高雄县| 托克逊县| 南通市| 凉城县| 会昌县| 阳原县| 无锡市| 唐河县| 乌拉特前旗| 新化县| 尼木县| 江川县|