【摘要】 討論了在中草藥數據分類應用中兩種分類器算法filteredclassifier和adaboostM1的分類性能的問題,在weka平臺上實驗可知,這兩種分類器算法中adaboostM1的分類精度比較高。
【關鍵詞】 中草藥 AdaBoostM1 weka
一、概述
傳統(tǒng)的單分類器算法在草藥數據的分類應用是以前比較流行的方法,但隨著研究的深入,研究人員發(fā)現單分類器對不同的數據有不同的偏向性,無法滿足同時對不同數據的分類需求,adaboostM1是一種組合分類器算法,該算法用組合的思想來彌補單分類器算法的不足,filteredclassifier分類器算法是在WEKA平臺上的一種傳統(tǒng)的單分類器算法。本文首先在weka平臺上用兩種分類器算法對草藥數據集進行分類,然后再對這兩種算法的分類精度進行對比,實驗表明:在實驗數據集為輸入樣本集的情況下,AdaboostM1算法的分類精度比較高。
二、AdaBoost 算法介紹
1988 年,Kearns 等在研究 PAC 學習模型時提出了一個有趣的問題:弱可學習是否等價于強可學習,即 Boosting 問題,如果這一問題有肯定的回答,意味著只要找到比隨機猜測略好的弱學習算法,就可以將其提升為強學習算法,而不必直接去尋找通常情況下很難獲得的強學習算法,這對學習算法的設計有著重要的意義。在更深入的研究中,Freund 等發(fā)現:在線分配問題與 Boosting 問題之間存在著很強的相似性,引入在線分配算法的設計思想,有助于設計出更實用的 Boosting 算法,他們將加權投票的相關研究成果與在線分配問題結合,并在 Boosting 問題框架下進行對應推廣,得到了著名的 AdaBoost算法,該算法不再要求預知弱學習算法的任何先驗知識,在實踐中獲得了極大的成功[1]。
三、在Weka上用AdaBoost算法及幾種單分類算法對草藥數據進行分類
本文所進行的實驗在Weka3-7-1平臺上完成,用三種草藥三七、人參、西洋參的指紋圖譜數據作為實驗的數據集。本實驗采用的方法是對輸入數據集采用5重交叉驗證,取其分類精度為的分類性能,分類精度越高表示分類效果越好。
filteredclassifier的參數設置如下:
Filter為discretize,基分類器為decisionstump,其他的為默認參數設置。
AdaboostM1的參數設置如下:
基分類器為decisionstump,numiteration為10,seed為1,weightThresold為100。
之后執(zhí)行RUN界面的START指令,再進入ANALYSE界面載入文件選擇分析分類精度,可得到這些算法的平均分類精度如表1所示。
四、實驗結果與分析
從表1可以看出,對實驗輸入的中草藥數據集分類中,AdaBoostM1算法的分類精度大于classificationviaregression算法的分類精度。
五、結論
綜上所述,在中草藥分類領域,在與classificaitnoviaregression算法比較下,可以用AdaBoostM1算法來提高傳統(tǒng)單分類器算法的分類性能,從而給了我們一個啟發(fā),即可以使用AdaBoostM1算法來進行草藥數據集的分類以達到高的精度。
參 考 文 獻
[1] 曹瑩,苗啟廣,劉家辰,高琳. AdaBoost算法研究進展與展望[J]. 自動化學報,2013,06:745-758