來源:北大青鳥總部 2020年01月07日 10:04
小編前幾天一直在學(xué)習(xí)機(jī)器學(xué)習(xí)的知識,突然有一天,女朋友經(jīng)過我電腦前,指著屏幕上的字說:“損失函數(shù)”是啥意思呀。本著我對她的了解,就算小編跟她說:“損失函數(shù)是一種可以吃的東西,很多人喜歡吃”。她也會(huì)回答好厲害的樣子。
那天之后,小編觀察了許多涉及損失函數(shù)的內(nèi)容,都不外乎一大堆的公式,對一些數(shù)學(xué)和抽象思維還是有一定門檻的,于是小編不嚴(yán)謹(jǐn)?shù)目偨Y(jié)了一套說辭,用來給女朋友科普啥叫損失函數(shù),如果你女朋友也問到你同樣的問題,你除了回答“說了你也不懂”之外,也可以試試這樣解釋?
首先,我們先來回顧一下機(jī)器學(xué)習(xí)模型。
機(jī)器學(xué)習(xí)模型:就是總結(jié)樣本中的”經(jīng)驗(yàn)”,學(xué)習(xí)出來的一個(gè)模型,通過這個(gè)模型,可以對具有特征的樣本進(jìn)行預(yù)測,得到一個(gè)具體的預(yù)測值(回歸)或者類別(分類)。
而機(jī)器學(xué)習(xí)的“學(xué)習(xí)”過程就是最小化損失函數(shù)的過程。
拿機(jī)器學(xué)習(xí)分類任務(wù)來說,分類任務(wù)的目的是要將不同類別的樣本盡量劃分的更加準(zhǔn)確,那么我們這時(shí)就可以來定義一個(gè)標(biāo)準(zhǔn),如果有一個(gè)模型,它預(yù)測樣本的分類與樣本的實(shí)際分類一致的話,得一分。如果預(yù)測樣本的分類與樣本實(shí)際的分類不一致的話則不得分。
那么同時(shí)10個(gè)模型參加比賽,得分高的模型自然是更優(yōu)的模型。這個(gè)計(jì)算得分的機(jī)制,就是損失函數(shù),只不過損失函數(shù)是相反的,即預(yù)測樣本的類別與實(shí)際樣本類別一致的話,損失為0。預(yù)測樣本與實(shí)際樣本類別不一致,損失將比較大。
也就是說,在同一標(biāo)準(zhǔn)下,損失越小,模型越精確。這也是為什么機(jī)器學(xué)習(xí)的過程是將損失函數(shù)優(yōu)化到最小的過程。
可能從概念上同學(xué)們還是有些許不明白,下面咱們通過一個(gè)實(shí)際例子來了解一下。
我們有以下數(shù)據(jù)(雞鴨分類)
接下來我們要選擇一個(gè)適合的模型,來對數(shù)據(jù)進(jìn)行分類?,F(xiàn)在有兩個(gè)模型,模型A分類規(guī)則是,只有是有兩只腳的就判定為雞、模型B分類規(guī)則是有兩只腳且嘴巴是尖的并且顏色是黃色的動(dòng)物是雞,其余的是鴨。那么通過兩種模型對現(xiàn)有樣本進(jìn)行預(yù)測,可以發(fā)現(xiàn)模型A預(yù)測對3個(gè),預(yù)測錯(cuò)4個(gè)。模型B預(yù)測準(zhǔn)確6個(gè),預(yù)測錯(cuò)誤1個(gè)。那么這次較量中,模型A的損失(誤差)為4,模型B損失(誤差)為0。毫無疑問模型B是更好的模型。
損失函數(shù)其實(shí)就是上述例子中模型所表現(xiàn)的誤差,那么機(jī)器學(xué)習(xí)中最優(yōu)化損失函數(shù)的過程其實(shí)是通過損失函數(shù)反過來優(yōu)化模型參數(shù),例如上述例子中模型B,可以計(jì)算出損失函數(shù)為1,那么分析一下為什么會(huì)出現(xiàn)這一個(gè)損失(誤差),是因?yàn)槟P偷姆诸愐?guī)則導(dǎo)致,那么我要避免這個(gè)損失的出現(xiàn),我就反過來調(diào)整一下規(guī)則,將規(guī)則修改為:所有兩只腳、嘴巴是尖的、顏色是黃色或者紅色的動(dòng)物是雞。
調(diào)整完規(guī)則之后,我們再計(jì)算一次損失,發(fā)現(xiàn)損失降為了0,這樣我們就成功的優(yōu)化了模型,而機(jī)器學(xué)習(xí)實(shí)際上就是自動(dòng)的完成了這個(gè)優(yōu)化過程。
實(shí)際機(jī)器學(xué)習(xí)算法中有許許多多各式各樣的損失函數(shù),如邏輯回歸的交叉熵?fù)p失、線性回歸的均方根誤差等,理解了損失函數(shù)對理解機(jī)器學(xué)習(xí)有非常重要的幫助,你理解了嗎?