Softmax在機(jī)器學(xué)習(xí)中有非常廣泛的應(yīng)用,但是剛剛接觸機(jī)器學(xué)習(xí)的人可能對(duì)Softmax的特點(diǎn)以及好處并不理解,其實(shí)你了解了以后就會(huì)發(fā)現(xiàn),Softmax計(jì)算簡(jiǎn)單,效果顯著,非常好用。
我們先來(lái)直觀看一下,Softmax究竟是什么意思
我們知道m(xù)ax,假如說(shuō)我有兩個(gè)數(shù),a和b,并且a>b,如果取max,那么就直接取a,沒(méi)有第二種可能
但有的時(shí)候我不想這樣,因?yàn)檫@樣會(huì)造成分值小的那個(gè)饑餓。所以我希望分值大的那一項(xiàng)經(jīng)常取到,分值小的那一項(xiàng)也偶爾可以取到,那么我用softmax就可以了
現(xiàn)在還是a和b,a>b,如果我們?nèi)“凑誷oftmax來(lái)計(jì)算取a和b的概率,那a的softmax值大于b的,所以a會(huì)經(jīng)常取到,而b也會(huì)偶爾取到,概率跟它們本來(lái)的大小有關(guān)。所以說(shuō)不是max,而是 Soft max
那各自的概率究竟是多少呢,我們下面就來(lái)具體看一下
定義
假設(shè)我們有一個(gè)數(shù)組V,Vi表示V中的第i個(gè)元素,那么Vi元素的Softmax值就是
Vi元素的Softmax值
也就是說(shuō),是該元素的指數(shù)值,與所有元素指數(shù)值和的比值
這個(gè)定義可以說(shuō)非常的直觀,當(dāng)然除了直觀樸素好理解以外,它還有更多的優(yōu)點(diǎn)
1.計(jì)算與標(biāo)注樣本的差距
在神經(jīng)網(wǎng)絡(luò)的計(jì)算當(dāng)中,我們經(jīng)常需要計(jì)算按照神經(jīng)網(wǎng)絡(luò)的正向傳播計(jì)算的分?jǐn)?shù)S1,按照正確標(biāo)注計(jì)算的分?jǐn)?shù)S2,之間的差距,計(jì)算Loss,才能應(yīng)用反向傳播。Loss定義為交叉熵
交叉熵
取log里面的值就是這組數(shù)據(jù)正確分類(lèi)的Softmax值,它占的比重越大,這個(gè)樣本的Loss也就越小,這種定義符合我們的要求
2.計(jì)算上非常非常的方便
當(dāng)我們對(duì)分類(lèi)的Loss進(jìn)行改進(jìn)的時(shí)候,我們要通過(guò)梯度下降,每次優(yōu)化一個(gè)step大小的梯度
我們定義選到y(tǒng)i的概率是
yi的概率
然后我們求Loss對(duì)每個(gè)權(quán)重矩陣的偏導(dǎo),應(yīng)用到了鏈?zhǔn)椒▌t
求導(dǎo)結(jié)果
詳細(xì)過(guò)程
求導(dǎo)過(guò)程
最后結(jié)果的形式非常的簡(jiǎn)單,只要將算出來(lái)的概率的向量對(duì)應(yīng)的真正結(jié)果的那一維減1,就可以了
舉個(gè)例子,通過(guò)若干層的計(jì)算,最后得到的某個(gè)訓(xùn)練樣本的向量的分?jǐn)?shù)是[ 1, 5, 3 ],
那么概率分別就是
訓(xùn)練樣本的概率
如果這個(gè)樣本正確的分類(lèi)是第二個(gè)的話(huà),那么計(jì)算出來(lái)的偏導(dǎo)就是
[0.015,0.866?1,0.117]=[0.015,?0.134,0.117]
是不是很簡(jiǎn)單!!然后再根據(jù)這個(gè)進(jìn)行back propagation就可以了
-
神經(jīng)網(wǎng)絡(luò)
+關(guān)注
關(guān)注
42文章
4773瀏覽量
100872 -
機(jī)器學(xué)習(xí)
+關(guān)注
關(guān)注
66文章
8423瀏覽量
132751
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
傳統(tǒng)機(jī)器學(xué)習(xí)方法和應(yīng)用指導(dǎo)
![傳統(tǒng)<b class='flag-5'>機(jī)器</b><b class='flag-5'>學(xué)習(xí)</b>方法和應(yīng)用指導(dǎo)](https://file1.elecfans.com/web3/M00/04/33/wKgZPGdx9NKAcZdAAABMVybzcFI029.png)
如何選擇云原生機(jī)器學(xué)習(xí)平臺(tái)
什么是機(jī)器學(xué)習(xí)?通過(guò)機(jī)器學(xué)習(xí)方法能解決哪些問(wèn)題?
![什么是<b class='flag-5'>機(jī)器</b><b class='flag-5'>學(xué)習(xí)</b>?通過(guò)<b class='flag-5'>機(jī)器</b><b class='flag-5'>學(xué)習(xí)</b>方法能解決哪些問(wèn)題?](https://file.elecfans.com/web2/M00/4E/DC/poYBAGLCjeiALm_WAAAYmfR7Qec474.png)
NPU與機(jī)器學(xué)習(xí)算法的關(guān)系
魯棒性在機(jī)器學(xué)習(xí)中的重要性
MLOps平臺(tái)優(yōu)點(diǎn)
具身智能與機(jī)器學(xué)習(xí)的關(guān)系
【《時(shí)間序列與機(jī)器學(xué)習(xí)》閱讀體驗(yàn)】+ 時(shí)間序列的信息提取
機(jī)器視覺(jué)中常用的光源類(lèi)型及優(yōu)點(diǎn)?
人工智能、機(jī)器學(xué)習(xí)和深度學(xué)習(xí)是什么
深度學(xué)習(xí)與傳統(tǒng)機(jī)器學(xué)習(xí)的對(duì)比
機(jī)器學(xué)習(xí)8大調(diào)參技巧
![<b class='flag-5'>機(jī)器</b><b class='flag-5'>學(xué)習(xí)</b>8大調(diào)參技巧](https://file.elecfans.com/web2/M00/4E/DC/poYBAGLCjeiALm_WAAAYmfR7Qec474.png)
機(jī)器視覺(jué)軟件有哪些 機(jī)器視覺(jué)軟件的優(yōu)點(diǎn)
OneFlow Softmax算子源碼解讀之BlockSoftmax
![OneFlow <b class='flag-5'>Softmax</b>算子源碼解讀之BlockSoftmax](https://file1.elecfans.com/web2/M00/BC/38/wKgaomWbT5GAZdkPAAAcgecZoiU624.png)
OneFlow Softmax算子源碼解讀之WarpSoftmax
![OneFlow <b class='flag-5'>Softmax</b>算子源碼解讀之WarpSoftmax](https://file1.elecfans.com/web2/M00/BB/4D/wKgZomWbT1CAWm4KAAA2IsyxqO4463.png)
評(píng)論