楊瑩 吳誠(chéng)煒 胡蘇
摘 要:最近,許多不同類型的人工神經(jīng)網(wǎng)絡(luò)(Artificial Neural Network)已經(jīng)應(yīng)用于文檔分類,并且得到了較好的結(jié)果。但是,大多數(shù)的模型僅使用了少量特征作為輸入,因此可能沒(méi)有足夠的信息來(lái)對(duì)文檔進(jìn)行準(zhǔn)確分類。如果輸入更多的特征,將可能發(fā)生所謂的維數(shù)災(zāi)難,導(dǎo)致模型的訓(xùn)練時(shí)間大幅度增加,其泛化能力也可能會(huì)惡化。因此,在原始高維的輸入特征中抽取出高度可區(qū)分的低維特征,并將其作為相應(yīng)模型的輸入對(duì)改善模型的泛化性能會(huì)有很大的幫助。受限玻爾茲曼機(jī)(Restricted Boltzmann Machine)是一種新型的機(jī)器學(xué)習(xí)工具,因?yàn)槠鋸?qiáng)大的學(xué)習(xí)能力,受限玻爾茲曼機(jī)已經(jīng)被廣泛應(yīng)用于各種機(jī)器學(xué)習(xí)問(wèn)題。在本文中,我們使用受限玻爾茲曼機(jī)從原始輸入特征中抽取低維高度可區(qū)分的低維特征,并且使用支持向量機(jī)(Support Vector Machine)作為回歸模型。
關(guān)鍵詞:文檔分類受限玻爾茲曼機(jī)低維特征支持向量機(jī)
中圖分類號(hào):TP393 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1674-098X(2012)06(a)-0035-02
目前,隨著社會(huì)網(wǎng)絡(luò)化信息化的日益發(fā)展,網(wǎng)絡(luò)上充斥著越來(lái)越多的各類文檔,給用戶檢索帶了諸多不便。如何對(duì)文檔進(jìn)行并自動(dòng)分類已經(jīng)成為機(jī)器學(xué)習(xí)的重要研究課題之一。由于大多數(shù)模型只選擇少量的特征作為輸入,因此可能導(dǎo)致模型沒(méi)有足夠的信息來(lái)泛化模式。如果加入更多的輸入特征,訓(xùn)練時(shí)間將會(huì)明顯上升,而且模型的泛化性能也可能會(huì)惡化。
受限玻爾茲曼機(jī) (Restricted Boltzmann Machine)是一種由可視層和隱藏層組成的馬爾可夫隨機(jī)場(chǎng)(MarkovRandomField),并且處于相同層的節(jié)點(diǎn)相互無(wú)連接。受限玻爾茲曼機(jī)還可以組成深度信念網(wǎng)絡(luò)(DeepBeliefNetwork),深度信念網(wǎng)絡(luò)可以從復(fù)雜的高維輸入數(shù)據(jù)中抽取維數(shù)更低、區(qū)別度較高的特征。
這篇論文的主要貢獻(xiàn)是將受限玻爾茲曼機(jī)和支持向量機(jī)結(jié)合起來(lái),采用受限玻爾茲曼機(jī)對(duì)原始輸入的高維特征抽取低維高度可區(qū)分特征,并將其作為回歸模型支持向量機(jī)的輸入,對(duì)文檔進(jìn)行分類。
1 受限玻爾茲曼機(jī)
1.1 基本概念
受限玻爾茲曼機(jī)(Restricted Boltzmann Machine) 是一種沒(méi)有可見(jiàn)節(jié)點(diǎn)與可見(jiàn)節(jié)點(diǎn)或者隱藏節(jié)點(diǎn)與隱藏節(jié)點(diǎn)之間的連接的玻爾茲曼機(jī)。標(biāo)準(zhǔn)的受限玻爾茲曼機(jī)如圖1所示。受限玻爾茲曼機(jī)一個(gè)最主要的優(yōu)點(diǎn)是所有可見(jiàn)的節(jié)點(diǎn)是獨(dú)立于其他可見(jiàn)節(jié)點(diǎn)(對(duì)于隱藏節(jié)點(diǎn)亦然),因此可以通過(guò)使用基于層的快速學(xué)習(xí)算法如對(duì)比散度(Contrastive Divergence)來(lái)訓(xùn)練網(wǎng)絡(luò)。
受限玻爾茲曼機(jī)的能量函數(shù)如下所示:
其中代表可視節(jié)點(diǎn)的狀態(tài),代表隱藏節(jié)點(diǎn)的狀態(tài),為參數(shù)集合,在代表可視節(jié)點(diǎn)與隱藏節(jié)點(diǎn)的連接權(quán)重,,分別是可視節(jié)點(diǎn)和隱藏節(jié)點(diǎn)的偏置向量。
受限玻爾茲曼機(jī)歸一化因子(配分函數(shù))定義如下:
,
對(duì)于受限玻爾茲曼機(jī)的某一狀態(tài)的概率如下所示:
。
可視節(jié)點(diǎn)的條件概率如下所示:
,
隱藏節(jié)點(diǎn)的條件概率如下所示:
,
其中,表示權(quán)重矩陣的第個(gè)行向量,表示權(quán)重矩陣的第個(gè)列向量。
高斯-伯努利受限玻爾茲曼機(jī)(Gaussian-Bernoulli Restricted Boltzmann Machine)[1]將二進(jìn)制可視節(jié)點(diǎn)替換為具有高斯分布的實(shí)數(shù)可視節(jié)點(diǎn),高斯-伯努利受限玻爾茲曼機(jī)的能量函數(shù)如下所示:
其中,為高斯可見(jiàn)節(jié)點(diǎn)的標(biāo)準(zhǔn)方差向量。
高斯-伯努利受限玻爾茲曼機(jī)的可視節(jié)點(diǎn)條件分布服從如下高斯分布:
其中代表均值為,標(biāo)準(zhǔn)方差為的高斯分布。
高斯-伯努利受限玻爾茲曼機(jī)的隱藏節(jié)點(diǎn)的條件概率如下所示:。
1.2 特征抽取
由于受限玻爾茲曼機(jī)采用隱藏節(jié)點(diǎn)為輸入數(shù)據(jù)庫(kù)建模,采用受限玻爾茲曼隱藏節(jié)點(diǎn)的期望值作為抽取的特征是一種最直截了當(dāng)?shù)淖龇?。近?lái)的研究表明,某些問(wèn)題使用受限玻爾茲曼機(jī)抽取的特征作為回歸模型的輸入,比采用原始數(shù)據(jù)作為輸入在分類性能上得到了顯著的改善。
1.3 深度信念網(wǎng)絡(luò)
受限玻爾茲曼機(jī)的另外一個(gè)優(yōu)點(diǎn)是可以將受限玻爾茲曼機(jī)堆疊起來(lái)組成深度信念網(wǎng)絡(luò)(Deep Belief Network)抽取的更加抽象的特征。圖2展示了一個(gè)三層深度信念網(wǎng)絡(luò)。
深度信念網(wǎng)絡(luò)可以采用無(wú)監(jiān)督的分層對(duì)比散度算法訓(xùn)練:1)底部受限玻爾茲曼機(jī)以原始輸入數(shù)據(jù)訓(xùn)練。2)將底部受限玻爾茲曼機(jī)抽取特征作為頂部受限玻爾茲曼機(jī)的輸入訓(xùn)練。3)過(guò)程1)和2)可以重復(fù)來(lái)訓(xùn)練所需要的盡可能多的層數(shù)。無(wú)監(jiān)督的分層訓(xùn)練完畢后,還可以采用反向傳播法(backpropagation)微調(diào)權(quán)重和偏置來(lái)提高深度信念網(wǎng)絡(luò)的抽取性。
1.4 對(duì)比散度學(xué)習(xí)算法
2 基于受限玻爾茲曼機(jī)的文檔分類
由于文檔的文本內(nèi)容本身是不規(guī)范的,而且直接將文本內(nèi)容作為輸入,將會(huì)導(dǎo)致輸入數(shù)據(jù)的維數(shù)過(guò)高而無(wú)法處理。因此對(duì)文檔進(jìn)行預(yù)處理是必要的,抽取代表其本質(zhì)特征的元數(shù)據(jù),以結(jié)構(gòu)化的形式保存。文檔原始特征的提取一般可以選擇某些字、詞組的出現(xiàn)頻率作為特征項(xiàng)。
由上所述,即使進(jìn)行了預(yù)處理,原始特征的維數(shù)仍然很龐大,對(duì)原始特征進(jìn)一步抽取也是很必要。傳統(tǒng)的降維技術(shù)有主成份分析法(Principal Component Analysis)[2]等。本文采用深度信念網(wǎng)絡(luò)對(duì)原始特征進(jìn)行抽取低維高度可區(qū)分特征,然后將抽取的特征作為支持向量機(jī)的輸入,進(jìn)行回歸分析,從而達(dá)到文檔分類的目的。
3 實(shí)驗(yàn)
3.1 實(shí)驗(yàn)數(shù)據(jù)
國(guó)內(nèi)目前還沒(méi)有標(biāo)準(zhǔn)的且普遍接受的中文文檔分類測(cè)試文檔庫(kù),我們使用自己建立的測(cè)試文檔庫(kù)測(cè)試我們的文檔分類器。測(cè)試文檔庫(kù)中的文檔均來(lái)自騰訊門(mén)戶網(wǎng)站,它們被分為40個(gè)類,我們?nèi)∑渲械陌臋n數(shù)最多的20個(gè)類進(jìn)行測(cè)試,訓(xùn)練集總共包含10033篇文檔,測(cè)試集包含8032篇文檔。
3.2 實(shí)驗(yàn)設(shè)置
實(shí)驗(yàn)環(huán)境為Intel Core Quad 2.4GHz、4GB內(nèi)存和GeForcegt240顯卡,顯存為1GB.權(quán)重矩陣的元素初始為的隨機(jī)數(shù),偏置和初始化為0,高斯可視節(jié)點(diǎn)的標(biāo)準(zhǔn)方差固定為1.0。采用Java實(shí)現(xiàn)受限玻爾茲曼機(jī)框架,并且通過(guò)JCDUA(http://www.jcuda.org)使用GPU進(jìn)行加速運(yùn)算。支持向量機(jī)框架的實(shí)現(xiàn)是采用LIBSVM[3]開(kāi)源代碼。
3.3 實(shí)驗(yàn)結(jié)果
為了測(cè)試受限玻爾茲曼機(jī)及其深度體系的分類性能,我們進(jìn)行了三種不同類別的實(shí)驗(yàn):
使用300常用詞的統(tǒng)計(jì)頻率作為支持向量機(jī)的輸入。(SVM+300)
使用3000常用詞的統(tǒng)計(jì)頻率作為原始特征,使用PCA對(duì)高維文檔進(jìn)行降維處理,將抽取出的低維特征作為支持向量機(jī)的輸入。(SVM+PCA)
使用3000常用詞的統(tǒng)計(jì)頻率作為原始特征,使用4層深度信念網(wǎng)絡(luò)抽取低維高度可區(qū)分特征,并將抽取的特征作為支持向量機(jī)的輸入。深度信念網(wǎng)絡(luò)的節(jié)點(diǎn)數(shù)分別為3000,500,100,30。(SVM+DBN)
對(duì)于每一種類型的實(shí)驗(yàn),我們對(duì)支持向量機(jī)采用不同的配置參數(shù),并將最好的實(shí)驗(yàn)結(jié)果作為其代表,實(shí)驗(yàn)結(jié)果如表1所示。由表1可以看出,采用深度信念網(wǎng)絡(luò)抽取低維高可區(qū)分特征有助于提高支持向量機(jī)的回歸性能,從而提示文檔分類的準(zhǔn)確度。
4 Conclusion
本文采用了基于受限玻爾茲曼機(jī)抽取低維高可區(qū)別特征對(duì)中文文檔進(jìn)行分類。深度信念網(wǎng)絡(luò)抽取低維高度可區(qū)分特征有助于提高支持向量機(jī)的回歸性能,從而提示文檔分類的準(zhǔn)確度。實(shí)驗(yàn)結(jié)果表明這種方法獲得令人滿意的分類結(jié)果。盡管如此,本文原始特征的提取過(guò)于簡(jiǎn)單,采用一些更加成熟的方法將有助于提高分類性能。
參考文獻(xiàn)
[1] 王自強(qiáng),錢(qián)旭.基于KDA和SVM的文檔分類算法[J].計(jì)算機(jī)應(yīng)用,2009,2,416~418.
[2] 王自強(qiáng),錢(qián)旭,孔敏.面向文檔分類的LDE和簡(jiǎn)化SVM方法研究[J].計(jì)算機(jī)工程與應(yīng)用,2009,45(22):1~6.
[3] 何明,馮博琴,傅向華.基于Rough集潛在語(yǔ)義索引的Web文檔分類[J].計(jì)算機(jī)工程,2004,30(13):3~5.