必备算法基础——神经网络
線性函數(也叫得分函數):
?輸入圖像經過一個函數映射得到圖像屬于每個類別的得分,x為圖像數據矩陣,W表示屬于某個類別的權重參數。
?劃分10個類別,W1表示屬于貓類別的權重,W1*x表示屬于貓的得分,W2、W3.....依次類推。
“b” 屬于一個偏置項,用來微調 ,表示對于得到的10個類別都要進行微調。權重參數W對結果起決定性作用。
? ? ? 假設輸入圖像xi有4個像素點?,劃分為三個類別cat、dog、ship;W1的4個權重值的大小表示對應像素點對于cat類別的重要程度,0.2與56對應,-0.5與231對應。每個類別的權重值大小表示對應像素點對當前類別的影響的重要程度,比如w2(1.5,1.3,2.1,0)中0對應像素2,表示像素點2對于類別dog的影響比較小,正值代表促進的作用,負值代表抑制的作用。
? ? w1*xi+b =-96.8,得到屬于cat類別的得分,依次類推。
?神經網絡的作用就是什么樣的W能更適合數據做當前的任務,我們就怎么樣改變這個W,一開始拿隨機值做W,在迭代過程中想辦法不斷改進W參數。
?損失函數:衡量分類或者回歸結果的好壞,損失函數是當我們獲得一個結果后才能評估的,做得好損失值小,做的不好損失值大
?例如:第一幅貓圖像屬于cat類別是3.2分,屬于car類別是5.1分,錯誤判斷為car類別。Sj表示錯誤類別得分,Syi表示正確類別得分
?損失函數當其值為0時代表沒有損失,加“+1”表示正確類別至少比錯誤類別高1以上才算沒有損失的
?損失函數改進
雖然下面兩個模型的損失函數值相同,但兩個模型不一樣 ,模型A中后3個權重值為0,說明它只關注輸入數據中的第1個,只關注局部后面的不關注。模型B是對輸入數據的每一個都關注。
假設模型A輸出數據如下圖,會產生變異,我們希望得到的是模型B的圖
?因此在構建損失函數的時候加入正則化懲罰項,用來去掉變異,入值比較大說明要去掉數據中的變異,神經網絡過于強大的,過擬合的風險越大
?
softmax函數,又稱為歸一化指數函數 目的是將分類的結果以概率的形式展現出來。
?歸一化處理就是將轉化后的結果除以所有轉換后結果之和,可以理解為轉化后結果占總數的百分比,這樣就可以得到近似的概率。
?
?通過exp映射,將差異放大,x=3.2, e^x = 24.5, x=5.1, e^5.1 = 164,依次類推。
通過歸一化normalize得到概率值24.5/(0.18+164+24.5) =0.13
屬于cat得分24.5,car:164,frog:0.18,那么屬于cat的概率即為24.5/(0.18+164+24.5) =0.13,
屬于car的概率為164/(0.18+164+24.5) =0.87
歸一化公式就是:先x=3.2, e^x = 24.5, x=5.1, e^5.1 = 164,x=-1.7, e^(-1.7) = 0.18
? ? ? ? ? ? ? ? ? ? ? ? ? 然后24.5/(0.18+164+24.5) =0.13
第一步得到,計算各個得分映射e^sk,第二步,再求出某個得分的概率
通過對數函數計算損失值,概率越接近1說明判斷越準確,對數函數越接近0,損失越小。
回歸任務由得分值計算損失,分類任務由概率值計算損失
得到x,給一個w,就能計算損失,神經網絡就是怎么樣調整W,才能使損失變小,這就是一種優化。
?hinge loss :損失函數
不管我們的模型如何設計,前向傳播只需要一步步計算下去就可以得到一個結果,但這個結果不一定是我們想要的結果。正向傳播得到Loss值,再把Loss值反向傳播,并對神經網絡的W參數進行更新。其中反向傳播正是神經網絡的要點所在。
反向傳播
?反向傳播簡單來講就是一個鏈式求導,通過鏈式求導來確定參數進行調參(這里指參數而非超參數)來確定最佳的參數。上面我們討論的是簡單情況,在實際的模型中,我們一般可能會用到多層神經網絡,但歸根結底其實還是進行求導,理解了導數的定義也就理解了什么是反向傳播。
?
?
反向傳播例子
?紅色數據代表梯度,綠色代表輸入數據
?將x=1.37帶入df/dx = -1/x^2? = -0.53,(x+1)' = 1, 由于鏈式求導兩個偏導相乘
?所以前一級梯度,-0.53*1 = -0.53.
神經網絡結構
全連接指神經元之間全部連接,神經網絡的作用就是提取特征。
輸入層神經元的個數由樣本決定,一個樣本 x 由 d 個屬性來描述,那輸入層就有 d 個神經元。
輸入層神經元與隱層神經元之間全互連
激活函數:非線性變換
?解決過擬合:神經網絡過于復雜,會導致過擬合
?DROP-OUT解決過擬合,訓練時殺死某些神經元,即神經元W參數不改變,減少復雜的,并且每次訓練時是隨機選取一部分神經元殺死,不是固定的。
參考博客:
神經網絡15分鐘入門!——反向傳播到底是怎么傳播的? - 知乎 (zhihu.com)
總結
以上是生活随笔為你收集整理的必备算法基础——神经网络的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 第六届蓝桥杯大赛个人赛决赛(软件类)真题
- 下一篇: 行流 - 通用;仅使用库存接口开单 a