国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

DBN/DNN/ANN/SNN

2019-11-06 06:28:33
字體:
來源:轉載
供稿:網友

一、ANN與DNN區別

1、ANN與DNN背景

       傳統的神經網絡,也稱為淺層神經網絡SNN(shallow nerual network)。Deep Learning中重點研究的是深層神經網絡,也稱為DNN(Deep neural network,其中D是Deep的縮寫。無論是SNN還是DNN都屬于一類人工神經網絡ANN。DNN也是機器學習(machine learning)或感知學習(perception learning)的一個分支。

下面是摘自網上對傳統淺層ANN和DNN的描述。

1.1淺層學習是機器學習的第一次浪潮

 

       20世紀80年代末期,用于人工神經網絡的反向傳播算法(也叫Back PRopagation算法或者BP算法)的發明,給機器學習帶來了希望,掀起了基于統計模型的機器學習熱潮。這個熱潮一直持續到今天。人們發現,利用BP算法可以讓一個人工神經網絡模型從大量訓練樣本中學習統計規律,從而對未知事件做預測。這種基于統計的機器學習方法比起過去基于人工規則的系統,在很多方面顯出優越性。這個時候的人工神經網絡,雖也被稱作多層感知機(Multi-layer Perceptron),但實際是種只含有一層隱層節點的淺層模型。

        20世紀90年代,各種各樣的淺層機器學習模型相繼被提出,例如支撐向量機(SVM,Support Vector Machines)、 Boosting、最大熵方法(如LR,Logistic Regression)等。這些模型的結構基本上可以看成帶有一層隱層節點(如SVM、Boosting),或沒有隱層節點(如LR)。這些模型無論是在理論分析還是應用中都獲得了巨大的成功。相比之下,由于理論分析的難度大,訓練方法又需要很多經驗和技巧,這個時期淺層人工神經網絡反而相對沉寂。

1.2深度學習是機器學習的第二次浪潮

 

        2006年,加拿大多倫多大學教授、機器學習領域的泰斗Geoffrey Hinton和他的學生RuslanSalakhutdinov在《科學》上發表了一篇文章,開啟了深度學習在學術界和工業界的浪潮。這篇文章有兩個主要觀點:1)多隱層的人工神經網絡具有優異的特征學習能力,學習得到的特征對數據有更本質的刻畫,從而有利于可視化或分類;2)深度神經網絡在訓練上的難度,可以通過“逐層初始化”(layer-wise pre-training)來有效克服,在這篇文章中,逐層初始化是通過無監督學習實現的。

        當前多數分類、回歸等學習方法為淺層結構算法,其局限性在于有限樣本和計算單元情況下對復雜函數的表示能力有限,針對復雜分類問題其泛化能力受到一定制約。深度學習可通過學習一種深層非線性網絡結構,實現復雜函數逼近,表征輸入數據分布式表示,并展現了強大的從少數樣本集中學習數據集本質特征的能力。(多層的好處是可以用較少的參數表示復雜的函數)

 

        深度學習的實質,是通過構建具有很多隱層的機器學習模型和海量的訓練數據,來學習更有用的特征,從而最終提升分類或預測的準確性。因此,“深度模型”是手段,“特征學習”是目的。區別于傳統的淺層學習,深度學習的不同在于:1)強調了模型結構的深度,通常有5層、6層,甚至10多層的隱層節點;2)明確突出了特征學習的重要性,也就是說,通過逐層特征變換,將樣本在原空間的特征表示變換到一個新特征空間,從而使分類或預測更加容易。與人工規則構造特征的方法相比,利用大數據來學習特征,更能夠刻畫數據的豐富內在信息。

2、DNN的優點

相比傳統的SNN,DNN由于具有更多的層次結果,因而對事物的建模或抽象表現能力更強,也能模擬更復雜的模型。

3、DNN與ANN的區別

其實DNN和ANN都是一種人工神經網絡,所以可以說DNN屬于ANN的一個分支。但是過去傳統的神經網絡ANN(Artifical Neural Network),都是層次較少的網絡型結構,所以又被稱為淺層網絡(shallow neural network),DNN與傳統SNN的區別就在于其網絡層次結構更多,等復雜,因此由于其層次更多,在圖論上說就是圖的深度更深,所以被冠名為深度神經網絡(Deep Neural Network)。

References

 

http://blog.csdn.net/zouxy09/article/details/8775518

 

一、DBN與DNN區別

  1 網絡結構區別

   DBN最后的兩層是一個RBM,并且除了最后兩層,其他的層都是top-down結構的有向結構;

   DNN是一個bottom-up的結構,同時,在一般的文獻中,將DNN作為一個DBN進行訓練得到的模型還是稱為DBN(這就是為什么我一直分不清這兩種結構的原因)。

 

2.訓練算法    DBN在訓練的時候,當做一個stack RBMs進行訓練;    DNN在預訓練的時候,可以當做一個DBM進行預訓練,也可以當做一個stack autoencoder進行預訓練。在當做DBN進行預訓練之后,還要在后面添加一個輸出層,然后再使用BP算法進行訓練;而當做stack autoencoder進行預訓練之后,可以直接使用BP進行訓練。

3.參考文獻

1.Deep Neural Networks for Acoustic Modeling in Speech Recognition

總結:

DBN有一個非監督預訓練的過程,使用RBM進行權重偏置的初始化。為dnn提供較好的初始參數

DNN也同樣有使用自動編碼機對神經網絡的初始權重進行pre-training的過程啊。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 洪湖市| 镇巴县| 揭西县| 通许县| 乌兰浩特市| 高清| 邵阳市| 罗平县| 西乌| 天长市| 沈阳市| 大竹县| 道孚县| 平和县| 罗江县| 长丰县| 乐亭县| 广昌县| 时尚| 建德市| 忻州市| 东方市| 乌海市| 庄浪县| 南京市| 四子王旗| 普宁市| 开阳县| 龙山县| 民乐县| 永兴县| 襄垣县| 萨嘎县| 阿拉善左旗| 淮安市| 景宁| 昭平县| 正宁县| 阿鲁科尔沁旗| 武定县| 泸定县|