ig信息增益 java_文本分类综述
文本分類是一項(xiàng)系統(tǒng)的工程,所涉及的技術(shù)很多,按流程可以將文本分類分為:文本預(yù)處理階段、訓(xùn)練階段、分類階段、評價(jià)四個(gè)階段,其中預(yù)處理階段要文本處理成計(jì)算機(jī)能識別的格式,首先對文本進(jìn)行分詞處理,中文文本和英文文本組織形式不同,中文文本的分詞過程比英文分詞要復(fù)雜得多。分詞后文本的特征詞非常多,而我們需要的只是少數(shù)有使用價(jià)值的特征詞,因此分詞后的文本要進(jìn)行特征選擇,并將特征選擇后的特征項(xiàng)加權(quán),最后將文本表示成向量空間模型(VSM),經(jīng)過預(yù)處理后的文本才能進(jìn)行分類。分類算法是文本分類的核心技術(shù)。評估階段是對文本分類的效果進(jìn)行評價(jià),常用的指標(biāo)有:準(zhǔn)確率、召回率、以及綜合這兩個(gè)指標(biāo)的評價(jià)方法一F1值等。
文檔表示方法
文檔集劃分為訓(xùn)練集和測試集兩個(gè)部分,訓(xùn)練集用于分類模型的學(xué)習(xí),一般占整個(gè)文檔集的70%;測試集用于評價(jià)分類模型,一般占整個(gè)文檔集的30%。開放的英文文檔集Reuters-21578和20NewsGroups。前者比后者更為常用。
經(jīng)過半個(gè)世紀(jì)的發(fā)展,在文本處理領(lǐng)域,研究者提出了一些文本表示模型,主要有:布爾模型、向量空間模型、概率檢索模型、n-Gram模型等,其中使用最廣、效果最好的是向量空間模型。
向量空間模型
20世紀(jì)60年代,Salton G等人提出了向量空間模型,并成功應(yīng)用于SMART文本檢索系統(tǒng),其基本思想是:將文本表征成由特征項(xiàng)(詞)構(gòu)成的向量空間中的一個(gè)點(diǎn),(W1,W2,…,Wi),其中Wi為第i個(gè)特征項(xiàng)的權(quán)重,然后通過計(jì)算空間兩點(diǎn)之間的相似度來表示兩個(gè)文本的相關(guān)程度,相似度計(jì)算一般采用歐氏距離或向量夾角的余弦值。向量空間模型在實(shí)際使用中取得了很好的效果,常用的文本分類算法中,支持向量機(jī)、K近鄰、和NB都是基于向量空間模型的。
布爾模型
布爾模型可以看作是向量模型的一種特例,根據(jù)特征是否在文檔中出現(xiàn),特征的權(quán)值只能取1或0。許多時(shí)候,使用二值特征的分類效果結(jié)果并不比考慮特征頻率的差。決策樹方法、關(guān)聯(lián)規(guī)則方法和Boosting方法就是基于布爾模型。
概率模型
我們可以用該流程的思想來解決出現(xiàn)在文檔檢索中的不確定性和找尋的不清楚性。概率模型的理論是基于概率排隊(duì)的:如果文件是按相關(guān)概率遞減方向排隊(duì)時(shí),那么就會出現(xiàn)最大的檢索性能。選用此種模型可以克服BM和SVM中的不足,此種模型根據(jù)詞與詞間和文檔間與詞條的概率關(guān)聯(lián)性進(jìn)行搜索。設(shè)文檔d和顧客查詢c都用(a1,a2,…an)表示,當(dāng)詞條ti∈d時(shí),有ai=1.否則ai=0,這種關(guān)系可數(shù)學(xué)表示為:
其中
f是所有參加訓(xùn)練的文檔的總和,r則為顧客查詢與文檔集中相關(guān)的文檔數(shù),fi則表示訓(xùn)練文檔集中有ti的文檔數(shù),ri則表示r個(gè)相關(guān)文檔中有ti的文檔數(shù),模型的有點(diǎn)是有著非常嚴(yán)謹(jǐn)?shù)臄?shù)學(xué)理論基礎(chǔ),解決了不確定性推理的缺點(diǎn),但是它的不足在于參數(shù)估計(jì)方面很困難,在文件和查詢的表達(dá)方面也是很困難
文檔分詞
詞是文本中最小的具有意義的語言成分,是構(gòu)造向量空間模型的基礎(chǔ),文本分詞的效果直接影響到文本分類的結(jié)果。在文本的組織上,中文與以英語為代表的歐美語言有著很大的不同,在西方語言中,詞與詞是使用空格隔開的,因此不需要進(jìn)行分詞處理,而在中文文本中,字、詞是連在一起的,一個(gè)語句就是一連串的字、詞組合,詞與詞之間沒有明顯界限,因此,分詞的難度較大。常用的分詞算法主要有:基于詞典的分詞方法、基于理解的分詞方法、基于統(tǒng)計(jì)的分詞方法。
基于詞典的分詞方法
基于詞典的分詞方法又叫做機(jī)械分詞方法,它是按照一定的策略將待切分的字符串與詞典中的詞條進(jìn)行匹配,若在詞典中找到某個(gè)字符串,則匹配成功(即識別出一個(gè)詞)。按照掃描方向的不同,基于詞典的分詞方法可以分為正向匹配和逆向匹配;按照不同長度優(yōu)先匹配的情況,可以分為最大匹配和最小匹配;按照是否與詞性標(biāo)注過程相結(jié)合,又可以分為單純分詞方法和分詞與標(biāo)注相結(jié)合的一體化方法,常用的幾種基于詞典分詞方法如下:正向最大匹配法(由左到右的方向)、逆向最大匹配法(由右到左的方向)、逐詞遍歷法。
在實(shí)際應(yīng)用中,常常將上述方法結(jié)合起來。例如,可以將正向最大匹配方法和逆向最大匹配方法結(jié)合起來構(gòu)成雙向匹配法。由于漢語單字成詞的特點(diǎn),正向最小匹配和逆向最小匹配一般很少使用。一般說來,逆向匹配的切分精度略高于正向匹配,遇到的歧義現(xiàn)象也較少。
再一種方法是改進(jìn)掃描方式,稱為特征掃描或標(biāo)志切分,優(yōu)先在待分析字符串中識別和切分出一些帶有明顯特征的詞,以這些詞作為斷點(diǎn),可將原字符串分為較小的串再來進(jìn)行機(jī)械分詞,從而減少匹配的錯(cuò)誤率。還有一種方法是將分詞和詞類標(biāo)注結(jié)合起來,利用豐富的詞類信息對分詞決策提供幫助,并且在標(biāo)注過程中又反過來對分詞結(jié)果進(jìn)行檢驗(yàn)、調(diào)整,從而極大地提高切分的準(zhǔn)確率。目前實(shí)用的自動分詞系統(tǒng)基本上都是以采用機(jī)械分詞為主,輔以少量的詞法、語法和語義信息的分詞系統(tǒng)。該方法的優(yōu)點(diǎn)是易于實(shí)現(xiàn),但精度較低,遠(yuǎn)遠(yuǎn)不能滿足實(shí)際的需要。實(shí)際使用的分詞系統(tǒng),都是把機(jī)械分詞作為一種初分手段,再利用各種其它的語言信息來進(jìn)一步提高切分的準(zhǔn)確率。
基于理解的分詞方法
又稱人工智能分詞法,這種分詞方法是通過讓計(jì)算機(jī)模擬人對句子的理解,達(dá)到識別詞的效果。其基本思想就是在分詞的同時(shí)進(jìn)行句法、語義分析,利用句法信息和語義信息來處理歧義現(xiàn)象。它通常包括三個(gè)部分:分詞子系統(tǒng)、句法語義子系統(tǒng)、總控部分。在總控部分的協(xié)調(diào)下,分詞子系統(tǒng)可以獲得有關(guān)詞、句子等的句法和語義信息來對分詞歧義進(jìn)行判斷,即它模擬了人對句子的理解過程。這種分詞方法需要使用大量的語言知識和信息。由于漢語語言知識的籠統(tǒng)、復(fù)雜性,難以將各種語言信息組織成機(jī)器可直接讀取的形式,因此目前基于理解的分詞系統(tǒng)還處在試驗(yàn)階段。
基于統(tǒng)計(jì)的分詞方法
基于統(tǒng)計(jì)的分詞算法的思想是:找出輸入字符串的所有可能的切分結(jié)果,對每種切分結(jié)果利用能夠反映語言特征的統(tǒng)計(jì)數(shù)據(jù)計(jì)算它的出現(xiàn)概率,然后從結(jié)果中選取概率最大的一種。詞是穩(wěn)定的字的組合,因此在上下文中,如果相鄰的字共現(xiàn)的次數(shù)越多,就越有可能構(gòu)成一個(gè)詞。因此字與字相鄰出現(xiàn)的頻率或概率能夠較好的反映成詞的可信度。通過對語料中相鄰共現(xiàn)的各個(gè)字的組合頻度進(jìn)行統(tǒng)計(jì),計(jì)算它們的互現(xiàn)信息?;ガF(xiàn)信息體現(xiàn)了漢字之間結(jié)合關(guān)系的緊密程度。當(dāng)緊密程度高于某一個(gè)閾值時(shí),便可認(rèn)為此字組可能構(gòu)成了一個(gè)詞。這種方法只需對語料中的字組頻度進(jìn)行統(tǒng)計(jì),不需要切分詞典,因而又叫做無詞典分詞法或統(tǒng)計(jì)取詞方法。但這種方法也有一定的局限性,會經(jīng)常抽出一些共現(xiàn)頻度高、但并不是詞的常用字組,并且對常用詞的識別精度差,時(shí)空開銷大。實(shí)際應(yīng)用的統(tǒng)計(jì)分詞系統(tǒng)都要使用一部基本的分詞詞典進(jìn)行串匹配分詞,同時(shí)使用統(tǒng)計(jì)方法識別一些新的詞,即將串頻統(tǒng)計(jì)和串匹配結(jié)合起來,既發(fā)揮匹配分詞切分速度快、效率高的特點(diǎn),又利用了無詞典分詞結(jié)合上下文識別生詞、自動消除歧義的優(yōu)點(diǎn)。
對于任何一個(gè)成熟的中文分詞系統(tǒng)來說,不可能單獨(dú)依靠某一種算法來實(shí)現(xiàn),需要
綜合不同的算法來處理不同的問題。
停用詞處理技術(shù)
經(jīng)過分詞處理的文本,并不是所有的特征都對構(gòu)造向量空間模型和分類有幫助,相反,將對文本分類沒有幫助的詞作為特征項(xiàng),會對分類的精度造成很大的影響,特別對于使用文檔頻率(DF)進(jìn)行特征選擇的分類方法,影響更大。另外,去停用詞可以很大程度上減小特征項(xiàng)的數(shù)量,對文本降維具有很大幫助,所以在構(gòu)造向量空間模型前,要對分類無幫助的詞進(jìn)行盡可能徹底的清理。去停用詞在技術(shù)上實(shí)現(xiàn)并不復(fù)雜,只需建立一個(gè)停用詞詞典停用詞詞典內(nèi)的詞條進(jìn)行匹配,如果匹配成功,則將該詞去掉。
特征選擇方法
在經(jīng)過文本分類系統(tǒng)的分詞、去停用詞處理后,文本的特征維數(shù)仍然很高,這里所指的特征維數(shù)是指要構(gòu)造VSM空間的所有文本的特征之和,一個(gè)文本集合很可能包含十幾萬個(gè)特征詞,而每篇文本包含的特征詞卻很少,這樣構(gòu)造的向量空間模型是一個(gè)高維的稀疏矩陣,會對分類算法的時(shí)間復(fù)雜度和空間復(fù)雜度造成很大的影響。實(shí)驗(yàn)顯示,當(dāng)向量空間的特征維度達(dá)到一定值時(shí)就可以實(shí)現(xiàn)很高的分類性能,隨著特征維度的增加,分類性能反而會下降。因此,必須對特征項(xiàng)進(jìn)行有效的篩選。常用的文本特征選擇方法有:文檔頻率(DF)、信息增益(IG)、互信息(MI)、X2統(tǒng)計(jì)量(CHI)、期望交叉嫡等,這些方法的基本思想都是對每一個(gè)特征(在這里是中文詞),計(jì)算某種統(tǒng)計(jì)度量值,然后設(shè)定一個(gè)閾值T,把度量值小于T的那些特征過濾掉,剩下的即認(rèn)為是有效特征。
文檔頻率(DF)
DF值低于某個(gè)閾值的詞條是低頻詞,它們不含或含有較少的類別信息。將這樣的詞條從原始特征空間中移除,不但能夠降低特征空間的維數(shù),而且還有可能提高分類的精度。DF高于某個(gè)閾值的詞為中、高頻詞,這些詞被認(rèn)為對分類的影響較大,應(yīng)該保留。在英文環(huán)境中,當(dāng)IG和CHI等統(tǒng)計(jì)方法的計(jì)算復(fù)雜度太高時(shí),DF可以代替它們被使用。
互信息(MI)
如果用A表示包含詞條t且屬于類別c的文檔頻數(shù),B為包含t但不屬于c的文檔頻數(shù),C表示屬于c但是不包含t的文檔頻數(shù),N表示語料中的文檔總數(shù),t和c的互信息由下式計(jì)算:
如果t和c無關(guān)(即P(tc)=P(t)*P(c)),I(t,c)值自然為零。為了將互信息應(yīng)用于多個(gè)類別,由下式計(jì)算t對于c的互信息:
其中m為類別數(shù),將低于特定閾值的詞條從原始特征空間中移除,降低特征空間的維數(shù),保留高于閾值的詞條
信息增益(IG)
表示文檔包含某一特征時(shí)文檔類的平均信息量,定義為某一特征在文檔中出現(xiàn)前后的信息熵之差。假定c為文本類變量,C為文本類的集合,d為文本,f為特征。對于特征f其信息增益記為IG(f),計(jì)算公式
X2統(tǒng)計(jì)(CHI)
CHI統(tǒng)計(jì)方法度量詞條t和文檔類別c之間的相關(guān)程度,并假設(shè)t和c之間符合具有一階自由度的x2分布,詞條對于某類的x2統(tǒng)計(jì)值越高,它與類之間的相關(guān)性越大,攜帶的類別信息也較多,令N表示訓(xùn)練語料中的文檔總數(shù),c為某一特定類別,t表示特定的詞條,A表示屬于c類且包含t的文檔頻數(shù),B表示不屬于c類但包含t的文檔頻數(shù),C表示屬于c類但不包含t的文檔頻數(shù),D表示既不屬于c也不包含t的文檔頻數(shù),則t對于c的CHI值計(jì)算公式:
對于多類問題,分別計(jì)算t對于每個(gè)類別的CHI值,可以用下面兩種標(biāo)準(zhǔn)計(jì)算t對整個(gè)訓(xùn)練集的CHI:
其中m為類別數(shù),從原始特征空間中移除低于特定閾值的詞條,保留高于該閾值的詞條作為文檔表示的特征
特征權(quán)重計(jì)算方法
布爾權(quán)重
均權(quán),布爾權(quán)重是最最簡單的一種賦權(quán)方法,這種方法將所有特征同等看待,既不突出又不抑制任何一個(gè)特征。特征項(xiàng)的權(quán)值或者等于1,或者等于0,計(jì)算公式為:
其中Wi為特征項(xiàng)i的權(quán)重,TF為特征項(xiàng)i出現(xiàn)的次數(shù),這種方法的缺點(diǎn)就是無法體現(xiàn)一個(gè)詞在文本中的重要程度。
TF權(quán)重
TF權(quán)重(Term Frequency)又稱詞頻權(quán)重,或稱特征項(xiàng)頻率。不同類別的文檔,在特征項(xiàng)的出現(xiàn)頻率上有很大差異,因此特征項(xiàng)頻率信息是文本分類的重要參考之一,一般較大的特征項(xiàng)在該類文檔中具有較高的權(quán)重。它的計(jì)算公式為:
實(shí)際應(yīng)用中各類別文本的長度很難一致,各類文本包含的字?jǐn)?shù)、詞數(shù)可能差別會很大,這對詞頻會造成直接影響,因此通常對詞頻作歸一化處理。另外,如果特征選擇后的特征項(xiàng)中含有較多的非名詞(如代詞、數(shù)詞、連詞),而這些詞出現(xiàn)的概率非常高,如果使用TF權(quán)重加權(quán),會賦值給這些詞較高的權(quán)重,這勢必對分類結(jié)果產(chǎn)生不利影響,因此,TF權(quán)重對去停用詞的效果具有較強(qiáng)依賴性。
IDF權(quán)重
IDF越大,此特征項(xiàng)在文檔中的的分布越集中,說明它在區(qū)分該文檔內(nèi)容屬性方面的能力越強(qiáng)。反文檔頻率是特征項(xiàng)在文檔集分布情況的量化。該方法以出現(xiàn)特征詞的文本數(shù)為參數(shù)構(gòu)建的函數(shù)代表特征項(xiàng)的權(quán)重。這體現(xiàn)了信息論中集中度的思想,具有一定的合理性,但忽略了分散度和頻度兩個(gè)因素,因此具有片面性,公式如下:
TFIDF權(quán)重
TFIDF(Term Frequency-Inverse Document Frequency)是由是由Salton在1988年提出的,TFIDF權(quán)重綜合考慮了TF權(quán)重和IFD權(quán)重的優(yōu)點(diǎn)和不足,是目前加權(quán)效果最好的權(quán)重計(jì)算方法,廣泛應(yīng)用于文本處理領(lǐng)域。其基本思想是:如果特征項(xiàng)t在一類文檔的出現(xiàn)的次數(shù)越多,而在整個(gè)文檔集中出現(xiàn)的頻率越低,那么t對分類的作用越大,應(yīng)該賦予越高的權(quán)重,例如,助詞“的”幾乎在每篇文檔中都出現(xiàn),因此它的TF值非常高,相反,IDF值卻非常低,綜合考慮TF和IDF,該詞將被賦予很低的權(quán)重。TFIDF權(quán)重,即TF權(quán)重和IDF權(quán)重的組合,利用了詞頻和文本頻率兩種信息,公式如下:
式中TF為第k個(gè)特征詞在第1篇文本中出現(xiàn)次數(shù),N為訓(xùn)練集中總文本數(shù),nk為出
現(xiàn)第k個(gè)特征詞的文本數(shù),a為一個(gè)經(jīng)驗(yàn)值,一般取0. 01, 0. 1或者1
相似度計(jì)算
向量夾角的余弦
設(shè)文檔A在VSM空間中的向量形式為a(x1,x2,…,xa),文檔B在VSM空間中向量形式為b(y1,y2,…,yb),則A,B文本的向量夾角的余弦表示為
兩個(gè)向量夾角的余弦值越大,表示這兩個(gè)向量的相似度越高
歐氏距離
歐式距離是通過空間向量點(diǎn)之間的距離來表示文本的相關(guān)程度,具體的形式為:
其中d(x,y)是樣本x和y的歐式距離,m是樣本屬性總數(shù),兩個(gè)向量點(diǎn)之間的歐式距離越小,表示兩個(gè)向量的相似度越高,在文本分類領(lǐng)域,使用向量夾角余弦計(jì)算文本相似度的效果,要好于歐式距離
文本分類方法
從文本分類的方法來看,現(xiàn)有的文本分類技術(shù)主要采用三種類型的方法:基于統(tǒng)計(jì)的方法,基于連接的方法和基于規(guī)則的方法。
基于連結(jié)的方法
即人工神經(jīng)網(wǎng)絡(luò),是設(shè)計(jì)來模擬人腦神經(jīng)網(wǎng)絡(luò)的,并期望其能像大腦一樣地運(yùn)作,像大腦一樣地學(xué)習(xí),從而產(chǎn)生智慧。這種方法具有信息分布存放、運(yùn)算全局并行、處理的非線性、容錯(cuò)性等特點(diǎn),適用于學(xué)習(xí)一個(gè)復(fù)雜的非線性映射。但是使用它學(xué)習(xí)所形成的知識結(jié)構(gòu)是人所難以理解的,系統(tǒng)本身對于使用的人來說就象是一個(gè)變魔術(shù)的黑盒子,根據(jù)輸入給出輸出,答案正確但不知道是怎么算出來的。
基于規(guī)則的方法
一種唯理主義方法,本質(zhì)上是一種確定性的演繹推理方法,優(yōu)點(diǎn)在于根據(jù)上下文對確定性事件進(jìn)行定性描述,能充分利用現(xiàn)有的語言學(xué)成果。它成立的前提是有大量的知識,而這些知識是人類專家總結(jié)出來的,至少解釋這些知識的各種“事實(shí)”以及對事實(shí)的解釋“規(guī)則”是專家總結(jié)歸納的。由于必須有人的參與,所以對于知識的可理解性,可讀性非常重視。同時(shí),在不確定性事件的描述,規(guī)則之間的相容性等方面存在一些缺陷和限制。該算法在領(lǐng)域?qū)<业闹R上具有依賴性,分類體系好,錯(cuò)誤率低,but在專業(yè)領(lǐng)域的知識組織和管理中比較實(shí)用,實(shí)現(xiàn)困難,成本高,沒有普遍性,不容易移植等缺點(diǎn)。但是,有些統(tǒng)計(jì)方法無法解決的問題,利用規(guī)則卻很容易解決。常用的基于規(guī)則的方法有決策樹、關(guān)聯(lián)規(guī)則等。
基于統(tǒng)計(jì)的方法
本質(zhì)上是一種非確定性的定量推理方法,定量是基于概率的,因此其必然會掩蓋小概率事件的發(fā)生?;诮y(tǒng)計(jì)的方法是一種經(jīng)驗(yàn)主義方法,其優(yōu)勢在于它的全部知識是通過對大規(guī)模語料庫分析得到的,可以取得很好的一致性和非常高的覆蓋率,對語言處理提供了比較客觀的數(shù)據(jù)依據(jù)和可靠的質(zhì)量保證。常用的基于統(tǒng)計(jì)的方法有Naive Bayes , KNN等。
NaiveBayes算法
貝葉斯分類是統(tǒng)計(jì)學(xué)分類方法,它是一類利用概率統(tǒng)計(jì)知識進(jìn)行分類的算法。在許多場合,樸素貝葉斯(NaiveBayes, NB)分類算法可以與決策樹和神經(jīng)網(wǎng)絡(luò)分類算法相媲美,該算法能運(yùn)用到大型數(shù)據(jù)庫中,且方法簡單、分類準(zhǔn)確率高、速度快。由于貝葉斯定理假設(shè)一個(gè)屬性值對給定類的影響?yīng)毩⒂谄渌鼘傩缘闹?#xff0c;而此假設(shè)在實(shí)際情況中經(jīng)常是不成立的,因此其分類準(zhǔn)確率可能會下降。具體地,設(shè)每個(gè)數(shù)據(jù)樣本用一個(gè)n維特征向量來描述n個(gè)屬性的值,即:X={X1,X2,…,Xn}假定有m個(gè)類,分別用C1,C2,…,Cm表示。給定一個(gè)未知的數(shù)據(jù)樣本X,若樸素貝葉斯分類法將未知的樣本X分配給類C,則一定是:
根據(jù)貝葉斯定律:
由于P(X)對于所有類為常數(shù),最大化后驗(yàn)概率P(Ci |x)可轉(zhuǎn)化為最大化先驗(yàn)概率P(x|Ci)P(Ci)。如果訓(xùn)練數(shù)據(jù)集中有許多屬性和元組,計(jì)算P(x|Ci)的開銷可能非常大,為此,通常假設(shè)各屬性的取值相互獨(dú)立,這樣
先驗(yàn)概率可以從訓(xùn)練數(shù)據(jù)集中求得。根據(jù)此方法,對于一個(gè)位置類別的樣本X,可以分別計(jì)算出X屬于每一個(gè)類別Ci的概率然后選擇其中概率最大的類別作為其類別。
Naive Bayes方法分為最大似然模型(Maximum Likelihood Model )、多項(xiàng)式模型(Multinomial Model )、泊松模型(PoisonModel)等。樸素貝葉斯算法的主要優(yōu)點(diǎn)是:對于文本數(shù)據(jù)和數(shù)值數(shù)據(jù)的分類效果較好,與其他算法相比易于實(shí)現(xiàn)和計(jì)算。主要缺點(diǎn):樸素貝葉斯算法成立的前提是各屬性之間相互獨(dú)立 ,當(dāng)數(shù)據(jù)集滿足這種獨(dú)立性假設(shè)時(shí),分類的準(zhǔn)確度較高,否則可能較低。
KNN算法
KNN算法最初由Cover和Hart于1986年提出,該算法的基本思想:根據(jù)傳統(tǒng)的向量空間模型,文本內(nèi)容被形式化為特征空間中的加權(quán)特征向量,即D=D(T1,W1;T2,W2;…;Tm,Wm)。對于測試文本,計(jì)算它與訓(xùn)練樣本集中每個(gè)文本的相似度,找出K個(gè)最相似的文本,根據(jù)加權(quán)距離和判斷測試文本所屬的類別。具體算法步驟如下:
對于一個(gè)測試文本,根據(jù)特征詞形成測試文本向量
計(jì)算該測試文本與訓(xùn)練集中每個(gè)文本的文本相似度:
式中di為測試文本的特征向量,dj為第j類的中心向量;M為特征向量的維數(shù);Wk為向量的第k維。k的值的確定一般先采用一個(gè)初始值,然后根據(jù)實(shí)驗(yàn)測試K的結(jié)果調(diào)整K值,一般初值設(shè)定為幾十到幾百
按照文本相似度,在訓(xùn)練文本集中選出與測試文本最相似的k個(gè)文本
在測試文本的k個(gè)近鄰中,依次計(jì)算每類的權(quán)重,計(jì)算公式
x為測試文本的特征向量;Sim(x,di)為相似度計(jì)算公式;b為閾值,有嗲與優(yōu)化選擇;而y(di,cj)的取值為1或者0,如果di屬于cj,則函數(shù)值為1,否則為0
比較類的權(quán)重,將文本分到權(quán)重最大的那個(gè)類別
也就是說,如果在這k個(gè)文檔中,有多個(gè)文檔同屬于一個(gè)類,則該類的分值為這些文檔與測試文檔之間的相似度之和。對這k個(gè)文檔所屬類的分值統(tǒng)計(jì)完畢后,即按分值進(jìn)行排序。
類中心向量法
類中心向量法的算法思想非常簡單:將每一類別文本訓(xùn)練后得到該類別的中心向量Cj(W1,W2,…,Wj)分類時(shí),將待分類文本T表示成n維向量的形式T(W1,W2,…,Wn)然后,計(jì)算文本T與每類中心向量的相似度,相似度計(jì)算可以采用向量夾角的余弦或是歐氏距離表示,將T歸類為與其相似度最大的類中:
類中心的選擇有三種方式:平均中心、和平均、歸一化平均。和中心是某一類別中所有向量相加之和:
將和中心與該類向量的個(gè)數(shù)相除得到類別的平均中心:
而采用二范數(shù)對平均中心歸一化處理得到歸一化中心:
類中心向量法的優(yōu)點(diǎn)是對訓(xùn)練集進(jìn)行了最大程度的裁剪,待分類文本只需與極少的類中心向量對比,就可以將其分類,因此訓(xùn)練和分類速度很快。缺點(diǎn)是分類精度受類別的分布影響較大,當(dāng)類別分布均勻,邊界清晰時(shí),分類精度較高;當(dāng)類別分布不平衡,邊界模糊時(shí),分類的效果不好。
SVM算法
支持向量機(jī)SVM(Support Vector Machines)是Vapnik等人提出的一種基于統(tǒng)計(jì)學(xué)習(xí)理論的機(jī)器學(xué)習(xí)方法。SVM建立在統(tǒng)計(jì)學(xué)理論的VC理論和結(jié)構(gòu)風(fēng)險(xiǎn)最小化原理基礎(chǔ)上,其基本思想是:使用簡單的線形分類器劃分樣本空間,如果一個(gè)訓(xùn)練集中的矢量被一個(gè)超平面正確地線性分割,且距離超平面最近的矢量之間的距離最大,則稱該超平面為最佳超平面,其中距離超平面最近的對決策面設(shè)計(jì)起作用的點(diǎn)稱為支持向量(Support Verctors)。支持向量機(jī)在解決小樣本,非線性及高維模式識別問題等方面表現(xiàn)出明顯的優(yōu)勢。
SVM的基本思想可用圖3-1的兩維情況來說明。圖中,實(shí)心點(diǎn)和空心點(diǎn)代表兩類樣本,H為分類線,H1, H2分別為過各類中離分類線最近的樣本且平行于分類線的直線,它們之間的距離叫做分類間隔(margin)。所謂最優(yōu)分類線就是要求分類線不但能將兩類正確分開(訓(xùn)練錯(cuò)誤率為0),而且使分類間隔最大。
支持向量機(jī)主要優(yōu)點(diǎn):對高維、稀疏數(shù)據(jù)不敏感,更好的捕捉了數(shù)據(jù)的內(nèi)在特征,準(zhǔn)確率高;缺點(diǎn):對于非線性問題,核函數(shù)選擇較為困難,分類結(jié)果召回率較低
訓(xùn)練樣本在各個(gè)類別中分布的不均勻性對許多分類器會形成噪聲。例如:在Bayes模型中,如果先驗(yàn)分布無法確定,“均勻分布”是符合信息論的最大嫡原則( Maximum Entropy)的;對于KNN和SVM分類器,遠(yuǎn)離類別邊界的樣本往往對分類沒有什么作用,KNN分類器還會因?yàn)轭悇e邊界部分樣本分布的不均勻而造成測試樣本的錯(cuò)分。從候選訓(xùn)練樣本集中選擇合適的訓(xùn)練樣本子集,不僅可以減少分類器的學(xué)習(xí)時(shí)間,甚至可以提高分類器的準(zhǔn)確性。四種方法的實(shí)驗(yàn)結(jié)果比較:
可以看出支持向量機(jī)具有最好的分類效果,各項(xiàng)指標(biāo)全面領(lǐng)先于其他分類算法。KNN分類效果僅次于支持向量機(jī),而類中心向量法也有很好的分類表現(xiàn),貝葉斯的分類效果最差,與其它三種算法相比有較大差距。在追求分類效率而對分類精度要求不高的領(lǐng)域,可以考慮使用類中心向量分類法,可以極大提高分類的效率;在對對分類精度要求較高時(shí),可以采用SVM或KNN分類法。
分類結(jié)果評估
單標(biāo)注分類問題
文檔分類中普遍使用的性能評估指標(biāo)有查全率(Recall,簡記為:r)、查準(zhǔn)率(C Precision,
簡記為P)。對于文檔類中的每一個(gè)類別,使用列聯(lián)表(Contingency Table )來計(jì)算查全率和查準(zhǔn)率。
Tables
真正屬于該類的文檔數(shù)
真正不屬于該類的文檔數(shù)
判斷為屬于該類的文檔數(shù)
a
b
判斷為不屬于該類的文檔數(shù)
c
d
這時(shí),r和P分別定義為:
宏平均and微平均
用列聯(lián)表只能評價(jià)單個(gè)類的分類性能,如果要對分類的整體性能進(jìn)行評價(jià),通常使用宏
平均 < Macro-Averaging)和微平均 ( Micro-Averaging )。宏觀平均是先對每一個(gè)類統(tǒng)計(jì)r、p值,然后對所有的類求r、P的平均值,即
微觀平均是先建立一個(gè)全局列聯(lián)表,然后根據(jù)這個(gè)全局列聯(lián)表進(jìn)行計(jì)算,即:
顯然,宏平均是對類的平均,所以容易受小類的影響,而微平均則是對文檔的平均,容易受到大類的影響。
平衡點(diǎn)(Break-even Point )
對于分類系統(tǒng)來說,r和p值是互相影響的。提高r會引起p的減小,反之亦然。因此,
為了更全面地反映分類系統(tǒng)的性能,一種做法是選取和p相等時(shí)的值來表征系統(tǒng)性能,這個(gè)值叫做平衡點(diǎn)(Break-even Point,簡稱BEP)值。當(dāng)然,有時(shí)通過測試可能得不到和p相等的值。這時(shí)取最接近的和p值的平均值作為BEP值,稱為插值BEP
F值(F-measure )
另一種常用的將查全率和查準(zhǔn)率結(jié)合起來的性能評價(jià)方法是F測量,其計(jì)算公式為:
其中,β是一個(gè)用來調(diào)節(jié)查全率和查準(zhǔn)率權(quán)重的參數(shù)。β一般取值為1,公式轉(zhuǎn)化為:
顯然,BEP是F1的特殊形式,因?yàn)楫?dāng)r=p時(shí),有F1 =BEP
多標(biāo)注分類問題
每一個(gè)輸入的測試文檔,都會返回一個(gè)排序后的文檔類列表。這時(shí),兩個(gè)指標(biāo)分別定為:
整個(gè)分類器的評估應(yīng)該是對所有測試文檔的這兩個(gè)指標(biāo)的統(tǒng)計(jì)平均。通常使用的統(tǒng)計(jì)平均為11點(diǎn)插值平均查準(zhǔn)率(Interpolated 11-point Average Precision )
文本可視化
標(biāo)簽云:經(jīng)典的靜態(tài)可視化分析,Wordle:將關(guān)鍵詞或者標(biāo)簽生成為一個(gè)可視化的詞云
ThemeRiver:動態(tài)文本可視化,TIARA:參考了wordle的源碼實(shí)現(xiàn)了系統(tǒng)中的文本靜態(tài)可視化
CiteSpace:以可視化技術(shù)針對科學(xué)論文以及引文進(jìn)行網(wǎng)絡(luò)分析的軟件
總結(jié)
以上是生活随笔為你收集整理的ig信息增益 java_文本分类综述的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: java并发策略_Java并发(六):并
- 下一篇: java如何实现redis分片存储_面试