劉 刊,劉 中
(太原科技大學(xué)機(jī)械工程學(xué)院,山西 太原 030024)
隨著互聯(lián)網(wǎng)通道能力和運(yùn)算能力的增強(qiáng)以及互聯(lián)網(wǎng)整合技術(shù)和應(yīng)用服務(wù)的演進(jìn),云計(jì)算作為一種新的互聯(lián)網(wǎng)模式應(yīng)運(yùn)而生。云計(jì)算帶來(lái)了3種服務(wù)方式:Iaas、Paas和Saas,這3種服務(wù)方式最大的特點(diǎn)是可使制造企業(yè)在軟件方面變買(mǎi)為租,且省去本地安裝與維護(hù),也不用購(gòu)買(mǎi)好的硬件,存儲(chǔ)資料可以放到云端,設(shè)計(jì)開(kāi)發(fā)產(chǎn)品時(shí)根據(jù)需要租用云網(wǎng)上的計(jì)算能力即可,并且還能決定在本地還是在云端運(yùn)行所用的軟件開(kāi)發(fā)平臺(tái)以及搜索和分類(lèi)應(yīng)用程序[1]。這樣的云端辦公室可為制造企業(yè)節(jié)省大量的人力、物力和財(cái)力,省下的這些支出和時(shí)間若用到擴(kuò)大再生產(chǎn)上將會(huì)大大增加制造企業(yè)對(duì)制造資源的需求,同時(shí)云計(jì)算帶來(lái)的3種服務(wù)方式使得Web上的信息量真正實(shí)現(xiàn)了幾何級(jí)數(shù)的增長(zhǎng)。一邊是制造企業(yè)對(duì)制造資源的大量需求,一邊是制造資源的大規(guī)模積累,怎樣對(duì)浩如煙海的制造資源進(jìn)行分類(lèi)檢索和管理已成為一個(gè)很重要的研究課題。
本文提出了一種制造資源文本分類(lèi)算法,對(duì)制造資源的分類(lèi)準(zhǔn)確有效,可方便研究人員整理資料和構(gòu)建制造資源本體庫(kù),從而為制造資源的語(yǔ)義發(fā)現(xiàn)打好基礎(chǔ)。同時(shí)制造企業(yè)也能迅速地找到所需的資源,降低產(chǎn)品的開(kāi)發(fā)周期,提高產(chǎn)品和企業(yè)的競(jìng)爭(zhēng)能力。
本文的研究對(duì)象是云網(wǎng)(云計(jì)算網(wǎng)絡(luò),即Cloud Web)上的機(jī)械制造資源,其類(lèi)別有廣義和狹義之分,本文只對(duì)狹義的制造資源進(jìn)行研究。狹義的制造資源是指加工制造一個(gè)產(chǎn)品所需要的物質(zhì)元素,它主要包括各種機(jī)床、刀夾具、量具和材料等[2]。
制造資源文本的分類(lèi)是基于數(shù)據(jù)的機(jī)器學(xué)習(xí)方法,該方法以訓(xùn)練樣本為出發(fā)點(diǎn)來(lái)發(fā)現(xiàn)規(guī)律,從而實(shí)現(xiàn)對(duì)未知樣本的識(shí)別分類(lèi)。文本分類(lèi)的形式化描述是:訓(xùn)練和分類(lèi)時(shí)賦予樣本一定的主題特征,并將其特征用數(shù)據(jù)模型表示為(x,c),x∈Rn,其中,x表示樣本特征信息向量,c表示類(lèi)別[3]。
在云網(wǎng)上獲得較好制造資源文本分類(lèi)效果的前提是選擇合適的機(jī)器學(xué)習(xí)算法。分類(lèi)算法根據(jù)其依據(jù)的數(shù)學(xué)原理可劃分為2類(lèi):基于統(tǒng)計(jì)的文本分類(lèi)算法和基于規(guī)則的分類(lèi)算法。常見(jiàn)的基于統(tǒng)計(jì)的文本分類(lèi)算法包括樸素貝葉斯(Na?ve Bayes,NB),支持向量機(jī),k最近鄰,神經(jīng)網(wǎng)絡(luò)、多層感知器和Rocchio算法等;常見(jiàn)的基于規(guī)則的分類(lèi)算法包括基于決策樹(shù)的分類(lèi)算法、基于粗糙集的分類(lèi)算法和基于模糊集合的分類(lèi)算法等[4]。
在制造資源的Cloud web分類(lèi)研究中,制造資源文本包括兩分類(lèi)問(wèn)題和多分類(lèi)問(wèn)題,前者是指將文本集合分為制造文本類(lèi)和非制造文本類(lèi),后者要分類(lèi)的文本都是制造文本,把這些待分類(lèi)的制造文本劃分為機(jī)械制造領(lǐng)域內(nèi)的小類(lèi)。本文證明了SVM有很好的分類(lèi)精度,但分類(lèi)速度太慢;NB的分類(lèi)速度較快,但分類(lèi)精度較差,這和前人實(shí)驗(yàn)得出的結(jié)論是一致的。因此,本文提出的是綜合NB和SVM的算法,先用NB算法對(duì)云網(wǎng)上的文本進(jìn)行多分類(lèi)處理,再用SVM算法剔除掉每類(lèi)中和機(jī)械制造類(lèi)文本距離遠(yuǎn)的文本。這樣結(jié)合兩者的優(yōu)點(diǎn)可使分類(lèi)效果既快又準(zhǔn)。
NB算法是基于Bayes全概率公式的算法,Bayes公式為
給定一個(gè)類(lèi) c 以及文本 d(a1,a2,…,ai,…,an),其中ai表示文本中出現(xiàn)的第i個(gè)特征項(xiàng),n為文本中出現(xiàn)的特征項(xiàng)的總數(shù)。依據(jù)全概率公式(1),可以得到公式(2):
式中:P(c|d)表示文本d屬于類(lèi)別c的概率;P(c)表示待分類(lèi)的文本現(xiàn)在所處的位置屬于這個(gè)類(lèi)別的概率;P(ai|c)表示在類(lèi)別c中特征項(xiàng)ai出現(xiàn)的概率。
NB算法分類(lèi)速度快,原因是事先假設(shè)各文本之間的特征項(xiàng)都是彼此獨(dú)立的,這樣的假設(shè)缺乏嚴(yán)格的理論推導(dǎo),故該算法無(wú)法保證它的準(zhǔn)確性,所以導(dǎo)致其分類(lèi)精度較差[5]。
SVM算法是針對(duì)二分類(lèi)問(wèn)題的,通過(guò)在高維空間中構(gòu)造一個(gè)超平面作為樣本的最優(yōu)分割面。對(duì)于二分類(lèi)(c1,c2)問(wèn)題,其分類(lèi)面可表示為一個(gè)線性分類(lèi)器,表達(dá)式如下:
其把樣本空間劃分為2個(gè)子空間。當(dāng)g(x)≥0時(shí),樣本屬于類(lèi)別c1;當(dāng)g(x)<0時(shí),樣本屬于類(lèi)別c2。
SVM算法的理論基礎(chǔ)很成熟,分類(lèi)文本時(shí)有很好的效果。
制造資源文本分類(lèi)對(duì)分類(lèi)算法的效率和準(zhǔn)確率提出了很高的要求,對(duì)于實(shí)際制造資源領(lǐng)域的文本分類(lèi),本文提出了一種基于NB和SVM融合的NB-SVM分類(lèi)算法。這種算法的思想是首先利用NB來(lái)進(jìn)行樣本的分類(lèi),這樣會(huì)過(guò)濾掉很大一部分非機(jī)械制造文本,再用相似度閾值的高低來(lái)評(píng)價(jià)剩下分好類(lèi)的文本,若樣本的相似度閾值高,則以其作為分類(lèi)結(jié)果。對(duì)相似度閾值一般或差的樣本則采用SVM再進(jìn)行二分類(lèi),并作為最終的分類(lèi)結(jié)果。這種僅挑選相似度閾值評(píng)價(jià)不高的樣本再進(jìn)行SVM分類(lèi),可以提高最終分類(lèi)的準(zhǔn)確度和速度。
機(jī)械制造文本分類(lèi)包括訓(xùn)練和分類(lèi)2個(gè)過(guò)程。
a.訓(xùn)練過(guò)程。
訓(xùn)練樣本中有主題樣本也有非主題樣本。先定義文本分類(lèi)的主題,然后從網(wǎng)上搜索相關(guān)制造文本作為訓(xùn)練樣本。對(duì)文本進(jìn)行解析,建立主題特征庫(kù),從而確定訓(xùn)練樣本的特征向量,用分類(lèi)器反復(fù)訓(xùn)練,調(diào)整分類(lèi)參數(shù),以達(dá)到最佳的分類(lèi)效果。
具體訓(xùn)練步驟:
(1)訓(xùn)練NB分類(lèi)器,以調(diào)整參數(shù)的選取。
(2)訓(xùn)練SVM分類(lèi)器,以調(diào)整懲罰系數(shù)等參數(shù)。
(3)設(shè)置NB-SVM相似度閾值。
(4)用NB算法計(jì)算每個(gè)訓(xùn)練文本屬于0,1到第n個(gè)類(lèi)的可能性:P0(非制造文本類(lèi)),P1,P2,…,Pn。
(5)分別找出 P1,P2,…,Pn中分好類(lèi)的所有樣本,設(shè) Pi中的樣本為 Xi1,Xi2,…,Xin。
(6)用相似度閾值來(lái)分別評(píng)價(jià)Xij,對(duì)相似度閾值高的樣本認(rèn)為NB分類(lèi)正確,同時(shí)把相似度閾值評(píng)價(jià)不高的樣本傳遞給SVM分類(lèi)器。
(7)使用SVM再進(jìn)行分類(lèi),以SVM的分類(lèi)結(jié)果作為最終分類(lèi)結(jié)果。
(8)用評(píng)估程序?qū)ο嗨贫乳撝颠M(jìn)行反饋調(diào)整。
b.分類(lèi)過(guò)程。
用爬蟲(chóng)程序深入測(cè)試樣本內(nèi)部,搜集相關(guān)的文本,并下載。服務(wù)器端解析制造文本,然后與特征詞庫(kù)匹配,提取特征詞,建立特征向量集合,用分類(lèi)器對(duì)樣本的主題類(lèi)別進(jìn)行判斷。
具體分類(lèi)步驟(T為待分類(lèi)的樣本集合,R表示相似度閾值,C表示文本的主題類(lèi)別):
(1)用NB算法計(jì)算待分類(lèi)文本T屬于0,1到第n個(gè)類(lèi)的可能性:P0(非制造文本類(lèi)),P1,P2,…,Pn。
(2)分別找出 P1,P2,…,Pn中分好類(lèi)的所有樣本,設(shè) Pi中的樣本為 Xi1,Xi2,…,Xin。
(3)用相似度閾值R來(lái)分別評(píng)價(jià)Xij,對(duì)相似度閾值高的樣本認(rèn)為NB分類(lèi)正確,同時(shí)把相似度閾值評(píng)價(jià)不高的樣本傳遞給SVM分類(lèi)器。
(4)用SVM再進(jìn)行分類(lèi),以SVM的分類(lèi)結(jié)果作為最終分類(lèi)結(jié)果,這時(shí)確定Xij屬于Ci。
采用召回率、正確率、F測(cè)試值來(lái)評(píng)價(jià)NBSVM算法,tp(真正確,true positive)表示分類(lèi)器正確分類(lèi)的樣本數(shù)目,tn(真錯(cuò)誤,true negative)表示將樣本正確地排除在某類(lèi)之外的個(gè)數(shù),fp(假正確,false positive)表示將樣本錯(cuò)誤地分類(lèi)到某類(lèi)的個(gè)數(shù),fn(假錯(cuò)誤,false negative)表示將樣本錯(cuò)誤地排除在某類(lèi)之外的個(gè)數(shù)。
該分類(lèi)算法的召回率R、正確率P和F測(cè)試值分別用公式(4)、(5)、(6)來(lái)計(jì)算,公式如下:
為了檢驗(yàn)NB-SVM算法對(duì)制造資源文本的分類(lèi)性能,本實(shí)驗(yàn)的分類(lèi)對(duì)象是機(jī)械制造資源網(wǎng)站上的文本,網(wǎng)絡(luò)爬蟲(chóng)的搜索、文本內(nèi)容的解析和分類(lèi)算法的設(shè)計(jì)等模塊都是用Java語(yǔ)言開(kāi)發(fā)的。由于機(jī)械制造文本分類(lèi)實(shí)驗(yàn)沒(méi)有統(tǒng)一公共的測(cè)試樣本庫(kù),針對(duì)具體的實(shí)驗(yàn)內(nèi)容,本文預(yù)先從中國(guó)機(jī)械網(wǎng)、中國(guó)機(jī)械設(shè)備網(wǎng)、中國(guó)工程機(jī)械網(wǎng)等網(wǎng)站中提取樣本網(wǎng)址,來(lái)保證樣本的主題分類(lèi)正確。網(wǎng)絡(luò)搜索的測(cè)試語(yǔ)料樣本數(shù)目為3600篇,其中,機(jī)械制造樣本2880篇;非制造樣本數(shù)720篇。
本文分別采用NB算法、SVM算法以及NBSVM算法來(lái)實(shí)現(xiàn)分類(lèi)。實(shí)驗(yàn)統(tǒng)計(jì)結(jié)果,NB的F值是0.785,SVM 的 F 值是0.882,而 NB-SVM 的 F值是0.944,從而得到的SVM的分類(lèi)效果要優(yōu)于NB算法,而NB-SVM算法的分類(lèi)效果最好。
在相同的文本訓(xùn)練集和測(cè)試集的前提下,本文對(duì)NB、SVM和NB-SVM算法進(jìn)行了比較研究。主要的實(shí)驗(yàn)結(jié)果有:(1)SVM的分類(lèi)效果優(yōu)于NB。(2)NB-SVM的分類(lèi)效果比單獨(dú)的NB和SVM都好。本文下一步的工作有:(1)用NB-SVM算法同其他算法(如KNN等)進(jìn)行比較。(2)針對(duì)機(jī)械領(lǐng)域網(wǎng)頁(yè)的特性,繼續(xù)增加樣本數(shù)量進(jìn)行訓(xùn)練,從而獲得最佳訓(xùn)練參數(shù)。(3)目前的分類(lèi)器只考慮了機(jī)械領(lǐng)域的分類(lèi)對(duì)象,因此筆者的進(jìn)一步工作是將該算法運(yùn)用到其他領(lǐng)域進(jìn)行測(cè)試。(4)根據(jù)反饋信息,增量訓(xùn)練分類(lèi)器,逐步提高分類(lèi)器的分類(lèi)效果。
[1] 藺華,楊東日,劉龍庚.云計(jì)算推動(dòng)商業(yè)與技術(shù)變革[M].北京:電子工業(yè)出版社,2011:10-26.
[2] 蘇是.基于語(yǔ)義的網(wǎng)絡(luò)化制造資源搜索技術(shù)研究[D].太原:太原科技大學(xué),2012.
[3] 董寶力.Web制造資源的語(yǔ)義發(fā)現(xiàn)關(guān)鍵技術(shù)研究[D].杭州:浙江大學(xué),2006.
[4] 張志華.中文文本分類(lèi)算法的研究與實(shí)現(xiàn)[D].北京:北京工業(yè)大學(xué),2004.
[5] 董麗麗.一種面向機(jī)械領(lǐng)域文本分類(lèi)器的設(shè)計(jì)[J].微電子學(xué)與計(jì)算機(jī),2012,29(4):142-145.