亚洲天堂网_国产中出_日韩激情网_97se.com_中国亚洲老少妇色视频

資源共享分類
通信信號 圖像語音 神經網絡 智能優化 控制器 數值仿真 數學建模 其他專業

微信:HuangL1121
Q Q:1224848052
團隊:嘉興麥特萊博軟件開發工作室
地址:嘉興港區
 
智能優化
MATLAB代做|MATLAB專業代做|深度學習常見算法的介紹和比較
來源:本站    日期:2019/8/3    瀏覽量:1224  

功能描述:

很多人都有誤解,以為深度學習比機器學習先進。其實深度學習是機器學習的一個分支。可以理解為具有多層結構的模型。具體的話,深度學習是機器學習中的具有深層結構的神經網絡算法,即機器學習>神經網絡算法>深度神經網絡(深度學習)。 
關于深度學習的理論推導,太大太復雜,一些常見的深度學習算法本人也是模模糊糊的,看過好多次的,隔斷時間就會忘記,現在對其系統的整理一下(從歷史,致命問題出發,再看具體算法的思想,框架,優缺點和改進的方向,又總結了CNN和RNN的比較)。

一、歷史:多層感知機到神經網絡,再到深度學習
神經網絡技術起源于上世紀五、六十年代,當時叫感知機(perceptron),擁有輸入層、輸出層和一個隱含層。輸入的特征向量通過隱含層變換達到輸出層,在輸出層得到分類結果。(扯一個不相關的:由于計算技術的落后,當時感知器傳輸函數是用線拉動變阻器改變電阻的方法機械實現的,腦補一下科學家們扯著密密麻麻的導線的樣子…) 
心理學家Rosenblatt提出的單層感知機有一個嚴重得不能再嚴重的問題,即它對稍復雜一些的函數都無能為力(比如最為典型的“異或”操作)。 
這個缺點直到上世紀八十年代才被Rumelhart、Williams、Hinton、LeCun等人發明的多層感知機解決,多層感知機解決了之前無法模擬異或邏輯的缺陷,同時更多的層數也讓網絡更能夠刻畫現實世界中的復雜情形。 
多層感知機可以擺脫早期離散傳輸函數的束縛,使用sigmoid或tanh等連續函數模擬神經元對激勵的響應,在訓練算法上則使用Werbos發明的反向傳播BP算法。這就是我們現在所說的【神經網絡】,BP算法也叫BP神經網絡具體過程可參見我轉載的文章(http://blog.csdn.net/abc200941410128/article/details/78708319)。 
但是BP神經網絡(多層感知機)面臨在致命問題(見下節)。隨著神經網絡層數的加深,有兩個重大問題:一是優化函數越來越容易陷入局部最優解,并且這個“陷阱”越來越偏離真正的全局最優。利用有限數據訓練的深層網絡,性能還不如較淺層網絡。同時,另一個不可忽略的問題是“梯度消失”現象更加嚴重。 
2006年,Hinton利用預訓練方法緩解了局部最優解問題,將隱含層推動到了7層,神經網絡真正意義上有了“深度”,由此揭開了深度學習的熱潮,隨后的DBN、CNN、RNN、LSTM等才逐漸出現。 
這里的“深度”并沒有固定的定義——在語音識別中4層網絡就能夠被認為是“較深的”,而在圖像識別中20層以上的網絡屢見不鮮。 
為了克服梯度消失,ReLU、maxout等傳輸函數代替了sigmoid,形成了如今DNN的基本形式。單從結構上來說,全鏈接的多層感知機是沒有任何區別的。

二、深度神經網絡的致命問題
隨著神經網絡層數的加深,有三個重大問題:一是非凸優化問題,即優化函數越來越容易陷入局部最優解;二是(Gradient Vanish)梯度消失問題;三是過擬合問題。

2.1 非凸優化問題
線性回歸,本質是一個多元一次函數的優化問題,設f(x,y)=x+y 
多層神經網絡,本質是一個多元K次函數優化問題,設f(x,y)=xy 
在線性回歸當中,從任意一個點出發搜索,最終必然是下降到全局最小值附近的。所以置0也無妨(這也是為什么我們往往解線性回歸方程時初值為0)。 
而在多層神經網絡中,從不同點出發,可能最終困在局部最小值。局部最小值是神經網絡結構帶來的揮之不去的陰影,隨著隱層層數的增加,非凸的目標函數越來越復雜,局部最小值點成倍增長,利用有限數據訓練的深層網絡,性能還不如較淺層網絡。。避免的方法一般是權值初始化。為了統一初始化方案,通常將輸入縮放到[−1,1],但是仍然無法保證能夠達到全局最優,其實這也是科學家們一直在研究而未解決的問題。 
所以,從本質上來看,深度結構帶來的非凸優化仍然不能解決(包括現在的各類深度學習算法和其他非凸優化問題都是如此),這限制著深度結構的發展。

2.2 (Gradient Vanish)梯度消失問題
這個問題實際上是由激活函數不當引起的,多層使用Sigmoid系函數,會使得誤差從輸出層開始呈指數衰減。在數學上,激活函數的作用就是將輸入數據映射到0到1上(tanh是映射-1到+1上)。至于映射的原因,除了對數據進行正則化外,大概是控制數據,使其只在一定的范圍內。當然也有另外細節作用,例如Sigmoid(tanh)中,能在激活的時候,更關注數據在零(或中心點)前后的細小變化,而忽略數據在極端時的變化,例如ReLU還有避免梯度消失的作用。通常,Sigmoid(tanh)多用于全連接層,而ReLU多用于卷積層。 

   上一篇: MATLAB代做|FPGA代做-最新神經網絡,efficientNET網絡的python源碼程序    下一篇:    
   相關閱讀
· MATLAB代做|FPGA代做|simulink代做—— 2020/7/14
· MATLAB代做|FPGA代做|simulink代做—— 2020/5/30
· MATLAB代做|FPGA代做|simulink代做—— 2020/5/30
· MATLAB代做|FPGA代做|simulink代做—— 2020/2/1
· MATLAB代做|FPGA代做|simulink代做—— 2019/12/11
· MATLAB代做|FPGA代做|simulink代做—— 2019/12/11
· MATLAB代做|FPGA代做|simulink代做—— 2019/12/11
· Alexnet網絡結構 2019/11/20
· MATLAB代做|FPGA代做|simulink代做—— 2019/9/15
· MATLAB代做|FPGA代做|simulink代做—— 2019/8/29
Copyright 2017-2025 © 嘉興麥特萊博軟件開發工作室
  • 網站備案號:浙ICP備18008591號-1