Softmax在機(jī)器學(xué)習(xí)中有非常廣泛的應(yīng)用,但是剛剛接觸機(jī)器學(xué)習(xí)的人可能對(duì)Softmax的特點(diǎn)以及好處并不理解,其實(shí)你了解了以后就會(huì)發(fā)現(xiàn),Softmax計(jì)算簡單,效果顯著,非常好用。
我們先來直觀看一下,Softmax究竟是什么意思
我們知道m(xù)ax,假如說我有兩個(gè)數(shù),a和b,并且a>b,如果取max,那么就直接取a,沒有第二種可能
但有的時(shí)候我不想這樣,因?yàn)檫@樣會(huì)造成分值小的那個(gè)饑餓。所以我希望分值大的那一項(xiàng)經(jīng)常取到,分值小的那一項(xiàng)也偶爾可以取到,那么我用softmax就可以了
現(xiàn)在還是a和b,a>b,如果我們?nèi)“凑誷oftmax來計(jì)算取a和b的概率,那a的softmax值大于b的,所以a會(huì)經(jīng)常取到,而b也會(huì)偶爾取到,概率跟它們本來的大小有關(guān)。所以說不是max,而是 Soft max
那各自的概率究竟是多少呢,我們下面就來具體看一下
定義
假設(shè)我們有一個(gè)數(shù)組V,Vi表示V中的第i個(gè)元素,那么Vi元素的Softmax值就是
Vi元素的Softmax值
也就是說,是該元素的指數(shù)值,與所有元素指數(shù)值和的比值
這個(gè)定義可以說非常的直觀,當(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ù)正確分類的Softmax值,它占的比重越大,這個(gè)樣本的Loss也就越小,這種定義符合我們的要求
2.計(jì)算上非常非常的方便
當(dāng)我們對(duì)分類的Loss進(jìn)行改進(jìn)的時(shí)候,我們要通過梯度下降,每次優(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ì)過程
求導(dǎo)過程
最后結(jié)果的形式非常的簡單,只要將算出來的概率的向量對(duì)應(yīng)的真正結(jié)果的那一維減1,就可以了
舉個(gè)例子,通過若干層的計(jì)算,最后得到的某個(gè)訓(xùn)練樣本的向量的分?jǐn)?shù)是[ 1, 5, 3 ],
那么概率分別就是
訓(xùn)練樣本的概率
如果這個(gè)樣本正確的分類是第二個(gè)的話,那么計(jì)算出來的偏導(dǎo)就是
[0.015,0.866?1,0.117]=[0.015,?0.134,0.117]
是不是很簡單?。∪缓笤俑鶕?jù)這個(gè)進(jìn)行back propagation就可以了
-
神經(jīng)網(wǎng)絡(luò)
+關(guān)注
關(guān)注
42文章
4840瀏覽量
108147 -
機(jī)器學(xué)習(xí)
+關(guān)注
關(guān)注
67文章
8561瀏覽量
137208
發(fā)布評(píng)論請(qǐng)先 登錄
人工智能與機(jī)器學(xué)習(xí)在這些行業(yè)的深度應(yīng)用
強(qiáng)化學(xué)習(xí)會(huì)讓自動(dòng)駕駛模型學(xué)習(xí)更快嗎?
機(jī)器學(xué)習(xí)和深度學(xué)習(xí)中需避免的 7 個(gè)常見錯(cuò)誤與局限性
基于ETAS嵌入式AI工具鏈將機(jī)器學(xué)習(xí)模型部署到量產(chǎn)ECU
Leadway電機(jī)方案的優(yōu)點(diǎn)
量子機(jī)器學(xué)習(xí)入門:三種數(shù)據(jù)編碼方法對(duì)比與應(yīng)用
如何在機(jī)器視覺中部署深度學(xué)習(xí)神經(jīng)網(wǎng)絡(luò)
如何解決開發(fā)機(jī)器學(xué)習(xí)程序時(shí)Keil項(xiàng)目只能在調(diào)試模式下運(yùn)行,但無法正常執(zhí)行的問題?
超小型Neuton機(jī)器學(xué)習(xí)模型, 在任何系統(tǒng)級(jí)芯片(SoC)上解鎖邊緣人工智能應(yīng)用.
【Sipeed MaixCAM Pro開發(fā)板試用體驗(yàn)】 + 04 + 機(jī)器學(xué)習(xí)YOLO體驗(yàn)
貿(mào)澤電子2025邊緣AI與機(jī)器學(xué)習(xí)技術(shù)創(chuàng)新論壇回顧(上)
FPGA在機(jī)器學(xué)習(xí)中的具體應(yīng)用
【嘉楠堪智K230開發(fā)板試用體驗(yàn)】K230機(jī)器視覺相關(guān)功能體驗(yàn)
使用MATLAB進(jìn)行無監(jiān)督學(xué)習(xí)
機(jī)器人主控芯片平臺(tái)有哪些 機(jī)器人主控芯片一文搞懂
機(jī)器學(xué)習(xí)的Softmax定義和優(yōu)點(diǎn)
評(píng)論