在機(jī)器學(xué)習(xí)中,通常會(huì)遇到期望風(fēng)險(xiǎn)、經(jīng)驗(yàn)風(fēng)險(xiǎn)和結(jié)構(gòu)風(fēng)險(xiǎn)這三個(gè)概念,一直不知道這三個(gè)概念之間的具體區(qū)別和聯(lián)系,今天來梳理一下:
要區(qū)分這三個(gè)概念,首先要引入一個(gè)損失函數(shù)的概念。損失函數(shù)是期望風(fēng)險(xiǎn)、經(jīng)驗(yàn)風(fēng)險(xiǎn)和結(jié)構(gòu)風(fēng)險(xiǎn)的基礎(chǔ)。
損失函數(shù)是針對(duì)單個(gè)具體的樣本而言的。表示的是模型預(yù)測的值與樣本真實(shí)值之間的差距。比如對(duì)于某個(gè)樣本<Xi,Yi>,其真實(shí)的值為Yi,而我們的模型選擇決策函數(shù)為f,那么通過模型預(yù)測的值為f(Xi);損失函數(shù)就是用來表示Yi與f(Xi)之間的差距的,我們用函數(shù)L(f(Xi),Yi)來衡量。我們希望的是這個(gè)L函數(shù)最小化。理想的情況是我們的模型決策函數(shù)預(yù)測值f(Xi)剛好等于該樣本的真值Yi。常見的損失函數(shù)有以下幾種:
現(xiàn)在我們已經(jīng)清楚了,對(duì)于具體的某個(gè)樣本點(diǎn),有了衡量其預(yù)測值與真實(shí)值的差異度的方法了(選取上面任意一個(gè)損失函數(shù)即可)。
通過損失函數(shù)我們只能知道模型決策函數(shù)f(X)對(duì)于單個(gè)樣本點(diǎn)的預(yù)測能力(借用損失函數(shù)L(Y,f(x)),損失函數(shù)越小,說明模型對(duì)于該樣本預(yù)測越準(zhǔn)確。),那么如果想知道模型f(X)對(duì)訓(xùn)練樣本中所有的樣本的預(yù)測能力應(yīng)該怎么辦呢?顯然只需所有的樣本點(diǎn)都求一次損失函數(shù)然后進(jìn)行累加就好了。如下式
這就經(jīng)驗(yàn)風(fēng)險(xiǎn),所謂的經(jīng)驗(yàn)風(fēng)險(xiǎn)最小化便是讓這個(gè)式子最小化,注意這個(gè)式子中累加和的上標(biāo)N表示的是訓(xùn)練樣例集中樣本的數(shù)目。
經(jīng)驗(yàn)風(fēng)險(xiǎn)是對(duì)訓(xùn)練集中的所有樣本點(diǎn)損失函數(shù)的平均最小化。經(jīng)驗(yàn)風(fēng)險(xiǎn)越小說明模型f(X)對(duì)訓(xùn)練集的擬合程度越好,但是對(duì)于未知的樣本效果怎么樣呢?我們知道未知的樣本數(shù)據(jù)(<X,Y>)的數(shù)量是不容易確定的,所以就沒有辦法用所有樣本損失函數(shù)的平均值的最小化這個(gè)方法,那么怎么來衡量這個(gè)模型對(duì)所有的樣本(包含未知的樣本和已知的訓(xùn)練樣本)預(yù)測能力呢?熟悉概率論的很容易就想到了用期望。即假設(shè)X和Y服從聯(lián)合分布P(X,Y).那么期望風(fēng)險(xiǎn)就可以表示為:
這就是期望風(fēng)險(xiǎn),期望風(fēng)險(xiǎn)表示的是全局的概念,表示的是決策函數(shù)對(duì)所有的樣本<X,Y>預(yù)測能力的大小,而經(jīng)驗(yàn)風(fēng)險(xiǎn)則是局部的概念,僅僅表示決策函數(shù)對(duì)訓(xùn)練數(shù)據(jù)集里樣本的預(yù)測能力。理想的模型(決策)函數(shù)應(yīng)該是讓所有的樣本的損失函數(shù)最小的(也即期望風(fēng)險(xiǎn)最小化),但是期望風(fēng)險(xiǎn)函數(shù)往往是不可得到的,即上式中,X與Y的聯(lián)合分布函數(shù)不容易得到?,F(xiàn)在我們已經(jīng)清楚了期望風(fēng)險(xiǎn)是全局的,理想情況下應(yīng)該是讓期望風(fēng)險(xiǎn)最小化,但是呢,期望風(fēng)險(xiǎn)函數(shù)又不是那么容易得到的。怎么辦呢?那就用局部最優(yōu)的代替全局最優(yōu)這個(gè)思想吧。這就是經(jīng)驗(yàn)風(fēng)險(xiǎn)最小化的理論基礎(chǔ)。
通過上面的分析可以知道,經(jīng)驗(yàn)風(fēng)險(xiǎn)與期望風(fēng)險(xiǎn)之間的聯(lián)系與區(qū)別。現(xiàn)在在總結(jié)一下:
經(jīng)驗(yàn)風(fēng)險(xiǎn)是局部的,基于訓(xùn)練集所有樣本點(diǎn)損失函數(shù)最小化的。
期望風(fēng)險(xiǎn)是全局的,是基于所有樣本點(diǎn)的損失函數(shù)最小化的。
經(jīng)驗(yàn)風(fēng)險(xiǎn)函數(shù)是現(xiàn)實(shí)的,可求的;
期望風(fēng)險(xiǎn)函數(shù)是理想化的,不可求的;
只考慮經(jīng)驗(yàn)風(fēng)險(xiǎn)的話,會(huì)出現(xiàn)過擬合的現(xiàn)象,過擬合的極端情況便是模型f(x)對(duì)訓(xùn)練集中所有的樣本點(diǎn)都有最好的預(yù)測能力,但是對(duì)于非訓(xùn)練集中的樣本數(shù)據(jù),模型的預(yù)測能力非常不好。怎么辦呢?這個(gè)時(shí)候就引出了結(jié)構(gòu)風(fēng)險(xiǎn)。結(jié)構(gòu)風(fēng)險(xiǎn)是對(duì)經(jīng)驗(yàn)風(fēng)險(xiǎn)和期望風(fēng)險(xiǎn)的折中。在經(jīng)驗(yàn)風(fēng)險(xiǎn)函數(shù)后面加一個(gè)正則化項(xiàng)(懲罰項(xiàng))便是結(jié)構(gòu)風(fēng)險(xiǎn)了。如下式:
相比于經(jīng)驗(yàn)風(fēng)險(xiǎn),結(jié)構(gòu)風(fēng)險(xiǎn)多了一個(gè)懲罰項(xiàng),其中是一個(gè)lamada是一個(gè)大于0的系數(shù)。J(f)表示的是是模型f的復(fù)雜度。結(jié)構(gòu)風(fēng)險(xiǎn)可以這么理解:
經(jīng)驗(yàn)風(fēng)險(xiǎn)越小,模型決策函數(shù)越復(fù)雜,其包含的參數(shù)越多,當(dāng)經(jīng)驗(yàn)風(fēng)險(xiǎn)函數(shù)小到一定程度就出現(xiàn)了過擬合現(xiàn)象。也可以理解為模型決策函數(shù)的復(fù)雜程度是過擬合的必要條件,那么我們要想防止過擬合現(xiàn)象的方式,就要破壞這個(gè)必要條件,即降低決策函數(shù)的復(fù)雜度。也即,讓懲罰項(xiàng)J(f)最小化,現(xiàn)在出現(xiàn)兩個(gè)需要最小化的函數(shù)了。我們需要同時(shí)保證經(jīng)驗(yàn)風(fēng)險(xiǎn)函數(shù)和模型決策函數(shù)的復(fù)雜度都達(dá)到最小化,一個(gè)簡單的辦法把兩個(gè)式子融合成一個(gè)式子得到結(jié)構(gòu)風(fēng)險(xiǎn)函數(shù)然后對(duì)這個(gè)結(jié)構(gòu)風(fēng)險(xiǎn)函數(shù)進(jìn)行最小化。
聯(lián)系客服