李翔 柴志菲
摘要:情感分類是NLP應(yīng)用的一個(gè)分支,在輿情控制,評(píng)價(jià)預(yù)測(cè)以及推薦方面都有重要應(yīng)用。目前常用的情感分類方法有K近鄰算法、樸素貝葉斯分類、支持向量機(jī)、決策樹等。本文提出采用隨機(jī)森林進(jìn)行情感分類的研究,采取隨機(jī)森林作為分類模型,文本評(píng)論的句向量作為模型輸入,在15萬(wàn)條的評(píng)論數(shù)據(jù)上訓(xùn)練,取得了不錯(cuò)的預(yù)測(cè)結(jié)果。由于隨機(jī)森林算法方便并行化,該方案,極其容易部屬到集群中,進(jìn)行后續(xù)的工程化應(yīng)用。
關(guān)鍵詞:word2vec;隨機(jī)森林;情感分類
在當(dāng)代互聯(lián)網(wǎng)形式復(fù)雜的各種數(shù)字信息中,文本信息占據(jù)著重要的作用。文本自古以來(lái)文本就扮演著傳承人類智慧結(jié)晶的角色,是最重要的知識(shí)來(lái)源。
情感分類目前在知識(shí)發(fā)現(xiàn)、數(shù)字圖書等領(lǐng)域扮演著不可或缺的重要角色。目前常用的情感分類方法有K近鄰算法、樸素貝葉斯分類、支持向量機(jī)、決策樹等,另一種比較常用的方法是集成分類算法,這種方法通過(guò)構(gòu)建并結(jié)合多個(gè)基分類器來(lái)完成分類的任務(wù),其中在情感分類中比較廣泛應(yīng)用的是Breiman在2001年提出的隨機(jī)森林算法[1],并且其具有良好的分類性能、容易并行化、不易過(guò)擬合、構(gòu)建過(guò)程中無(wú)偏估計(jì)泛化誤差等優(yōu)點(diǎn),因此對(duì)隨機(jī)森林在情感分類問題中的研究和應(yīng)用有著重要的意義。
1.數(shù)據(jù)集
我們從新浪微博爬取781224條評(píng)論數(shù)據(jù),并對(duì)其批量打了標(biāo)簽,經(jīng)過(guò)數(shù)據(jù)分析,我們發(fā)現(xiàn)數(shù)據(jù)集中包含很多雜亂信息,需要對(duì)應(yīng)清洗,其中包括超鏈接部分,特殊字符部分,英文單和數(shù)字的處理,以及對(duì)應(yīng)長(zhǎng)度的考慮。我們針對(duì)超鏈接,特殊字符,空格采取的是去除策略;對(duì)英文,數(shù)字采取正則表達(dá)式的方式進(jìn)行替換,替換成特殊字符;為了兼顧訓(xùn)練數(shù)據(jù)的質(zhì)量和數(shù)據(jù)規(guī)模,我們將評(píng)論長(zhǎng)度限制在10到20之間。
中文是一種粘性語(yǔ)言,英文天然有空格進(jìn)行分詞,因此為了向量化的表示,我們需要對(duì)中文進(jìn)行分詞處理,常見的分詞方式有三種:基于前向后向的匹配分詞,基于概率的統(tǒng)計(jì)分詞,以及基于神經(jīng)網(wǎng)絡(luò)的分詞,這里我們采用基于概率的統(tǒng)計(jì)分詞方法,選取清華開源的thulac分詞工具[4]進(jìn)行分詞。
2.向量化
計(jì)算機(jī)只能識(shí)別數(shù)字化,向量化的信息,因?yàn)樾枰獙⑽覀兊奈谋颈硎痉绞睫D(zhuǎn)換成向量化的方式,其核心為詞向量?,F(xiàn)有詞向量的主流方式有以word2vec和glove為主的靜態(tài)詞向量,以及以ELMO為主流的神經(jīng)網(wǎng)絡(luò)編碼,以及以bagging思想為主的one-hot,tf-idf詞編碼??紤]到模型為隨機(jī)森林,我們這里采取word2vec進(jìn)行詞編碼。個(gè)人訓(xùn)練的word2vec信息如下表。
考慮到模型的輸入問題,需要將詞向量轉(zhuǎn)變?yōu)榫湎蛄?,此處采取最?jiǎn)單的方式,即以詞向量的tf-idf加權(quán)平均和表示句向量。
3.模型介紹
由于一個(gè)決策樹的分類結(jié)果往往不夠準(zhǔn)確,或者容易產(chǎn)生過(guò)擬合問題,在2001年,Breiman從袋裝算法和隨機(jī)特征子空間方法得到啟發(fā),提出了隨機(jī)森林算法[1]。隨機(jī)森林利用袋裝算法的有放回抽樣,從原始樣本中抽取多個(gè)樣本子集,并使用這幾個(gè)樣本對(duì)多個(gè)決策樹模型訓(xùn)練,在訓(xùn)練過(guò)程中使用借鑒了隨機(jī)特征子空間方法,在特征集中抽取部分特征進(jìn)行決策樹的分裂,最后集成多個(gè)決策樹稱為一個(gè)集成分類器,這個(gè)集成分類器稱為隨機(jī)森林。
隨機(jī)森林算法按結(jié)構(gòu)可以分為三個(gè)部分,子樣本集的生成,決策樹的構(gòu)建,投票產(chǎn)生結(jié)果。子樣本集的生成。典型是袋裝算法的樣本自助聚集法,對(duì)原始樣本集進(jìn)行有放回的隨機(jī)抽樣,形成與原始樣本集大小一樣的子樣本集,并重復(fù)進(jìn)行k次(k為基分類器的個(gè)數(shù))。決策樹的構(gòu)建。隨機(jī)森林的決策樹與普通的決策樹構(gòu)建方式基本一致,不同的是隨機(jī)森林的決策樹在進(jìn)行分裂時(shí)選擇的特征并不是對(duì)整個(gè)特征全集進(jìn)行搜索,而是隨機(jī)選取k個(gè)特征進(jìn)行劃分。投票產(chǎn)生結(jié)果。隨機(jī)森林的分類結(jié)果是各個(gè)基分類器,即決策樹,進(jìn)行投票得出。
4.實(shí)驗(yàn)
首先我們從186413條評(píng)論數(shù)據(jù)中,劃分了20000條作為測(cè)試集合,其余數(shù)據(jù)作為訓(xùn)練集訓(xùn)練模型,將準(zhǔn)備好的句向量作為隨機(jī)森林模型的輸入,得到如下的評(píng)價(jià)指標(biāo)??梢钥闯瞿P偷男Ч€算不錯(cuò)。
5.總結(jié)
本文我們對(duì)隨機(jī)森林在情感分類上的應(yīng)用進(jìn)行了探索,取得了還算不錯(cuò)的結(jié)果。該方法的好處是方便部屬到分布式集群上,做分布式計(jì)算。當(dāng)然,在情感分類方面也可以嘗試采用最新的神經(jīng)網(wǎng)絡(luò)模型,例如Bert,但是其在分布式方面的應(yīng)用比較困難。
引用
[1]BreimanL.RandomForests[J].MachineLearning,2001,45:5-32
[2]ZhongguoLi,MaosongSun.PunctuationasImplicitAnnotationsforChineseWordSegmentation.ComputationalLinguistics,vol.35,no.4,pp.505-512,2009.
[3]張其龍.基于隨機(jī)森林的情感分類研究與應(yīng)用[D].2019.
[4]羅新.基于隨機(jī)森林的文本分類模型研究[J].農(nóng)業(yè)圖書情報(bào)學(xué)刊,2016,028(011):50-54.
[5]彭徵,王靈矯,郭華.基于隨機(jī)森林的文本分類并行化[J]. 計(jì)算機(jī)科學(xué),2018, 45(12):155-159.
[6]田寶明,戴新宇,陳家駿.一種基于隨機(jī)森林的多視角文本分類方法[J].中文信息學(xué)報(bào),2009.