梁家富, 李家華
(廣州科技職業(yè)技術(shù)大學(xué) 信息工程學(xué)院, 廣東, 廣州 510550)
隨著互聯(lián)網(wǎng)的快速發(fā)展,社交媒體飛速成長,大量的外賣評論產(chǎn)生。外賣評論留言與商家的銷量存在巨大的利益關(guān)系,誘發(fā)個別商家通過違規(guī)手段構(gòu)建虛假評論。虛假評價迷惑性大,消費(fèi)者難以識別,會誤導(dǎo)消費(fèi)者進(jìn)行網(wǎng)上點(diǎn)餐。當(dāng)前,外賣餐飲一般都是采用人工統(tǒng)計的方式收集,無法適應(yīng)大規(guī)模評論的精確統(tǒng)計要求。為了構(gòu)建公平的外賣環(huán)境,迫切需要一種自動化的手段收集外賣評論信息并判斷信息虛假性質(zhì),壓制外賣購買的虛假評論,維持公平穩(wěn)定的外賣環(huán)境。
很多學(xué)者對本文評價數(shù)據(jù)進(jìn)行了大量虛假測評和研究分析。岳文應(yīng)[1]提出了基于Doc2Vec與SVM整合的文本聚類模型,對象是聊天信息的檢測,判別信息虛假性和判斷該信息是否被阻擋。黃欣欣[2]利用Ott黃金數(shù)據(jù)集,基于word2vec和CNN結(jié)合,構(gòu)建CNN模型結(jié)構(gòu),生成CNN模型。王晨超[3]提出采用Doc2vec和DNN結(jié)合模型對語料文本進(jìn)行聚類分析。
本文在隨機(jī)森林模型的基礎(chǔ)上,融合在探究詞義相關(guān)上有優(yōu)越性的Doc2vec句向量,提出一種新的基于RF模型和句向量的文本表示方式——隨機(jī)森林句向量模型(Doc-RF)。這模型保留了RF模型的優(yōu)勢,同時增加了文本詞義信息。Doc2ve在通過訓(xùn)練文本的短語,結(jié)合上下文的段落向量,可以準(zhǔn)確解析不同語境中的詞語義,再與隨機(jī)森林模型對文本整體性集合,全面地提高文本模型在語義環(huán)境研究中的精度[4]。
2014年Mikolov團(tuán)隊在Word2vec算法的理論基礎(chǔ)上提出改進(jìn)的Doc2Vec模型,Word2vec模型的基本理論是:依據(jù)上下文的詞語進(jìn)行預(yù)測下一個詞語出現(xiàn)的幾率。Word2vec模型如果給定上下文的訓(xùn)練集,通過訓(xùn)練得到詞向量,將詞向量級聯(lián)或者求和作為特征值,可以預(yù)測下一個詞語出現(xiàn)概率[5]。公式如下:
(1)
如果計算的是多分類問題,預(yù)測需要分類器最后一層使用層次(softmax),目標(biāo)公式如下:
(2)
這里eywi是對數(shù)函數(shù),把每個單詞當(dāng)作一個類別,任務(wù)輸出層的每個詞的計算公式如下:
y=a+bf(wn-k,…,wn+k;W)
(3)
其中,a和b都是softmax參數(shù),函數(shù)f則是wn-k,…,wn+k從詞向量矩陣W中的級聯(lián)或者求平均。
Doc2Vec與Word2vec應(yīng)用近似,Doc2Vec訓(xùn)練對象是句向量,Word2vec訓(xùn)練對象是詞向量[6]。Doc2Vec模型增加一個段落向量paragraph id,它的長度與詞向量相等,具有固定長度,具有對新鮮樣本更好的適應(yīng)能力。Doc2Vec有兩種模型:Distributed Memory (DM)和Distributed Bag Of Words(DBOW)。DBOW是基于目標(biāo)單詞預(yù)測上下文出現(xiàn)的概率,而PV-DM是從已知的上下文預(yù)測目標(biāo)單詞[7]。本文采用PV-DM進(jìn)行研究,如圖1所示。

圖1 PV-DM向量模型

(4)
式中,X隨著參數(shù)j變動,導(dǎo)致袋外誤差增加越快,精度減小得越大,則表示該參數(shù)越重要。研究現(xiàn)有成果得到,隨機(jī)森林算法可以防止刪除重要的參數(shù)。
本質(zhì)上RF模型就是一種決策樹,通過對分類樹的邊和節(jié)點(diǎn)進(jìn)行甄辨,得到預(yù)測目標(biāo)。隨機(jī)森林算法流程如圖2所示。

圖2 隨機(jī)森林算法流程
隨機(jī)森林模型在數(shù)據(jù)噪聲大時會出現(xiàn)擬合情況,選用的屬性過多會影響RF的結(jié)果。Doc2Vec算法具有較好的泛化能力,能以局部特征預(yù)測下一個詞語,生成精準(zhǔn)的段落向量數(shù)據(jù)集[9]。因此,將Doc2Vec的局部泛化信息與隨機(jī)森林模型高效的集成信息融合進(jìn)行訓(xùn)練向量學(xué)習(xí),使Doc2Vec_RF既充分使用全部語料庫的內(nèi)容,又保留段落與文檔上下文的相關(guān)語義,新的詞向量擁有更精確的自然語言處理甄別能力和預(yù)測能力。
Doc-RF模型如圖3所示。它是由文本預(yù)處理、文本向量構(gòu)建和隨機(jī)森林預(yù)測評分三個階段構(gòu)成。

圖3 Doc-RF模型總體框架
文本預(yù)處理階段,主要是對外賣評價預(yù)料庫通過AliWS(Alibaba Word Segmenter)詞法分析系統(tǒng)、停用詞過濾和增加序列號等方式進(jìn)行數(shù)據(jù)預(yù)處理。文本向量構(gòu)建階段,Doc-RF模型是文檔、段落主題、單詞組成的高維語義空間,外賣評價語料庫是一系列獨(dú)立的評價語句組成,把每句評價句子采用Doc2Vec模型進(jìn)行訓(xùn)練得到文本向量。RF預(yù)測評分階段,就是充分利用本文向量拆分、RF訓(xùn)練和預(yù)測功能完成預(yù)測評分。最后,使用混淆矩陣進(jìn)行模型的評估。

Doc-RF模型的總體框架的訓(xùn)練過程其步驟可總結(jié)如下。
(1) 對外賣評價數(shù)據(jù)集進(jìn)行數(shù)據(jù)預(yù)處理,采用AliWS詞法分析系統(tǒng),對數(shù)據(jù)集的評價內(nèi)容列進(jìn)行分詞。
(2) 基于停用詞數(shù)據(jù)集使用停用詞過濾組件對外賣評價內(nèi)容預(yù)處理,得到語料庫DOC文檔。
(3) 在語料庫中添加段落號append_id,滿足Doc2Vec算法的基本要求。
(4) 利用Doc2Vec算法進(jìn)行短文本分析,得到語料庫的短文本向量表,通過join內(nèi)連接,把短文本向量表和評價內(nèi)容列合并,組成新的短文本向量表。
(5) 使用拆分組件采用“按比例拆分”0.7比例進(jìn)行切分短文本向量表,得到兩份文本向量表。大比例的向量表是提供給隨機(jī)森林模型進(jìn)行訓(xùn)練學(xué)習(xí)的,小比例的向量表是用了預(yù)測驗證使用。
(6) 采用隨機(jī)森林算法對大比例向量表進(jìn)行模型生成,得到由各100個子樹組成的森林模型。
(7) 利用預(yù)測組件對RF訓(xùn)練結(jié)果開展預(yù)測評分,得到預(yù)測向量表。
(8) 最后使用混淆矩陣組件對向量表進(jìn)行統(tǒng)計分析,得到預(yù)測結(jié)果數(shù)據(jù)和評估報告。
本實驗的開發(fā)環(huán)境采用阿里云機(jī)器學(xué)習(xí)PAI實驗室,模型開發(fā)與訓(xùn)練使用Studio-PAI可視化建模平臺,大數(shù)據(jù)計算機(jī)服務(wù)使用MaxCompute平臺。使用的數(shù)據(jù)集來自阿里云天池實驗室對外開放的公共數(shù)據(jù),數(shù)據(jù)集的內(nèi)容是外賣評論數(shù)據(jù)庫。本項目的數(shù)據(jù)集由兩部分構(gòu)成,一是語料庫共11 987條,二是停用詞庫共746條。外賣評論數(shù)據(jù)庫如圖4所示。

圖4 外賣評論數(shù)據(jù)庫
訓(xùn)練集經(jīng)過停用詞過濾和增加序列號等處理后,語料庫采用Doc2Vec算法訓(xùn)練詞向量,向量模型的參數(shù)設(shè)定如:單詞的特征緯度一般是[0,1 000],本文采用100;語言模型本文采用cbow模型;單詞窗口大小為5;截斷的最小詞頻為5;采用Hierarchincal Softmax;Negative Sampling設(shè)定為5;向下采樣值一般是1e-3或者1e-5,本文取值為1e-3;開始學(xué)習(xí)速率0.025;訓(xùn)練的迭代次數(shù)為1;windows是否隨機(jī),本文采用“不隨機(jī),其值有Windows參數(shù)指定”。訓(xùn)練集經(jīng)過Doc2Vec運(yùn)行之后,輸出的文本向量表。
隨機(jī)森林模型的參數(shù)設(shè)置如:森林中樹的個數(shù)(0,1 000],本文采用100;單棵樹在森林中的位置,采用id3、cart、c4.5算法在森林中均分;單棵數(shù)隨機(jī)特征數(shù)范圍[1,N],采用log2N;葉結(jié)點(diǎn)數(shù)據(jù)的最小個數(shù)為2;葉結(jié)點(diǎn)數(shù)據(jù)個數(shù)占父節(jié)點(diǎn)的最小比例[0,1],設(shè)為0;單棵樹的最大深度[1,∞),設(shè)為默認(rèn)無窮大;單棵樹輸入的隨機(jī)數(shù)據(jù)個數(shù)(1 000,1 000 000),設(shè)為100 000。經(jīng)過Doc-RF模型訓(xùn)練后生產(chǎn)f0-f99棵子樹,其中f0子樹結(jié)構(gòu)如圖5所示。

圖5 Doc-RF模型下f0子樹結(jié)構(gòu)
本項目模型使用F-measure(F1)對外賣評價預(yù)測效果進(jìn)行綜合評價,F(xiàn)1就是一個綜合衡量準(zhǔn)確率(Precision,P)和召回率(Recall,R)的metric[10]。采用正確率、召回率和F1等評價指標(biāo)來衡量模型的效果,對應(yīng)公式如式(5)~式(7):
(5)
(6)
(7)
本文為了進(jìn)一步驗證Doc-RF模型對外賣評價方面的預(yù)測作用,本文選取幾種經(jīng)典的算法與Doc-RF算法進(jìn)行橫向比較。經(jīng)過篩選,本文選用邏輯回歸二分類、GBDT二分類、SVM以及樸素貝葉斯作為比較算法。性能評價指標(biāo)主要是正確數(shù)、錯誤數(shù)、總計、準(zhǔn)確率、精確率、召回率和F1指標(biāo)。在保證其他操作一致的條件下,進(jìn)行了5種算法的實驗。實驗結(jié)果見表2。

表2 五種預(yù)測方式的實驗結(jié)果
分析表2可知,使用邏輯回歸二分類、GBDT二分類、RF、SVM和樸素貝葉斯算法進(jìn)行外賣評價時,在準(zhǔn)確率和召回率上差異不是特別大。
(1) 在正確數(shù)指標(biāo)中,SVM算法以2 326正確數(shù)排行第一,與此同時SVM算法在錯誤數(shù)指標(biāo)中也是排行第一,這是因為SVM算法的召回率高達(dá)97.00%,參與運(yùn)算的數(shù)據(jù)總計3 240也是第一的。
(2) 在精確率上,GBDT二分類算法以78.99%占據(jù)第一名。
(3) 在準(zhǔn)確率上,隨機(jī)森林算法以78.60%的準(zhǔn)確率排在榜首。在F1綜合指標(biāo)中,隨機(jī)森林算法F1指標(biāo)值為85.42%以微弱的優(yōu)勢排在第一位。
綜上所述,隨機(jī)森林算法在外賣評價預(yù)測系統(tǒng)中比邏輯回歸二分類、GBDT二分類、SVM和樸素貝葉斯算法更優(yōu),符合外賣評價預(yù)測系統(tǒng)的設(shè)計要求。
本文提出了一種基于隨機(jī)森林和Doc2Vec算法的外賣評價預(yù)測模型,使得該模型既能結(jié)合數(shù)據(jù)集的全局信息,又利用段落向量在上下文的相關(guān)性,通過隨機(jī)森林算法較精確地預(yù)測外賣評價的語義信息。Doc2Vec模型依據(jù)段落特征從外賣評價數(shù)據(jù)集中提取出詞語義信息,建立段落向量和詞向量之間的相關(guān)性,采用隨機(jī)森林算法分類樹的預(yù)測優(yōu)勢,得到預(yù)測的混淆矩陣評估報告。實驗說明,基于隨機(jī)森林模型的預(yù)測效果優(yōu)于邏輯回歸二分類、GBDT二分類、SVM和樸素貝葉斯等模型,應(yīng)用性更強(qiáng),能夠解決外賣評價的虛假質(zhì)量問題。