【摘要】 討論了在中草藥數(shù)據(jù)分類應(yīng)用中兩種分類器算法classificatinviaregression 和adaboostM1的分類性能的問題,在weka平臺(tái)上實(shí)驗(yàn)可知,這兩種分類器算法中adaboostM1的分類精度比較高。
【關(guān)鍵詞】 中草藥 AdaBoostM1 分類器
一、概述
傳統(tǒng)的單分類器算法對(duì)于草藥數(shù)據(jù)的分類應(yīng)用有很多,但是每個(gè)單分類器算法對(duì)于不同的草藥數(shù)據(jù)的分類性能不同,都有一定的偏向,研究人員開始嘗試用組合分類器的方式來彌補(bǔ)單分類器算法的缺點(diǎn),從而提高傳統(tǒng)單分類器的分類性能。本實(shí)驗(yàn)用目前應(yīng)用廣泛的adaboostM1算法,與在WEKA平臺(tái)中的一種單分類器算法classificationviaregression進(jìn)行比較,驗(yàn)證組合分類器算法的分類性能是否比單分類器算法的好。本文首先在weka平臺(tái)上用兩種分類器算法對(duì)草藥數(shù)據(jù)集進(jìn)行分類,然后再對(duì)這兩種算法的分類精度進(jìn)行對(duì)比,實(shí)驗(yàn)表明:在實(shí)驗(yàn)數(shù)據(jù)集為輸入樣本集的情況下,AdaboostM1算法的分類精度比較高。
二、AdaBoost 算法介紹
AdaBoostM1[1]算法:輸入.訓(xùn)練樣本集S〈(x,y)…(x,y)〉。迭代次數(shù) T,弱分類器 WeakLearn。
初始化:樣本權(quán)值,w=D(i),i=1,…,m
(1)for t=1,……,T
(2)產(chǎn)生分布pt=wt/∑w
(3)基于分布pt調(diào)用 WeakLearn,得到假設(shè):ht:X→[0,1]
(4)計(jì)算假設(shè)ht的錯(cuò)誤率: εt=∑pht(xi)-yi
(5)計(jì)算βt=εt/(1-εt)
(6)更新w=w×β
(7)end
輸出.
當(dāng)
1ogh(x)≥
1og 時(shí)Hf(x)為1,否則Hf(x)為0。
三、在Weka上用AdaBoost算法及幾種單分類算法對(duì)草藥數(shù)據(jù)進(jìn)行分類
本文所進(jìn)行的實(shí)驗(yàn)在Weka3-7-1平臺(tái)上完成,用三種草藥三七、人參、西洋參的指紋圖譜數(shù)據(jù)作為實(shí)驗(yàn)的數(shù)據(jù)集。采用對(duì)輸入的數(shù)據(jù)集5重交叉驗(yàn)證的方式,取其分類精度為分類性能,分類精度越高表示分類效果越好。
classificationviaregression的參數(shù)設(shè)置如下:
基分類器為decisionstump,其他的為默認(rèn)參數(shù)設(shè)置。
AdaboostM1的參數(shù)設(shè)置如下:
基分類器為decisionstump,numiteration為10,seed為1,weightThresold為100。
之后執(zhí)行RUN界面的START指令,再進(jìn)入ANALYSE界面載入文件選擇分析分類精度,可得到這些算法的平均分類精度如表1所示。
四、實(shí)驗(yàn)結(jié)果與分析
從表1可以看出,在實(shí)驗(yàn)的中草藥數(shù)據(jù)集中,AdaBoostM1算法的分類精度大于classificationviaregression算法的分類精度。
五、結(jié)論
綜上所述,在中草藥分類領(lǐng)域,在與classificaitnoviaregression算法比較下,可以利用AdaBoostM1算法來提高傳統(tǒng)分類器算法的分類精度,使用AdaBoostM1算法來進(jìn)行草藥數(shù)據(jù)集的分類以達(dá)到高的精度。