粟 勇,謝裕清,孫華成,王 遠,王永利
(1.南瑞集團有限公司(國網(wǎng)電力科學研究院有限公司),江蘇 南京 211100;2.江蘇瑞中數(shù)據(jù)股份有限公司,江蘇 南京 211100;3.國網(wǎng)浙江省電力有限公司信息通信分公司,浙江 杭州 310000;4.南京理工大學 計算機科學與工程學院,江蘇 南京 210094)
隨著大數(shù)據(jù)的快速發(fā)展,推薦系統(tǒng)已經(jīng)被成功應用到電商大數(shù)據(jù)領域,用以挖掘用戶的歷史行為、用戶生成內容,并在此基礎上建模來推測用戶偏好[1-3],并向其推薦可能符合需求的信息。在推薦系統(tǒng)中,用戶的主觀評價和商品的特征信息并不是以一種約定俗成的形式或者結構存在于評論之中,更多的是以非結構化形式存在,在構建用戶畫像并將其運用于推薦系統(tǒng)這一方面,對于如何挖掘這些非結構化信息中實際可用的價值,很多學者提出了很多方法。例如,Sheng Feng等[4]提出一種選取合適的用戶評論用于產(chǎn)品推薦的方法,但是該方法并沒有區(qū)分主題產(chǎn)品和非主題產(chǎn)品各自的特征。Valliyammai C[5]提出了一種基于用戶評論的旅游推薦系統(tǒng),根據(jù)其他用戶的歷史評價推薦最佳的旅游方案,但這種方式所采用的支持向量機(support vector machine,SVM)占用了大量內存并且其個性化程度高度依賴于同義詞庫。Chakraverty等[6]提出了一種跨領域推薦方法。當一個領域中的可用數(shù)據(jù)缺少時,可以使用來自其他領域的數(shù)據(jù)(用戶評分和評價)進行跨領域推薦。
為了有效區(qū)分主題產(chǎn)品特征和非主題產(chǎn)品特征,加強對用戶語言模式的本體研究,在現(xiàn)有研究[7-14]的基礎上,該文將非結構化的評論信息提取成結構化的多維用戶體驗信息,提出了一種在評論中提取用戶體驗的方法。詳細介紹了該方法具體的步驟和算法,有利于推薦系統(tǒng)提供更準確的個性化推薦結果。實驗結果表明該方法能夠實現(xiàn)較高的準確率和豐富的多樣性。
文獻[15]提出了一種能夠提取用戶體驗的自動化方法(AEUE)。其中,該方法定義的用戶體驗是由提取并過濾后的產(chǎn)品特征詞和特征描述詞組成。進一步給出用戶體驗的定義如下:
定義1 用戶體驗(E):用戶體驗由一個五元組表示:<體驗特征(En),程度副詞(Eadv),修飾語(Ea),情感極性(Ev),權重(Ew)>,用該五元組標簽表示用戶的體驗信息,例如“價格很實惠”、“實用性很強”等。En表示名詞,如上述中的“價格”、“實用性”,Ea表示修飾詞,如“實惠”、“強”等。Eadv表示修飾Ea的副詞,如“很”、“較”。Ev為情感極性的數(shù)值。Ew表示用戶體驗權重。
基于評論的挖掘的目的是在非結構性的用戶評價語中通過將產(chǎn)品的特征提取出來,構建成特征向量。該文在實際處理過程中將產(chǎn)品特征劃分為功能性特征和描述性特征兩個方面,下面對這兩類特征做簡單的介紹:
(1)功能性特征:產(chǎn)品本體元數(shù)據(jù),如 “電量持久”、“前置攝像清晰”、“運行內存大”等就是平板電腦的功能性特征描述。
(2)描述性特征:對功能特征的描述,如“8 000 mA電池容量”、“2 500萬前置攝像”、“8 G運行內存”等。
受Schein等人[14]的啟發(fā),該文將用戶體驗提取過程總結為如下幾個主要步驟:
(1)構建種子詞集;
(2)提取體驗特征;
(3)匹配出產(chǎn)品特征的修飾性短語或語段;
(4)采用一定方法分析出(3)中短語或語段的情感傾向,主要分為褒義和貶義;
(5)計算用戶體驗的權重并篩選排序。
下面對上述步驟和其中牽涉的主要算法進行詳細的介紹。
1.2.1 構建種子詞集
在預處理過程中,分詞之后根據(jù)詞性標注和詞頻統(tǒng)計排序,再人工選出相關度高的詞,由此產(chǎn)生種子。表1列舉了部分種子詞。
表1 種子詞集合
1.2.2 提取體驗特征
短語結構文法主要是完成對句子各成分結構化關系的構建。依存文法則是通過句子中詞語之間的依存關系來描述句子的結構,主要是中心詞和其他句子成分之間的關系。依存文法中具體包含的關系種類由表2給出。
表2 句子依存關系分類及解釋
續(xù)表2
定義2 體驗特征標簽(T)。體驗特征標簽由一個三元組表示,即:<體驗特征(En),程度副詞(Eadv),修飾語(Ea)>,這個三元組作為中間提取結果。
依存分析后,挖掘每個產(chǎn)品的候選標簽集合T,即有:
T={T1,T2,…,Tn}
Ti={t1,t2,…,tm}
ti=
其中,n為產(chǎn)品p評論數(shù),Ti為第i個評論的特征標簽。此外還需對三元組做顯式去重操作。
基于評論的特征提取方法由算法1描述。
算法1:基于評論的特征提取方法。
輸入:產(chǎn)品集合S;產(chǎn)品S的評論集合rS;種子詞集合W
輸出:T:
1:forsinSdo
2: forrinrSdo
3: preprocess()
4: DP←DependencyParser(rs) //依存文法分析
5: if DP includes
6: //獲取
和包含種子詞的ADV、SBV依存關系
7:Tpr←
8:end if
9:end for
10:end for
1.2.3 情感極性計算
定義3 情感極性(Ev):指根據(jù)Ea與Eadv的情感分析得到的、并經(jīng)過歸一化處理后的語義傾向。
Ev計算方法由算法2給出:
算法2:情感極性計算方法。
輸入:T:
輸出:E,包括En、Eadv、Ea、Ev、Ew的五元組。
1:fortinTdo
2:calculate PMI(t,wordpositive)
3:calculate PMI(t,wordnegative)
4:x←SO(t)//計算語義傾向
5:ifx≥threshold1andx≤threshold2
then //根據(jù)閾值篩選體驗標簽
6:E(w)pr=
7:end if
8: end for
9: Normalization(E)
算法2整體的算法復雜度為O(|W||T|), |T|為用戶體驗特征標簽的數(shù)目, |W|為種子詞的數(shù)目。
1.2.4 用戶體驗聚類方法
該文主要采用基于隱含狄利克雷分布(latent Dirichlet allocation,LDA)的主題方式進行聚類。使用聚類的目的是讓提取的用戶體驗具有多樣性,同時聚類之后還要確保類簇之間保持獨立性。
圖1 LDA的概率圖模型
如圖1中表述的是LDA的概率圖模型,其中N表示訓練語料庫中出現(xiàn)的所有詞,Z表示隱藏的主題,M表示文檔數(shù)目,W表示可觀測詞,K表示主題個數(shù),α、β分別表示每篇文檔中主題和每個主題曲的先驗狄利克雷分布的超參數(shù),θ∈RM×K表示第m篇文章中的主題分布,φ表示第k個主題中的主題詞分布。
由圖可知,LDA聯(lián)合概率為:
p(θ,z,w|α,β)=
(1)
算法3描述了主題聚類算法詳細過程。
算法3:LDA主題聚類算法。
輸入:主題數(shù)目L;文章集合D,即標簽詞;超參數(shù)α、β;
輸出:每隔主題下的詞概率分布φ;每篇文章的主題概率分布θ;每個主題下φ概率從高到低topN個特征詞WtopN
1: for topicsl∈[1,L] do
3: end for
4: for documentsm∈[1,M] do
6: sample document lengthNm~Poiss(ξ)
7: for wordsn∈[1,Nm] do
10: end for
11: end for
1.2.5 用戶體驗權重計算方法
本節(jié)介紹權重的計算和處理。經(jīng)過上述聚類后就可以得到類簇,再根據(jù)類簇的權重大小提取用戶體驗。最后將歸一化權重值賦給Ew。權重計算公式如下:
(2)
其中,|T|為產(chǎn)品中體驗特征標簽總數(shù),zi為ti標簽所屬的主題,|zi|為主題中主題詞的數(shù)目。
實驗在python2.7環(huán)境下完成。分詞使用的是jieba分詞,版本號為0.39。依存文法分析使用的是哈工大語言技術平臺的開發(fā)接口,采用gensim3.7.3作為LDA主題聚類模型庫。
從淘寶的天貓商城選取50個不同種類的產(chǎn)品數(shù)據(jù)作為實驗數(shù)據(jù),該文展示的主要是八種部分商品,包括“iPhone X”、“OPPO R11S”、“拜耳電動牙刷”、“吉利剃須刀”、“零食禮包”等等。
為了驗證提出方法的有效性,采用準確率(precision)和召回率(recall)來評估體驗提取的效果。對于產(chǎn)品i∈I,TP(i)表示該算法對于產(chǎn)品評論集合中提取出的用戶體驗符合產(chǎn)品特征的集合,F(xiàn)P(i)表示提取出的用戶體驗與產(chǎn)品特征不相關的集合。推薦結果的precision和recall的定義分別為:
(3)
(4)
并采用F1來評價分類模型的好壞:
(5)
該文采用修正召回率,計算方式如表3所示。
表3 查重率計算
將修正召回率計算得到的F1值稱為修正的F1值,記為Fw,傳統(tǒng)的F1值記為Ft。當滿足C1≥C2時:
(6)
在實驗過程中,result1作為提取結果,result2作為對比方法提取的結果。多樣性使用語義多樣性計算:
(7)
其中,Nindepn表示用戶體驗的實際標簽數(shù),Nrightn表示用戶體驗的正確標簽數(shù)。
表4 體驗信息特征標簽提取結果
為了分別驗證體驗信息提取的準確性和多樣性,設計了兩組實驗。第一組實驗的標簽提取結果如表4所示。每類產(chǎn)品選取前5個最相關的體驗信息標簽,比如對于iPhone X的5個標簽為“正品行貨”、“操作方便”、“性能強勁”、“屏幕清晰”、“款式漂亮”。實驗結果表明文中方法的平均準確率為92.5%。
第二組實驗的實驗結果由表5給出。表5中方法1代表文中提出的基于推薦系統(tǒng)的用戶評論體驗提取方法,方法2表示文獻[15]中用戶體驗信息自動提取的方法??梢钥吹?,文中方法最終準確率平均值為0.872 5,略高于AEUE方法的準確率(0.832 5),但是修正召回率和修正F-measure值低于AEUE。所以AEUE在修正召回率計算上更具優(yōu)勢。而采用的LDA聚類保證類簇之間的獨立性,故文中方法在多樣性上更具優(yōu)勢。
表5 用戶體驗提取結果對比
為了提高推薦準確度,改善推薦質量,提出一種基于評論的用戶體驗提取算法。實驗結果證明了該算法的有效性,并且能夠實現(xiàn)較高的準確率與查全率。