直觀理解神經網路最後一層全連線 Softmax

2022-06-16 12:12:10 字數 3476 閱讀 6710

深度神經網路的最後一層往往是全連線層+softmax(分類網路),如下圖所示,來自stackexchange。

先看一下計算方式全連線層將權重矩陣與輸入向量相乘再加上偏置,將n

'>n

n個(−∞,

+∞)'>(−∞,+∞)

(−∞,+∞)的實數對映為k

'>k

k個(−∞,

+∞)'>(−∞,+∞)

(−∞,+∞)的實數(分數);softmax將k

'>k

k個(−∞,

+∞)'>(−∞,+∞)

(−∞,+∞)的實數對映為k

'>k

k個(0,1

)'>(0,1)

(0,1)的實數(概率),同時保證它們之和為1。具體如下:y^

=sof

tmax

(z)=

soft

max(

wtx+

b)'>y^=softmax(z)=softmax(wtx+b)

y^=softmax(z)=softmax(wtx+b)

其中,x

'>x

x 為全連線層的輸入,wn×

k'>wn×k

wn×k 為權重,b

'>b

b為偏置項,y

^'>y^

y^為softmax輸出的概率,softmax的計算方式如下:so

ftma

x(zj

)=ez

j∑ke

zj'>softmax(zj)=ezj∑kezj

softmax(zj)=ezj∑kezj

若拆成每個類別的概率如下:yj

^=so

ftma

x(zj

)=so

ftma

x(wj

⋅x+b

j)'>yj^=softmax(zj)=softmax(wj⋅x+bj)

yj^=softmax(zj)=softmax(wj⋅x+bj)

其中,w

j'>wj

wj為圖中全連線層同一顏色權重組成的向量。

該如何理解?

下面提供3個理解角度:加權角度模版匹配角度幾何角度

加權角度可能是最直接的理解角度。

通常將網路最後乙個全連線層的輸入,即上面的x

'>x

x,視為網路從輸入資料提取到的特徵。zj

=wj⋅

x+bj

=wj1

x1+w

j2x2

+⋯+w

jnxn

+bj'>zj=wj⋅x+bj=wj1x1+wj2x2+⋯+wjnxn+bj

zj=wj⋅x+bj=wj1x1+wj2x2+⋯+wjnxn+bj將wj

'>wj

wj視為第j

'>j

j類下特徵的權重,即每維特徵的重要程度、對最終分數的影響程度,通過對特徵加權求和得到每個類別的分數,再經過softmax對映為概率。

也可以將w

j'>wj

wj視為第j

'>j

j類的特徵模板,特徵與每個類別的模板進行模版匹配,得到與每個類別的相似程度,然後通過softmax將相似程度對映為概率。如下圖所示,素材來自cs231n。

如果是只有乙個全連線層的神經網路(相當於線性分類器),將每個類別的模板可以直接視覺化如下,素材來自cs231n。

如果是多層神經網路,最後乙個全連線層的模板是特徵空間的模板,視覺化需要對映回輸入空間。

仍將全連線層的輸入x

'>x

x視為網路從輸入資料提取到的特徵,乙個特徵對應多維空間中的乙個點。

如果是二分類問題,使用線性分類器y^=

w⋅x+

b'>y^=w⋅x+b

y^=w⋅x+b,若y

^>

0'>y^>0

y^>0即位於超平面的上方,則為正類,y

^<

0'>y^<0

y^<0則為負類。

多分類怎麼辦?為每個類別設定乙個超平面,通過多個超平面對特徵空間進行劃分,乙個區域對應乙個類別。w

j'>wj

wj為每個超平面的法向量,指向正值的方向,超平面上分數為0,如果求特徵與每個超平面間的距離(帶正負)為dj

=wj⋅

x+bj

||wj

||'>dj=wj⋅x+bj||wj||

dj=wj⋅x+bj||wj||

而分數zj=

||wj

||dj

'>zj=||wj||dj

zj=||wj||dj,再進一步通過softmax對映為概率。

如下圖所示:

相比(−∞,

+∞)'>(−∞,+∞)

(−∞,+∞)範圍內的分數,概率天然具有更好的可解釋性,讓後續取閾值等操作順理成章。

經過全連線層,我們獲得了k

'>k

k個類別(−∞

,+∞)

'>(−∞,+∞)

(−∞,+∞)範圍內的分數z

j'>zj

zj,為了得到屬於每個類別的概率,先通過ezj

'>ezj

ezj將分數對映到(0,

+∞)'>(0,+∞)

(0,+∞),然後再歸一化到(0,

1)'>(0,1)

(0,1),這便是softmax的思想:yj

^=so

ftma

x(zj

)=ez

j∑ke

zj'>yj^=softmax(zj)=ezj∑kezj

yj^=softmax(zj)=ezj∑kezj

本文介紹了3種角度來更直觀地理解全連線層+softmax,

視角不同,看到的畫面就不同,就會萌生不同的idea。有些時候,換換視角問題就迎刃而解了。

以上。

直觀理解神經網路最後一層全連線 Softmax

部落格 blog.shinelee.me csdn 目錄這篇文章將從3個角度 加權 模版匹配與幾何來理解最後一層全連線 softmax。掌握了這3種視角,可以更好地理解深度學習中的正則項 引數視覺化以及一些損失函式背後的設計思想。深度神經網路的最後一層往往是全連線層 softmax 分類網路 如下圖...

卷積神經網路 全連線層

全連線層 全連線層與卷積層 全連線層與gap 全域性平均池化層 1 2 3 全連線層一般會把卷積輸出的二維特徵圖轉化為一維的乙個向量,全連線層的每乙個節點都與上一層的每個節點連線,是把前一層的輸出特徵都綜合起來,所以該層的權值引數是最多的。作用 全連線網路的作用就是將最後一層卷積得到的feature...

神經網路之全連線層(線性層)

對於神經網路的全連線層,前面已經使用矩陣的運算方式實現過,本篇將引入tensorflow中層的概念,正式使用deep learning相關的api搭建乙個全連線神經網路。下面是全連線神經網路的結構圖 其中,x1,x2,x3為輸入,a1,a2,a3為輸出,運算關係如下 x1,x2,x3所在的層叫神經網...