數據倉庫與及數據挖掘文本分類實驗報告_第1頁
數據倉庫與及數據挖掘文本分類實驗報告_第2頁
數據倉庫與及數據挖掘文本分類實驗報告_第3頁
數據倉庫與及數據挖掘文本分類實驗報告_第4頁
數據倉庫與及數據挖掘文本分類實驗報告_第5頁
已閱讀5頁,還剩11頁未讀 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

2015-2016學年第1學期實驗報告課程名稱:數據倉庫與及數據挖掘實驗名稱:文本的分類實驗完成人:姓名:學號:日期:2015年12月實驗一:文本的分類實驗目的掌握數據預處理的方法,對訓練集數據進行預處理;掌握文本建模的方法,對語料庫的文檔進行建模;掌握分類算法的原理,基于有監(jiān)督的機器學習方法,訓練文本分類器;利用學習的文本分類器,對未知文本進行分類判別;掌握評價分類器性能的評估方法實驗分工獨立完成實驗環(huán)境基于Windows平臺,使用eclipse開發(fā)。主要設計思想實驗工具介紹Eclipse:一個開放源代碼的/基于Java的可擴展開發(fā)平臺。就其本身而言,它只是一個框架和一組服務,用于通過插件組件構建開發(fā)環(huán)境。Eclipse最早是由IBM開發(fā)的,后來IBM將Eclipse作為一個開放源代碼的項目發(fā)布。現在Eclipse在協(xié)會的管理與指導下開發(fā)。特征提取與表達方法的設計在此次實驗中,我考慮了CHI特征提取的方法來建立數據字典。詳細步驟見5.3描述。根據CHI特征提取,最終建立成數據字典,數據字典記錄在目錄E:\DataMiningSample\docVector下的allDicWordCountMap.txt文檔中。最終的特征向量表達方式為:文檔類別標識_單詞詞頻。如:alt.atheism_abstact1.0。其中alt.atheism為此文本所屬的類別,abstact為對應的單詞,1.0為該單詞的詞頻數。分類算法的選擇本次實驗使用的是樸素貝葉斯分類算法,樸素貝葉斯法是基于貝葉斯定理與特征條件獨立假設的分類方法。樸素貝葉斯分類器基于一個簡單的假定:給定目標值時屬性之間相互條件獨立。即:樸素貝葉斯模型:屬于V集合,其中Vmap是給定一個example得到的最可能的目標值,a1…an是這個example里面的屬性。這里面,Vmap目標值就是后面計算得出的概率最大的一個,所以用max來表示。貝葉斯公式應用到中可得到,又因為樸素貝葉斯分類器默認a1…an他們互相獨立,所以對于結果沒有用處。因為所有的概率都要出同一個東西之后再比較大小,對最后結果沒有影響。可得到。盡管是帶著這些樸素思想和過于簡單化的假設,但樸素貝葉斯分類器在很多復雜的現實情形中仍能夠取得相當好的效果。2004年,一篇分析貝葉斯分類器問題的文章揭示了樸素貝葉斯分類器取得看上去不可思議的分類效果的若干理論上的原因。盡管如此,2006年有一篇文章詳細比較了各種分類方法,發(fā)現更新的方法(如boostedtrees和隨機森林)的性能超過了貝葉斯分類器。樸素貝葉斯分類器的一個優(yōu)勢在于只需要根據少量的訓練數據估計出必要的參數(變量的均值和方差)。由于變量獨立假設,只需要估計各個變量的方法,而不需要確定整個協(xié)方差矩陣。性能評估方法本次實驗我使用了準確率(P),召回率(R)和F1-Score來評價分類結果。下面通過表4.1具體解釋一下這三種性能評估方法的計算公式。表4.1預測結果和實際情況0-1狀態(tài)圖實際情況1代表真實情況此類,0表示不屬于預測結果1代表預測屬于此類0代表預測不屬于此類101TruepositiveFalsepositive0FalsenegativeTruenegativeP=Truepositive/(Truepositive+Falsepositive)R=Truepositive/(Truepositive+Falsenegative)F1-Score=(2*P*R)/(P+R)在此實驗中,我通過準確率、召回率和F1-Score這三個性能評估方法對最后的結果進行了詳細的分析。關于結果分析的詳細描述見5.6。實驗過程文本分類語料庫的采集本實驗的語料庫是下載網上現成的英文文本語料庫的,該語料庫的類別有20類,分別為:alt.atheism,comp.graphics,comp.os.ms-windows.misc,comp.sys.ibm.pc.hardware,comp.sys.mac.hardware,comp.windows.x,misc.forsale,rec.autos,rec.motorcycles,rec.sport.baseball,rec.sport.hockey,sci.crypt,sci.electronics,sci.med,sci.space,soc.religion.christian,talk.politics.guns,talk.politics.mideast,talk.politics.misc,talk.religion.misc,其中每個分類有九千多文檔,整個語料庫有1萬8千多文件?,F在需要將這1萬8千多文件分配成訓練集和測試集,為了排除人為因素的干擾,和便于操作的效果,我編寫了一個TextClassificationofRandom類來實現將語料庫中20個分類都隨機均分成訓練集和測試集,這樣我們就形成了訓練集和測試集的數據。在后期實驗過程中,通過多次隨機生成訓練集和測試集來進行實驗,獲得更詳細精確的數據。詳細步驟和結果見后面分析。數據預處理(1)對所有英文文件進行英文詞法分析,去除數字、連字符、標點符號、特殊字符,所有大寫字母轉換成小寫字母,實現方法是通過正則表達式:Stringres[]=line.split("[^a-zA-Z]");(2)接著去停用詞,過濾對分類無價值的詞。結果保存在源文件對應文件.out里面。(3)第三步是找詞根,將詞根還原,并分別將每一類的所有文件的單詞進行匯總,同時記錄每個單詞的詞頻,最終得到源文件對應文件.outstemed里面。特征提取和表達首先我先解釋一下CHI特征提取公式的意義:CHI特征提?。涸诖斯街校兞康暮x如下所示:N:所有文檔的數目A:在該分類下,包含此單詞的文檔數量B:不在該分類下,包含此單詞的文檔數量C:在該分類下,不包含此單詞的文檔數量D:不在該分類下,不包含此單詞的文檔數量由于最后,只需要根據CHI的卡方值進行排序,為了簡化運算,對公式做了簡單的簡化處理:簡化后的計算方法為:,因為在排序的步驟中,N,(A+C),(B+D)都不會對最后的排序造成影響,所以這樣的簡化處理是合理的。計算每個單詞的CHI值,降序排序后,分別取每一類的排序前2000個單詞,經過匯總,去重,得到最終的數據字典,一共是32060個單詞。根據數據字典,將每篇訓練集文件和測試集文件轉換成特征向量。結果保存在源文件對應文件.outstemedspecial里面。訓練過程在本次實驗中,我做了5組實驗,每組實驗又分為兩個相對應的實驗。因為我借鑒了交叉檢驗的思想,一開始我將整個數據集隨機分成訓練集和測試集兩份,相當于2折交叉檢驗,再顛倒過來將訓練集作為測試集,測試集作為訓練集。這樣整個過程算是一組實驗,然后再將整個數據集隨機分成訓練集和測試集,重復上面步驟,最終進行了5組10次實驗,利用這10次的結果的均值來對算法精度作估計。以求達到更精確的評估。這里我就簡單介紹一次實驗的訓練過程:(1)首先,我為了避免對文件的直接操作,可以將訓練集文本的路徑進行匯總,匯總的方法是通過命令提示符,轉到源數據20類文件夾的目錄文件下,輸入dir/s/b/l*>aaa.lst,回車,這樣,源數據20類文件夾下面出現一個aaa.lst文件,用寫字板打開文件,將前面幾行非源數據文件絕對路徑的數據刪掉。最后得到如圖5.1的aaa.lst文件。圖5.1aaa.lst部分內容示意圖(2)然后,通過java的文件操作FileReaderfileReader=newFileReader("E:/DataMiningSample/orginSample/aaa.lst");以及后面等一系列操作,不具體描述,在Eclipse中運行TextClassificationofRandom類后,在E:\DataMiningSample\docVector目錄下,生成兩個文件,一個是記錄訓練數據絕對路徑的文件,一個是記錄測試數據絕對路徑的文件。(3)將記錄訓練數據絕對路徑的文件的絕對路徑,作為TrainMain類的參數,運行來訓練樣本的特征,首先計算每個類別出現的特征詞數,將結果保存在NBTrain工程下的cateWordsNum.txt文件中,保存方式為:類別+空格+次數。再計算某單詞在某類別中出現的次數,將結果保存在NBTrain工程下的cateWordsProb.txt文件中,保存方式為:類別_單詞+空格+詞數。最后,計算所有類別的總次數,將結果保存在NBTrain工程下的totalWordsNum.txt文件中。這樣我們就得到最后的訓練模型。測試過程通過上述步驟,我們得到四個文件,即記錄測試數據絕對路徑的文件,cateWordsNum.txt,cateWordsProb.txt,totalWordsNum.txt,我們將這四個文件的絕對路徑作為TestMain類的參數,運行,通過樸素貝葉斯的算法,得到每個文件屬于每個類的后驗概率,取其中最大值,作為文件最終被分到的類別,并將數據以文件絕對路徑+空格+類別的形式輸出到NBTest工程下的classifyResultNew11.txt文件中,方便后期的實驗數據統(tǒng)計。實驗結果和性能評估最后實驗結果用混淆矩陣來記錄,由于我一共做了十次實驗,這里就不一一列舉,我拿第一次的實驗結果來展示一下(后面數據均展示第一次實驗結果),完整的實驗結果記錄在E:\DataMiningSample\docVector\五組實驗數據目錄下的分類結果.xlsx文件下。第一次實驗結果的混淆矩陣如圖5.2所示。圖5.2樸素貝葉斯分類結果-混淆矩陣表示上面混淆矩陣的每一列代表了預測類別,每一列的總數表示預測為該類別的數據的數目;每一行代表了數據的真實歸屬類別,每一行的數據總數表示該類別的數據實例的數目,每一列中的數值表示真實數據被預測為該類的數目。其中第一行第一列的370表示有370個實際歸屬第一類的實例被預測為第一類,同理,第五行第一列的1表示有1個實際歸屬第一類的實例被錯誤預測為第五類。同時本文通過正確率、召回率和F1-Score這三個性能評估方法來評價分類結果。在十次實驗過程中,每次都會得到各20類分別對應的正確率、召回率和F1-Score值,在本文給出第一次實驗得出的數據,如表5.1所示。表5.1第一次實驗各20類對應正確率、召回率和F1-Score值正確率召回率F1-Score第01類0.86450.89810.881第02類0.58790.85310.6961第03類0.79050.72070.754第04類0.74080.7260.7333第05類0.93520.69460.7971第06類0.76720.85120.8071第07類0.91610.51970.6631第08類0.9360.86710.9002第09類0.95150.96320.9573第10類0.98490.91770.9501第11類0.93970.97770.9583第12類0.93090.93090.9309第13類0.83970.79720.8179第14類0.86270.92920.8947第15類0.89420.9470.9199第16類0.84560.9470.8934第17類0.79810.93850.8626第18類0.83240.98730.9033第19類0.83530.88380.8589第20類0.95510.5120.6667總體86.04%84.31%84.23%通過上表,可以發(fā)現第2類的正確率、第7類的召回率和第20類的召回率均低于60%,和其他實驗數據有較大差別,同時第2類,第7類和第20類的F1-Score值都低于70%,這些都值得我們去仔細分析。為更形象的看出上表的數據特性,通過上表數據建立成3維柱形圖,如圖5.3所示。圖5.3第一次實驗各20類對應評估性能分布圖通過上圖可以很明顯看出第2類,第7類和第20類的數據有明顯差異,評價性能不好。為更精確的評估該分類器的性能,下面給出10次實驗,各20類對應的平均正確率、平均召回率和平均F1-Score,見表5.2.表5.210次實驗各20類對應數據指標平均正確率平均召回率平均F1-Score第01類0.88870.88670.8871第02類0.68660.79830.7303第03類0.75960.74760.7516第04類0.77340.72350.7471第05類0.89320.73480.8042第06類0.77570.85700.8135第07類0.90310.55520.6870第08類0.91370.89440.9038第09類0.95900.94040.9495第10類0.97480.92620.9499第11類0.94940.97780.9633第12類0.87770.95740.9152第13類0.85260.78700.8180第14類0.87870.94370.9099第15類0.86090.95320.9036第16類0.84190.94780.8914第17類0.84630.93880.8896第18類0.85770.98750.9176第19類0.84030.87970.8592第20類0.93250.59260.7227總體86.33%85.

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論