Q:怎樣評(píng)估一個(gè)學(xué)習(xí)算法訓(xùn)練出來(lái)的學(xué)習(xí)器的效果好壞温艇?
評(píng)估學(xué)習(xí)器的基本要求是:
學(xué)習(xí)器誤差越小越好。對(duì)于分類任務(wù)幔戏,分類錯(cuò)誤的樣本數(shù)占總樣本數(shù)的比率越小越好啼器。對(duì)于回歸預(yù)測(cè)旬渠,預(yù)測(cè)值與真實(shí)值的差越小越好。
學(xué)習(xí)器泛化能力越強(qiáng)越好端壳。也就是說(shuō)學(xué)習(xí)能力不僅在訓(xùn)練樣本上要表現(xiàn)好告丢,在新的樣本上的表現(xiàn)也要好。不能像書(shū)呆子一樣在學(xué)校表現(xiàn)很好损谦,但一進(jìn)入社會(huì)就一塌糊涂岖免。
因此岳颇,評(píng)估一個(gè)學(xué)習(xí)器,我們通常首先要衡量它的泛化誤差颅湘,也就是一個(gè)訓(xùn)練好的學(xué)習(xí)器在新樣本上的誤差表現(xiàn)话侧。
Q:當(dāng)只有一個(gè)數(shù)據(jù)集,并且既要訓(xùn)練闯参,又要測(cè)試的時(shí)候瞻鹏,怎么辦?
可以想象人類學(xué)生的做法鹿寨。當(dāng)人類學(xué)生準(zhǔn)備高考新博、或者考研、或者其他考試的時(shí)候脚草,刷題總是必不可少的學(xué)習(xí)過(guò)程赫悄。當(dāng)我們只有一套試卷的時(shí)候,我們總是用一部分試卷來(lái)學(xué)習(xí)(也就是一邊做題馏慨,一邊翻書(shū)埂淮,通過(guò)做題來(lái)梳理知識(shí)和查缺補(bǔ)漏),然后另外一部分試卷用來(lái)真正地測(cè)試自己的能力(全程做題熏纯,做完再對(duì)答案)同诫。機(jī)器學(xué)習(xí)的做法也一樣粤策。
留出法:當(dāng)只有一個(gè)數(shù)據(jù)集的時(shí)候樟澜,用一部分來(lái)訓(xùn)練,一部分來(lái)測(cè)試叮盘。而且訓(xùn)練數(shù)據(jù)和測(cè)試數(shù)據(jù)沒(méi)有交集秩贰。通常會(huì)用60%到80%的數(shù)據(jù)作為訓(xùn)練集,剩下的作為測(cè)試集柔吼。需要注意的是毒费,在選擇訓(xùn)練集(或者測(cè)試集)的時(shí)候要采用分層抽樣的方法。就像刷題一樣愈魏,訓(xùn)練集和測(cè)試集都要有相近比例的題型觅玻,不能訓(xùn)練集全是選擇題,測(cè)試集全是論述題培漏,應(yīng)該訓(xùn)練集和測(cè)試集都包含選擇題和測(cè)試題溪厘,而且比例要一致,都是八成選擇題牌柄,兩成論述題畸悬。
一次的訓(xùn)練-測(cè)試結(jié)果可能不夠科學(xué),最好劃分不同的訓(xùn)練集和測(cè)試集珊佣,做多次訓(xùn)練-測(cè)試蹋宦,將測(cè)試結(jié)果(錯(cuò)誤率披粟、查準(zhǔn)率之類的)取平均。
交叉檢驗(yàn)法:這是在“留出法”的基礎(chǔ)上改進(jìn)的方法冷冗。先將數(shù)據(jù)集分為k個(gè)大小相似的互斥子集(當(dāng)然守屉,每個(gè)子集的產(chǎn)生都要用分層抽樣進(jìn)行)。每次用k-1個(gè)子集作為訓(xùn)練集蒿辙,剩下的一個(gè)作為測(cè)試集胸梆。這樣就可以進(jìn)行k次訓(xùn)練-測(cè)試。k的測(cè)試結(jié)果的平均值就是最終的測(cè)試結(jié)果须板。
自助法:上述兩種方法都是在原本作為訓(xùn)練集的數(shù)據(jù)中抽出一部分作為測(cè)試集碰镜,因此訓(xùn)練集的規(guī)模不可避免地減少了,訓(xùn)練效果也就受到了影響习瑰。自助法則是一種比較好的緩解方法绪颖。假設(shè)有一個(gè)包含m個(gè)樣本的數(shù)據(jù)集D。對(duì)這個(gè)數(shù)據(jù)集進(jìn)行m次有放回的抽樣甜奄,則得到了一個(gè)含有m個(gè)樣本的數(shù)據(jù)集D'柠横。D'相對(duì)于原數(shù)據(jù)集D,規(guī)模沒(méi)有減少课兄,只是D'中有部分樣本是重復(fù)出現(xiàn)的牍氛。所以在抽樣中沒(méi)有抽到的樣本就作為測(cè)試集,D'就作為訓(xùn)練集烟阐。按照概率論推導(dǎo)可知搬俊,一般來(lái)說(shuō)抽樣中國(guó)會(huì)有三分之一的樣本沒(méi)有被抽到,也就是說(shuō)測(cè)試集大小為數(shù)據(jù)集D大小的三分之一蜒茄。
雖然自助法能彌補(bǔ)留出法和交叉檢驗(yàn)法的不足唉擂,但是也有自己的缺陷,那就是改變了原來(lái)的訓(xùn)練樣本的分布檀葛,這也會(huì)對(duì)訓(xùn)練效果造成影響玩祟。因此在數(shù)據(jù)集比較大時(shí)多采用留出法和交叉檢驗(yàn)法,當(dāng)數(shù)據(jù)集比較小時(shí)采用自助法屿聋。
Q:在測(cè)試一個(gè)學(xué)習(xí)器時(shí)空扎,有哪些測(cè)試指標(biāo)可以使用?
錯(cuò)誤率(error):最常用的測(cè)試指標(biāo)就是錯(cuò)誤率润讥。對(duì)于一次分類任務(wù)转锈,如果分類錯(cuò)誤的樣本數(shù)為a,總樣本數(shù)為m象对,則錯(cuò)誤率E=a/m.(精度為1-a/m)黑忱。比如為100個(gè)西瓜分類,有10個(gè)分錯(cuò)了,錯(cuò)誤率就是10%甫煞。
均方誤差(mean squared error):“錯(cuò)誤率”一般針對(duì)分類任務(wù)菇曲,回歸預(yù)測(cè)則用均方誤差,即各次抚吠,預(yù)測(cè)值與真實(shí)值常潮,的差,的平方楷力,的和:可以認(rèn)為是各次預(yù)測(cè)的誤差的累加喊式。
查準(zhǔn)率(precision):也就是檢索出來(lái)的結(jié)果中準(zhǔn)確的結(jié)果所占的比例。比如找出100個(gè)西瓜中的好瓜萧朝,找出50個(gè)岔留,但這50個(gè)中只有40個(gè)是真正的好瓜,則查準(zhǔn)率為80%检柬。
查全率(recall):也就是希望檢索的結(jié)果中被檢索出來(lái)的比例献联。比如找出100個(gè)西瓜中的好瓜,找出40個(gè)何址,但真正的好瓜有50個(gè)里逆,則查全率為80%。
ROC曲線:很多二分類學(xué)習(xí)器的分類方法是計(jì)算出每一個(gè)樣本作為正例的概率用爪,然后按照概率大小對(duì)樣本排序原押,最后確定一個(gè)臨界概率(閾值),大于臨界概率的認(rèn)定為正例偎血,其余為反例诸衔。以西瓜分類為例。有些西瓜是好瓜的概率高烁巫,有些西瓜是好瓜的概率低署隘。把這些西瓜按照概率排序宠能,然后取50%作為臨界概率亚隙。概率大于50%的認(rèn)為是好瓜,否則為壞瓜违崇。因此這個(gè)排序的質(zhì)量很重要阿弃。
使用這種方法就會(huì)產(chǎn)生兩個(gè)指標(biāo):真正例率(“選出的好瓜”中真正的好瓜占所有的好瓜的比例,也就是好瓜的查準(zhǔn)率)羞延,和假正例率(“選出的好瓜”中壞瓜占所有壞瓜的比例)渣淳。對(duì)于每一個(gè)臨界概率,都有一個(gè)對(duì)應(yīng)的真正例率和假正例率伴箩。把各個(gè)臨界概率對(duì)應(yīng)的真正例率和假正例率繪成圖就是ROC圖入愧。
AUC:Area Under Curve 就是ROC曲線中右下方區(qū)域的面積。AUC判斷一個(gè)分類用的排序隊(duì)列的好壞,AUC越大越好棺蛛。
Q:知道了兩個(gè)學(xué)習(xí)器的某個(gè)指標(biāo)怔蚌,比如錯(cuò)誤率,A學(xué)習(xí)器的錯(cuò)誤率低于B學(xué)習(xí)器的錯(cuò)誤率旁赊,能否認(rèn)為A學(xué)習(xí)器質(zhì)量比B學(xué)習(xí)器好桦踊?
不能。
首先一次的測(cè)試結(jié)果可能有誤差终畅,需要多次測(cè)試然后取平均籍胯。所以應(yīng)該比較平均錯(cuò)誤率。其次一個(gè)學(xué)習(xí)器的平均錯(cuò)誤率比另一個(gè)的低离福,這個(gè)是否顯著杖狼?若某一次評(píng)估中A學(xué)習(xí)器的平均錯(cuò)誤率是2%,B學(xué)習(xí)器的平均錯(cuò)誤率是2.001%妖爷,能否就能說(shuō)明A的性能比B好本刽?
若要比較兩個(gè)學(xué)習(xí)器的某項(xiàng)指標(biāo),要用到統(tǒng)計(jì)學(xué)的假設(shè)檢驗(yàn)赠涮,才能得到有顯著性的子寓,盡可能排除偶然性的結(jié)論。比如用t檢驗(yàn)比較兩個(gè)學(xué)習(xí)器的平均錯(cuò)誤率笋除,用方差分析和多重比較來(lái)比較多個(gè)學(xué)習(xí)器的某項(xiàng)性能斜友。
本作品首發(fā)于簡(jiǎn)書(shū) 和 博客園平臺(tái),采用知識(shí)共享署名 4.0 國(guó)際許可協(xié)議進(jìn)行許可垃它。