什么是softmax回歸,使用softmax回歸實(shí)現(xiàn)多分類
大家好,今天要講的內(nèi)容是使用softmax回歸,實(shí)現(xiàn)多分類。
在解決多分類問題時(shí),我們可以直接構(gòu)建一個(gè)softmax回歸模型,同時(shí)對(duì)所有類別進(jìn)行識(shí)別。

在softmax回歸中,包括了兩個(gè)步驟。
步驟1,輸入一個(gè)樣本的特征向量,輸出多個(gè)線性預(yù)測(cè)結(jié)果。
步驟2,將這些結(jié)果輸入到softmax函數(shù),softmax函數(shù)會(huì)將多個(gè)線性輸出,轉(zhuǎn)換為每個(gè)類別的概率。
先來看步驟1:

在某多分類問題中,有三個(gè)目標(biāo)類別o1、o2、o3,四個(gè)輸入特征,x1到x4。
softmax回歸會(huì)基于輸入x,計(jì)算o1、o2、o3三個(gè)線性輸出。
在計(jì)算每一個(gè)線性輸出o時(shí),都會(huì)依賴一組w和b參數(shù)。

我們可以將softmax回歸,看做是一個(gè)具有多個(gè)輸出的單層神經(jīng)網(wǎng)絡(luò)。
我們可以基于矩陣,計(jì)算線性輸出o。

例如,在計(jì)算o=Wx+b時(shí),W是一個(gè)3*4的權(quán)重矩陣,b代表了一個(gè)3*1的偏置列向量,x是4*1的特征向量。
經(jīng)過計(jì)算,會(huì)得到3*1的輸出結(jié)果o。
計(jì)算出線性輸出o后,進(jìn)行步驟2:

將o輸入到softmax函數(shù),從而將線性輸出o轉(zhuǎn)換為每個(gè)類別的預(yù)測(cè)概率y。
設(shè)有n個(gè)輸出,o1到on。第k個(gè)輸出是ok,它對(duì)應(yīng)的類別概率是yk。
其中yk等于,常數(shù)e的ok次方,除以e的o1次方加上e的o2次方,等等到e的on次方,所有指數(shù)函數(shù)的和。

這樣,我們就通過softmax函數(shù),將所有線性輸出,都轉(zhuǎn)換為0到1之間的實(shí)數(shù)了。
并且輸出的總和,y1+y2加到y(tǒng)n,這個(gè)結(jié)果恰好為1。

而y1到y(tǒng)n,還可以看做是樣本屬于某個(gè)類別的概率,它們之間是可以比較的,并且y值較大的類別對(duì)應(yīng)的概率更高。

例如,設(shè)輸出o1、o2、o3分別等于3個(gè)浮點(diǎn)數(shù),0.3、2.9和4.0。
然后計(jì)算e的0.3、2.9、4.0次方。
將它們累加到一起,結(jié)果是74.12。

然后使用e的oi次方除以74.12,就得到了對(duì)應(yīng)的yi。
這時(shí)計(jì)算y1+y2+y3的和,結(jié)果恰好等于1。
因?yàn)閥3的值最大,所以最終識(shí)別的結(jié)果為類別3。
總結(jié)來說,softmax函數(shù)不會(huì)改變線性輸出o之間的大小順序,只會(huì)為每個(gè)類別分配相應(yīng)的概率。
softmax回歸模型的優(yōu)勢(shì)在于模型簡(jiǎn)潔和高效。
我們只需要一次訓(xùn)練,就可以得到同時(shí)識(shí)別所有類別的多分類模型。
那么到這里,使用softmax回歸,實(shí)現(xiàn)多分類就講完了,感謝大家的觀看,我們下節(jié)課再會(huì)。