深度神经网络算法分析
深度神經(jīng)網(wǎng)絡(luò)算法分析
人工智能的分類
機器學(xué)習(xí)的類型
人工智能,機器學(xué)習(xí),深度學(xué)習(xí)的關(guān)系
人工智能是個大范圍,包括了機器學(xué)習(xí),機器學(xué)習(xí)包括了深度學(xué)習(xí)
深度學(xué)習(xí)的應(yīng)用
深度學(xué)習(xí)與傳統(tǒng)機器學(xué)習(xí)的差別
深度學(xué)習(xí)的三個基礎(chǔ)算法
深度學(xué)習(xí)與人工神經(jīng)網(wǎng)絡(luò)
一句話來說就是深度學(xué)習(xí)的基礎(chǔ)就是人工神經(jīng)網(wǎng)絡(luò),而人工神經(jīng)網(wǎng)絡(luò)是由生物神經(jīng)網(wǎng)絡(luò)的啟發(fā)得來的。
人工神經(jīng)網(wǎng)路的最小單元稱為感知機,但是現(xiàn)在常常稱為神經(jīng)元。
神經(jīng)元的內(nèi)部
神經(jīng)元是是人工神經(jīng)網(wǎng)絡(luò)的最小單元
在上圖中
- 輸入:一個向量
- 輸出:一個標(biāo)量
- 在中間部分,一個大圓,一個正方形,代表運算
- 線性變換(加權(quán)求和)
- 非線性變化(非線性函數(shù))
輸出就是由線性變換和非線性變換得到的
其實每個神經(jīng)元可以看作一個復(fù)合函數(shù),整個神經(jīng)網(wǎng)絡(luò)就是一個大的復(fù)合函數(shù)
于是,神經(jīng)元內(nèi)部的運算,就可以分開看成下面兩個函數(shù),其中w,b分別為權(quán)重和偏秩,一開始可以人為取值,隨著機器的不斷學(xué)習(xí),w和b會不斷的更新。
z=∑i=1kf(xi)=x1w1+x2w2+x3w3+.....+xkwk+ba=g(z)z=\sum_{i=1}^{k}f(x_i)=x_1w_1+x_2w_2+x_3w_3+.....+x_kw_k+b\\ a=g(z) z=i=1∑k?f(xi?)=x1?w1?+x2?w2?+x3?w3?+.....+xk?wk?+ba=g(z)
可以看出,a=f°g(x1,x2,x3.....,xk)a=f\circ g(x_1,x_2,x_3.....,x_k)a=f°g(x1?,x2?,x3?.....,xk?)的復(fù)合函數(shù)形式。
also:
通過人為設(shè)置得到的參數(shù)稱為超參數(shù)。
系統(tǒng)輸入與輸出
深度學(xué)習(xí)模型本質(zhì)上也是一個運算過程
以房價預(yù)測為例:
樣本(特征值):面積,樓層,戶型。。。。
標(biāo)簽:價格
那么通過采集得到的數(shù)據(jù)集應(yīng)該是下面這樣:
多層感知機
神經(jīng)網(wǎng)絡(luò)又被稱為多層感知機模型
上圖中一共有四層神經(jīng)模型,不算入input層,只有參與運算過程的層數(shù)才能算進去,包括output層
FC(全連接):每個神經(jīng)元都和下一層的所有神經(jīng)元相連
訓(xùn)練過程三部曲
1. 正向傳播(從input到output,計算預(yù)測值)
- 參數(shù)(w,bw,bw,b)
- 常見的激活函數(shù)
2. 反向傳播(從output到input)
- 常見的損失函數(shù)
- BP算法
3. 梯度下降
- 參數(shù)的更新過程
通過預(yù)測值和真實值之間的損失函數(shù)不斷的求偏導(dǎo)數(shù),更新w,b的值。
w=w??dww=w-\partial dww=w??dw
b=b??dbb=b-\partial dbb=b??db
- 學(xué)習(xí)率
- 梯度下降的三種方式
激活函數(shù)
在上面提到的a=g(z)a=g(z)a=g(z),其中g(shù)就是激活函數(shù),存在于非線性變換里面。通過引入激活函數(shù),使得模型具有非線性的劃分能力。將每個線性組合送入激活函數(shù),將輸出結(jié)果送入下一層神經(jīng)元的輸入。
常見的激活函數(shù):
sigmoid函數(shù):(logistic函數(shù))
早期流行的激活函數(shù),RNN-LSTM網(wǎng)絡(luò)還會用到。
f(z)=11+e?zf(z)=\displaystyle\frac1{1+e^{-z}}f(z)=1+e?z1?
特點是:
用法:
通常用來做二分類
缺點:
圖像(python 繪制):
Tanh 函數(shù)(雙切正切函數(shù))
f(x)=ex?e?xex+e?x\displaystyle f(x)=\frac{e^x-e^{-x}}{e^x+e^{-x}}f(x)=ex+e?xex?e?x?
特點:
用法:
缺點:
圖像:
Relu 函數(shù)(激活函數(shù)的重要發(fā)明)
f(x)=max(0,x)f(x)=max(0,x)f(x)=max(0,x)
特點:
用法:
深層網(wǎng)絡(luò)中隱藏層常用
缺點:
過于生猛,一言不合就會使得數(shù)據(jù)變?yōu)?,從此結(jié)點后的相關(guān)信息全部丟失。
圖像:
其實還有一種函數(shù)leaky-ReLU 函數(shù),就是在其負(fù)區(qū)間弄一定斜率的函數(shù),解決RELU函數(shù)的0區(qū)間帶來的影響,一般為max(kx,0)max(kx,0)max(kx,0),k就是leak常數(shù),一般為0.01或0.02,或通過學(xué)習(xí)得到。
also:
圖像繪制可以看sigmoid Relu and tanh函數(shù)圖像繪制
特殊的激活函數(shù)
y=xy=xy=x,僅僅用于線性回歸
總結(jié)
以上是生活随笔為你收集整理的深度神经网络算法分析的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: GeekPwn嘉年华:黑客操控POS机
- 下一篇: 带滤镜拍照的app_iPhone摄影师必