-- 原創(chuàng)介陶,未經(jīng)授權(quán),禁止轉(zhuǎn)載 2017.10.31 --
傳送門:
機(jī)器學(xué)習(xí)的基本概念(一):http://www.reibang.com/p/10fc7e397a3e
機(jī)器學(xué)習(xí)的基本概念(二):http://www.reibang.com/p/b3edf9c9f2c8
機(jī)器通過(guò)學(xué)習(xí)趾痘,得到了模型溃槐。我們需要評(píng)判模型的泛化能力如何羞反。
衡量模型泛化能力的評(píng)價(jià)標(biāo)準(zhǔn)吗蚌,就是【性能度量】腿倚。這一章就是圍繞性能度量,講述如何評(píng)估模型蚯妇。
一敷燎、結(jié)論:
模型的好壞(泛化能力)= 學(xué)習(xí)算法的能力 + 數(shù)據(jù)的充分性 + 學(xué)習(xí)任務(wù)本身的難易度
所以,模型的“好壞”是相對(duì)的箩言,它不僅取決于算法和數(shù)據(jù)硬贯,還決定于任務(wù)需求。
二分扎、評(píng)判方法
模型評(píng)估澄成,是通過(guò)某種實(shí)驗(yàn)方法,評(píng)估測(cè)得某學(xué)習(xí)器的性能度量畏吓,以此做為評(píng)判方法。
除此之外卫漫,還需要輔助以假設(shè)檢驗(yàn)菲饼,比較學(xué)習(xí)器之間的泛化能力。
1. 基本術(shù)語(yǔ):
【錯(cuò)誤率】:分類錯(cuò)誤的樣本數(shù) 占 樣本總數(shù)的比例列赎。
【精度】: 1 - 錯(cuò)誤率宏悦。
【誤差】:學(xué)習(xí)器的實(shí)際預(yù)測(cè)輸出與樣本的真實(shí)輸出之間的差異源葫。
【訓(xùn)練誤差】:學(xué)習(xí)器在訓(xùn)練集上的誤差息堂。
【泛化誤差】:學(xué)習(xí)器在新樣本上的誤差。
【過(guò)擬合】:學(xué)習(xí)器把訓(xùn)練樣本學(xué)得“太好”块促,把訓(xùn)練樣本自身的一些特點(diǎn)當(dāng)做了所有潛在樣本都會(huì)具有的一般性質(zhì)荣堰,這樣會(huì)導(dǎo)致泛化能力下降。
舉例說(shuō)明:
【欠擬合】:與過(guò)擬合相對(duì)竭翠,指對(duì)訓(xùn)練樣本的一般性質(zhì)尚未學(xué)好振坚。
ps:過(guò)擬合無(wú)法徹底避免,只能“緩解”斋扰。
【測(cè)試集】:通過(guò)實(shí)驗(yàn)測(cè)試學(xué)習(xí)器的泛化能力的樣本集合。
2. 實(shí)驗(yàn)評(píng)估方法:
這些方法是對(duì)測(cè)試樣本的選擇传货,為了得到更加準(zhǔn)確的測(cè)試結(jié)果屎鳍,測(cè)試集應(yīng)該盡可能與訓(xùn)練集互斥哥艇。即貌踏,測(cè)試樣本盡量不在訓(xùn)練集中出現(xiàn)眷昆,未在訓(xùn)練過(guò)程中使用過(guò)帅刊。
1)留出法
步驟:
將數(shù)據(jù)集D劃分為兩個(gè)互斥的集合吧兔,其中一個(gè)集合作為訓(xùn)練集S欧穴,另一個(gè)作為測(cè)試集T涮帘。在S上訓(xùn)練出模型后,用T來(lái)評(píng)估其測(cè)試誤差笑诅,作為對(duì)泛化誤差的估計(jì)调缨。
需要注意的是:
- 訓(xùn)練/測(cè)試集的劃分要盡可能保持?jǐn)?shù)據(jù)分布的一致性。
- 采用若干次隨機(jī)劃分吆你、重復(fù)進(jìn)行試驗(yàn)評(píng)估后弦叶,取平均值作為留出法的評(píng)估結(jié)果。
解釋:
-
訓(xùn)練/測(cè)試集的劃分要盡可能保持?jǐn)?shù)據(jù)分布的一致性妇多,避免因數(shù)據(jù)劃分過(guò)程引入額外的偏差而對(duì)最終結(jié)果產(chǎn)生影響伤哺。
例如,在分類任務(wù)中者祖,要保持樣本的類別比例相似立莉。一般采用分層采樣。
【分層采樣】:保留類別比例的采樣方式七问。
-
因?yàn)榇嬖诙喾N方式對(duì)初始數(shù)據(jù)集D進(jìn)行分割蜓耻,不同的劃分方式導(dǎo)致不同的訓(xùn)練/測(cè)試集,相應(yīng)的械巡,模型評(píng)估的結(jié)果也會(huì)有差別刹淌。
所以,在使用留出法時(shí)讥耗,一般要采用若干次隨機(jī)劃分有勾、重復(fù)進(jìn)行試驗(yàn)評(píng)估后取平均值作為留出法的評(píng)估結(jié)果。
常用做法: 將2/3 ~ 4/5 的樣本用于訓(xùn)練古程,剩余樣本用于測(cè)試柠衅。
2)交叉驗(yàn)證法
步驟:
先將數(shù)據(jù)集D劃分為k個(gè)大小相似的互斥子集(分層采樣)得到,然后每次用k-1個(gè)子集的并集作為訓(xùn)練集籍琳,余下的那個(gè)子集作為測(cè)試集菲宴。
這樣就能得到k組訓(xùn)練/測(cè)試集。從而可進(jìn)行k次訓(xùn)練和測(cè)試趋急,最終返回的是這k個(gè)測(cè)試結(jié)果的均值喝峦。
所以,交叉驗(yàn)證法也稱為“k折交叉驗(yàn)證”呜达,k通常取10谣蠢,稱為10折交叉驗(yàn)證。
10折交叉示意圖:
需要注意的是:
與留出法類似查近,采用若干次隨機(jī)劃分眉踱、重復(fù)進(jìn)行試驗(yàn)評(píng)估后,取平均值作為交叉驗(yàn)證法的評(píng)估結(jié)果霜威。
常見(jiàn)的有“10次10折交叉驗(yàn)證”谈喳。
特例:留一法
假設(shè)數(shù)據(jù)集D包含m個(gè)樣本,若k=m戈泼,則得到了交叉驗(yàn)證法的特例:留一法(LOO)婿禽。
優(yōu)點(diǎn):它不受隨機(jī)樣本劃分的影響,因?yàn)槊總€(gè)子集都會(huì)包含一個(gè)樣本大猛。所以留一法的評(píng)估結(jié)果最準(zhǔn)確扭倾。
缺點(diǎn):數(shù)據(jù)集較大時(shí),訓(xùn)練m個(gè)模型計(jì)算開(kāi)銷太大挽绩。
3)自助法
以自助采樣法為基礎(chǔ)膛壹,從原始數(shù)據(jù)集D中,采樣產(chǎn)生數(shù)據(jù)集D‘唉堪,其中數(shù)據(jù)集D中約有36.8%的樣本未出現(xiàn)在采樣數(shù)據(jù)集D’中模聋,這部分?jǐn)?shù)據(jù)可以用于測(cè)試。
優(yōu)點(diǎn):在數(shù)據(jù)集較小巨坊,難以有效劃分訓(xùn)練/測(cè)試集時(shí)很有用撬槽。
缺點(diǎn):自助法產(chǎn)生的數(shù)據(jù)集改變了初始數(shù)據(jù)集的分布,會(huì)引入估計(jì)偏差趾撵。
三侄柔、 常用的性能度量
【性能度量】:衡量模型泛化能力的評(píng)價(jià)標(biāo)準(zhǔn)。反應(yīng)了任務(wù)需求占调。
不同任務(wù)暂题,使用的性能度量不同。
1) 回歸任務(wù)
最常用的性能度量是“均方誤差”:
2)聚類任務(wù)
聚類性能度量也稱為聚類“有效性指標(biāo)”究珊,主要分兩類:
a)一類薪者,是將聚類結(jié)果與某個(gè)“參考模型”進(jìn)行比較,稱為【外部指標(biāo)】剿涮。
常用的指標(biāo)有:
JC系數(shù)言津,F(xiàn)M指數(shù)攻人,Rand指數(shù)。
結(jié)果在[0悬槽,1]區(qū)間怀吻,值越大越好。
b)另一類初婆,是直接考察聚類結(jié)果而不用任何模型蓬坡,稱為【內(nèi)部指標(biāo)】。
常用的指標(biāo)有:
DB指數(shù)磅叛,Dunn指數(shù)屑咳。
DB指數(shù)越小越好,Dunn指數(shù)越大越好弊琴。
3)分類任務(wù)
a)錯(cuò)誤率兆龙、精度
【錯(cuò)誤率】:分類錯(cuò)誤的樣本數(shù) 占 樣本總數(shù)的比例。
【精度】: 1 - 錯(cuò)誤率访雪。
b)查準(zhǔn)率與查全率
查準(zhǔn)率也稱為【準(zhǔn)確率】。
查全率也稱為【召回率】臣缀。
下圖給出了二者的定義:
查準(zhǔn)率與查全率是一對(duì)矛盾的度量。
一般精置,查準(zhǔn)率高時(shí)计寇,查全率會(huì)低;查全率高時(shí)脂倦,查準(zhǔn)率偏低番宁。
P-R曲線
以查全率為橫軸,查準(zhǔn)率為縱軸赖阻,作圖蝶押。即查準(zhǔn)率-查全率曲線,簡(jiǎn)稱P-R曲線火欧。
i) 計(jì)算步驟:
根據(jù)學(xué)習(xí)器的預(yù)測(cè)結(jié)果對(duì)樣例進(jìn)行排序棋电,排在前面的是“最可能”的正例樣本,排在后面的是“最不可能”的正例樣本苇侵。
按此順序赶盔,逐個(gè)把樣本作為正例進(jìn)行預(yù)測(cè),則每次可以計(jì)算出當(dāng)前的查全率榆浓、查準(zhǔn)率于未。
ii)檢驗(yàn)查全率、查準(zhǔn)率的性能指標(biāo):
- 平衡點(diǎn) BEP:查全率=查準(zhǔn)率 時(shí)的取值。
- F1度量:基于查準(zhǔn)率與查全率的調(diào)和平均定義的烘浦。
查準(zhǔn)率與查全率的平衡選擇抖坪,取決于你要解決的問(wèn)題。
例如在商品推薦系統(tǒng)中谎倔,為了盡可能少打擾用戶柳击,更希望推薦內(nèi)容是用戶感興趣的,此時(shí)查準(zhǔn)率更重要片习。
如果是在逃犯信息檢索系統(tǒng)中,希望盡可能少漏掉逃犯蹬叭,此時(shí)查全率更重要藕咏。
c)ROC曲線
全稱是“受試者工作特征”曲線。以【假正例率FPR】為橫軸秽五,【真正例率TPR】為縱軸孽查。作圖。
i)計(jì)算步驟:
與P-R曲線類似坦喘,根據(jù)學(xué)習(xí)器的預(yù)測(cè)結(jié)果對(duì)樣例進(jìn)行排序盲再,按此順序逐個(gè)把樣本作為正例進(jìn)行預(yù)測(cè),算出FPR瓣铣、TPR答朋。
ii)為什么要用ROC曲線棠笑?
排序本身質(zhì)量的好壞梦碗,體現(xiàn)了學(xué)習(xí)器在不同任務(wù)下泛化能力的好壞。ROC曲線則是從這個(gè)角度來(lái)衡量學(xué)習(xí)器泛化能力的蓖救。
AUC是ROC曲線下的面積洪规,以此判斷兩個(gè)學(xué)習(xí)器的性能。
d)代價(jià)敏感錯(cuò)誤率 與 代價(jià)曲線
i)為什么要用代價(jià)曲線:
現(xiàn)實(shí)生活中循捺,不同類型的錯(cuò)誤斩例,造成的后果不同。
比如从橘,醫(yī)療診斷中念赶,將患者診斷為健康人,與洋满,將健康人診斷為患者晶乔,帶來(lái)的后果完全不同。誤診為健康人牺勾,后果是患者可能喪失了最佳治療時(shí)機(jī)正罢。
所以,為權(quán)衡不同類型的錯(cuò)誤所造成的不同損失驻民,為錯(cuò)誤賦予【非均等代價(jià)】的概念翻具。
在【非均等代價(jià)】下履怯,代價(jià)曲線可以反映,學(xué)習(xí)器的期望總體代價(jià)裆泳。
我們尋求的叹洲,就是總體代價(jià)最小化。
ii)繪制步驟
四工禾、比較檢驗(yàn)
1)概念解釋
學(xué)習(xí)器之間泛化能力的比較运提,無(wú)法通過(guò)直接比較性能度量的值的大小。需要通過(guò)統(tǒng)計(jì)假設(shè)檢驗(yàn)來(lái)比較闻葵。
原因:
我們希望比較的是學(xué)習(xí)器之間的泛化能力民泵,然而通過(guò)實(shí)驗(yàn)評(píng)估方法,我們獲得的是測(cè)試集上的性能槽畔。兩者的對(duì)比結(jié)果可能未必相同栈妆。
測(cè)試集上的性能與測(cè)試集本身的選擇有很大關(guān)系,而測(cè)試集大小不同厢钧,測(cè)試樣例不同鳞尔,測(cè)試結(jié)果也會(huì)不同。
機(jī)器學(xué)習(xí)算法本身有一定的隨機(jī)性早直,即便用相同的參數(shù)設(shè)置在同一個(gè)測(cè)試集上運(yùn)行多次寥假,結(jié)果也會(huì)不同。
所以莽鸿,不能直接比較性能度量值的大小昧旨,而是需要用假設(shè)檢驗(yàn)進(jìn)行比較。
2)常用的比較方法
對(duì)于單個(gè)學(xué)習(xí)器和多個(gè)學(xué)習(xí)器有不同的比較方法祥得。
舉例:
以錯(cuò)誤率為性能度量兔沃,進(jìn)行假設(shè)檢驗(yàn)。
假設(shè)檢驗(yàn)中的“假設(shè)”是對(duì)學(xué)習(xí)器泛化錯(cuò)誤率分布的某種猜想级及。
現(xiàn)實(shí)任務(wù)中乒疏,我們并不知道學(xué)習(xí)器的泛化錯(cuò)誤率,只知道測(cè)試錯(cuò)誤率饮焦。二者接近的可能性很大怕吴,以此可以推算出泛化錯(cuò)誤率的分布。
- 對(duì)于單個(gè)學(xué)習(xí)器县踢,常用的方法有二項(xiàng)檢驗(yàn)转绷,t檢驗(yàn)。
有多個(gè)測(cè)試錯(cuò)誤率時(shí)硼啤,可采用t檢驗(yàn)方法比較议经。
-
對(duì)于多個(gè)學(xué)習(xí)器,常用的方法有,交叉驗(yàn)證t檢驗(yàn)煞肾,McNemar檢驗(yàn)咧织,F(xiàn)riedman檢驗(yàn)與Nemenyi后續(xù)檢驗(yàn)。
交叉驗(yàn)證t檢驗(yàn) 和 McNemar檢驗(yàn)籍救,是在一個(gè)數(shù)據(jù)集上比較兩個(gè)算法的性能习绢。
Friedman檢驗(yàn) 與 Nemenyi后續(xù)檢驗(yàn),是在一組數(shù)據(jù)集上比較多個(gè)算法的性能蝙昙。
對(duì)于兩個(gè)學(xué)習(xí)器闪萄,若使用k折交叉驗(yàn)證法得到測(cè)試錯(cuò)誤率,則可用k折交叉驗(yàn)證“成對(duì)t檢驗(yàn)”來(lái)進(jìn)行比較檢驗(yàn)耸黑。
進(jìn)行有效的假設(shè)檢驗(yàn)桃煎,一個(gè)重要前提是,測(cè)試錯(cuò)誤率均為泛化錯(cuò)誤率的獨(dú)立采樣大刊。所以一般采用“5 x 2交叉驗(yàn)證”法,盡量保證測(cè)試錯(cuò)誤率的獨(dú)立性三椿。
Friedman檢驗(yàn)是基于多個(gè)算法進(jìn)行排序的檢驗(yàn)缺菌。
經(jīng)過(guò)F檢驗(yàn),說(shuō)明算法的性能顯著不同搜锰,需要進(jìn)行“后續(xù)檢驗(yàn)”進(jìn)一步區(qū)別各算法伴郁。
五、偏差與方差
“偏差-方差分解”是解釋學(xué)習(xí)算法泛化能力的重要工具蛋叼。它試圖對(duì)學(xué)習(xí)算法的期望泛化錯(cuò)誤率進(jìn)行拆解焊傅。
以回歸任務(wù)為例,泛化誤差可分解為狈涮,偏差+方差+噪聲之和狐胎。
【偏差】度量了學(xué)習(xí)算法的期望預(yù)測(cè)與真實(shí)結(jié)果的偏離程度,即刻畫(huà)了學(xué)習(xí)算法本身的擬合能力歌馍。
【方差】度量了同樣大小的訓(xùn)練集的變動(dòng)所導(dǎo)致的學(xué)習(xí)性能的變化握巢,即刻畫(huà)了數(shù)據(jù)擾動(dòng)所造成的影響。
【噪聲】則表達(dá)了在當(dāng)前任務(wù)上任何學(xué)習(xí)算法所能達(dá)到的期望泛化誤差的下界松却,即刻畫(huà)了學(xué)習(xí)問(wèn)題本身的難度暴浦。
- 偏差-方差分解說(shuō)明,泛化能力是由學(xué)習(xí)算法的能力晓锻、數(shù)據(jù)的充分性以及 學(xué)習(xí)任務(wù)本身的難易度 共同決定的歌焦。
給定學(xué)習(xí)任務(wù),為了取得好的泛化能力砚哆,則需使偏差較小独撇,即能夠充分?jǐn)M合數(shù)據(jù);并且方差較小,即使得數(shù)據(jù)擾動(dòng)產(chǎn)生的影響較小券勺。
一般來(lái)說(shuō)绪钥,偏差與方差是有沖突的,稱為偏差-方差窘境关炼。
至此程腹,內(nèi)容就講完了。上一張全家福~~
最后儒拂,想成為一名AI產(chǎn)品經(jīng)理寸潦,求推薦~
-- 原創(chuàng),未經(jīng)授權(quán)社痛,禁止轉(zhuǎn)載 2017.10.31 --