中國人民大學(xué)附屬中學(xué) 葛恭豪
上個世紀(jì)五十年代,人工智能的概念首先在Dartmouth學(xué)會上被提出,之后卻由于眾多技術(shù)的限制而未能得到很好的發(fā)展。自進(jìn)入21世紀(jì),人工智能進(jìn)展飛速。Siri、AlphaGo等眾多新事物進(jìn)入了人們的生活,人工智能也逐漸成為普通人生活的一部分。
NB分類器是線性分類器,它以貝葉斯定理為依據(jù),時間效率高,常用于大規(guī)模數(shù)據(jù)處理。貝葉斯定理即根據(jù)先驗概率求后驗概率,表達(dá)式為:
可預(yù)測未知樣本x所屬類別的可能性,選擇其中可能性大的作為x的類。
KNN是線性分類方法,簡單高效。它找出未知樣本x周圍最近的k個樣本作為近鄰,針對這k個樣本,將x歸類為多于k/2數(shù)量樣本的類。
LR是一種十分強大的線性分類算法,它根據(jù)LR模型對數(shù)據(jù)進(jìn)行處理,它可以處理有多個解釋變量的數(shù)據(jù)。LR處理數(shù)據(jù)時先建立二項式模型,再進(jìn)行概率估計。
DT可用于回歸預(yù)測,處理數(shù)據(jù)時,它會構(gòu)建一種非常直觀的樹狀結(jié)構(gòu)對樣本進(jìn)行分類,依特征對樣本分類,目標(biāo)是構(gòu)建最優(yōu)的決策樹。DT算法系統(tǒng)化、結(jié)構(gòu)化,可找出屬性和類別之間的關(guān)系,并預(yù)測出未知類別。
RF處理數(shù)據(jù)時,會通過矩陣創(chuàng)建多棵決策樹,將數(shù)據(jù)投入決策樹中。決策樹分類后,依據(jù)被預(yù)測最多的類屬決定最終分類結(jié)果。
GBDT是基于決策樹的線性回歸算法,與隨機森林類似,由多棵決策樹組成,處理結(jié)果為多棵決策樹結(jié)果。GBDT中的決策樹是回歸樹,因此常被用于回歸預(yù)測方面。
SVM是一種非線性的機器學(xué)習(xí)算法,它旨在尋找一個超平面,將訓(xùn)練數(shù)據(jù)分開。根據(jù)結(jié)構(gòu)風(fēng)險最小化準(zhǔn)則計算,使兩類數(shù)據(jù)邊緣部分垂直于超平面的距離最大時,成為最優(yōu)超平面。通過構(gòu)造最優(yōu)超平面,SVM能夠高精度地處理數(shù)據(jù)。
ANN是近年的研究熱點,它是一種類似于生物神經(jīng)網(wǎng)絡(luò)的非線性算法,由多個類似于神經(jīng)元的單元組成。ANN基于風(fēng)險最小化原則,所以有些缺陷,比如易陷入局部極小等。
(1)精確率與召回率
(3)ROC曲線和AUC
ROC曲線適用于二分類問題,它描述了分類器分類正確的正樣本個數(shù)占總正樣本個數(shù)的比例。ROC曲線下的面積越大則分類器效果越好。AUC指的是ROC曲線下的面積,AUC的值就是ROC曲線下部分的面積大小。
(4)支持度和置信度
數(shù)據(jù)集選用MNIST手寫數(shù)字?jǐn)?shù)據(jù)集,數(shù)據(jù)集分訓(xùn)練集和測試集,用于訓(xùn)練模型和檢測結(jié)果。其中訓(xùn)練集有60000樣本,測試集為10000樣本,維度為784。
MNIST訓(xùn)練集由SD-3的30,000個模式和來自SD-1的30,000個模式組成。這60,000個模式訓(xùn)練集包含大約250位作家的手寫用例。
常用的機器學(xué)習(xí)分類算法中,屬于線性的有NB、LR,非線性的有DT、RF。實驗的目的是對比它們的時間效率、準(zhǔn)確率的情況,得出相應(yīng)的結(jié)論。
基于MNIST數(shù)據(jù)集,選用pycarm和anaconda平臺,調(diào)用python的sklearn包里的機器學(xué)習(xí)算法作測試,然后對比分析。
kNN、LR、RF、SVM、GBDT準(zhǔn)確率都相對較高,從時間效率看,SVM、GBDT時間成本大,這樣就顯示出kNN、LR和RF的輕便。而NB時間效率最高,但準(zhǔn)確率83.69%較低。
表1 時間和準(zhǔn)確率對比
RF的時間效率高,準(zhǔn)確率也高;DT結(jié)構(gòu)簡單,但處理數(shù)據(jù)的準(zhǔn)確率和時間效率都不高;SVM和GBDT準(zhǔn)確率都高,說明非線性算法擬合數(shù)據(jù)后處理效果好,處理時間分別是3682.412秒和7036.34秒。
原理上,NB算法簡單,基于貝葉斯定理對樣本的類別進(jìn)行預(yù)測,時間效率高,快過其它,但準(zhǔn)確度不高。kNN是尋找未知樣本周圍的樣本,并依據(jù)周圍樣本的分類對未知樣本進(jìn)行分類。因而它比NB計算量大,時間效率低。kNN相比它非線性算法較快,準(zhǔn)確率高。
LR算法的準(zhǔn)確率為91.98%,比NB、DT高,但比其它算法低。它運行時間為80.523秒,因為計算量較大,比其它線性分類算法慢,但比SVM和GBDT快。綜合分析,線性分類算法優(yōu)勢在于時間效率高,非線性的結(jié)果更好,能更好地擬合數(shù)據(jù)。究其原因,在于線性分類算法對特征的依賴較多,它要求數(shù)據(jù)的特征線性可分,線性分類算法時間效率高。
線性分類算法需要更多的數(shù)據(jù)預(yù)處理工作,預(yù)先選擇特征、變換特征或者組合特征,使得特征可區(qū)分。而非線性分類算法相當(dāng)于集成了數(shù)據(jù)的預(yù)處理工作,通過自身的建模,對非線性數(shù)據(jù)也能展示良好的處理性能。
本文介紹了8種常用的機器學(xué)習(xí)算法和11種效果評估指標(biāo)。不同算法在相同的環(huán)境內(nèi)的效果也都不一樣。用來評價算法效果的方法有很多種,各種方法反映出各種算法的優(yōu)缺點也各不相同。
通過實驗對比不同的算法在基于MNIST數(shù)據(jù)集的情況下的準(zhǔn)確度和時間效率。如果繼續(xù)研究,可以選取更多的算法,并使其基于更多的數(shù)據(jù)集,例如Car Evaluation、Wine、Adult等。如果想要獲得更全面的實驗結(jié)果,可以用更多的機器學(xué)習(xí)評價指標(biāo)對實驗進(jìn)行評估。
[1]張曉芳,張磊.論機器學(xué)習(xí)及其在教育中的應(yīng)用[J].信息與電腦:理論版,2015(24):165-166.