『壹』 神經網路、深度學習、機器學習是什麼有什麼區別和聯系
深度學習是由深層神經網路+機器學習造出來的詞。深度最早出現在deep belief network(深度(層)置信網路)。其出現使得沉寂多年的神經網路又煥發了青春。GPU使得深層網路隨機初始化訓練成為可能。resnet的出現打破了層次限制的魔咒,使得訓練更深層次的神經網路成為可能。
深度學習是神經網路的唯一發展和延續。在現在的語言環境下,深度學習泛指神經網路,神經網路泛指深度學習。
在當前的語境下沒有區別。
定義
生物神經網路主要是指人腦的神經網路,它是人工神經網路的技術原型。人腦是人類思維的物質基礎,思維的功能定位在大腦皮層,後者含有大約10^11個神經元,每個神經元又通過神經突觸與大約103個其它神經元相連,形成一個高度復雜高度靈活的動態網路。
作為一門學科,生物神經網路主要研究人腦神經網路的結構、功能及其工作機制,意在探索人腦思維和智能活動的規律。
人工神經網路是生物神經網路在某種簡化意義下的技術復現,作為一門學科,它的主要任務是根據生物神經網路的原理和實際應用的需要建造實用的人工神經網路模型,設計相應的學習演算法,模擬人腦的某種智能活動,然後在技術上實現出來用以解決實際問題。
因此,生物神經網路主要研究智能的機理;人工神經網路主要研究智能機理的實現,兩者相輔相成。
『貳』 神經網路優缺點,
優點:
(1)具有自學習功能。例如實現圖像識別時,只在先把許多不同的圖像樣板和對應的應識別的結果輸入人工神經網路,網路就會通過自學習功能,慢慢學會識別類似的圖像。
自學習功能對於預測有特別重要的意義。預期未來的人工神經網路計算機將為人類提供經濟預測、市場預測、效益預測,其應用前途是很遠大的。
(2)具有聯想存儲功能。用人工神經網路的反饋網路就可以實現這種聯想。
(3)具有高速尋找優化解的能力。尋找一個復雜問題的優化解,往往需要很大的計算量,利用一個針對某問題而設計的反饋型人工神經網路,發揮計算機的高速運算能力,可能很快找到優化解。
缺點:
(1)最嚴重的問題是沒能力來解釋自己的推理過程和推理依據。
(2)不能向用戶提出必要的詢問,而且當數據不充分的時候,神經網路就無法進行工作。
(3)把一切問題的特徵都變為數字,把一切推理都變為數值計算,其結果勢必是丟失信息。
(4)理論和學習演算法還有待於進一步完善和提高。
(2)深度置信網路和神經網路哪個更好擴展閱讀:
神經網路發展趨勢
人工神經網路特有的非線性適應性信息處理能力,克服了傳統人工智慧方法對於直覺,如模式、語音識別、非結構化信息處理方面的缺陷,使之在神經專家系統、模式識別、智能控制、組合優化、預測等領域得到成功應用。
人工神經網路與其它傳統方法相結合,將推動人工智慧和信息處理技術不斷發展。近年來,人工神經網路正向模擬人類認知的道路上更加深入發展,與模糊系統、遺傳演算法、進化機制等結合,形成計算智能,成為人工智慧的一個重要方向,將在實際應用中得到發展。
將信息幾何應用於人工神經網路的研究,為人工神經網路的理論研究開辟了新的途徑。神經計算機的研究發展很快,已有產品進入市場。光電結合的神經計算機為人工神經網路的發展提供了良好條件。
神經網路在很多領域已得到了很好的應用,但其需要研究的方面還很多。其中,具有分布存儲、並行處理、自學習、自組織以及非線性映射等優點的神經網路與其他技術的結合以及由此而來的混合方法和混合系統,已經成為一大研究熱點。
由於其他方法也有它們各自的優點,所以將神經網路與其他方法相結合,取長補短,繼而可以獲得更好的應用效果。目前這方面工作有神經網路與模糊邏輯、專家系統、遺傳演算法、小波分析、混沌、粗集理論、分形理論、證據理論和灰色系統等的融合。
參考資料:網路-人工神經網路
『叄』 深度學習和神經網路的區別是什麼
從廣義上說深度學習的網路結構也是多層神經網路的一種。
傳統意義上的多層神經網路是只有輸入層、隱藏層、輸出層。其中隱藏層的層數根據需要而定,沒有明確的理論推導來說明到底多少層合適。
而深度學習中最著名的卷積神經網路CNN,在原來多層神經網路的基礎上,加入了特徵學習部分,這部分是模仿人腦對信號處理上的分級的。具體操作就是在原來的全連接的層前面加入了部分連接的卷積層與降維層,而且加入的是一個層級。
輸入層 - 卷積層 -降維層 -卷積層 - 降維層 -- .... -- 隱藏層 -輸出層
簡單來說,原來多層神經網路做的步驟是:特徵映射到值。特徵是人工挑選。
深度學習做的步驟是 信號->特徵->值。 特徵是由網路自己選擇。
『肆』 深度學習與神經網路有什麼區別
找深度學習和神經網路的不同點,其實主要的就是:
原來多層神經網路做的步驟是:特徵映射到值。特徵是人工挑選。
深度學習做的步驟是 信號->特徵->值。 特徵是由網路自己選擇。
另外,深度學習作為機器學習的領域中一個新的研究方向,在被引進機器學習後,讓機器學習可以更加的接近最初的目標,也就是人工智慧。
深度學習主要就是對樣本數據的內在規律還有表示層次的學習,這些學習過程中獲得的信息對諸如文字,圖像和聲音等數據的解釋有很大的幫助。它的最終目標是讓機器能夠像人一樣具有分析學習能力,能夠識別文字、圖像和聲音等數據。 深度學習是一個復雜的機器學習演算法,在語音和圖像識別方面取得的效果,遠遠超過先前相關技術。
深度學習在搜索技術,數據挖掘,機器學習,機器翻譯,自然語言處理,多媒體學習,語音,推薦和個性化技術,以及其他相關領域都取得了很多成果。深度學習使機器模仿視聽和思考等人類的活動,解決了很多復雜的模式識別難題,使得人工智慧相關技術取得了很大進步。
而神經網路則是可以分為兩種,一種是生物神經網路,而另一種則是人工神經網路。
生物神經網路就是生物的大腦神經元、主要是由細胞以及觸點組成的,主要的作用就是讓生物產生意識,或者是幫助生物實現思考還有行動的目的。
神經網路可以指向兩種,一個是生物神經網路,一個是人工神經網路。
人工神經網路(Artificial Neural Networks,簡寫為ANNs)也簡稱為神經網路(NNs)或稱作連接模型(Connection Model),它是一種模仿動物神經網路行為特徵,進行分布式並行信息處理的演算法數學模型。這種網路依靠系統的復雜程度,通過調整內部大量節點之間相互連接的關系,從而達到處理信息的目的。
人工神經網路:是一種應用類似於大腦神經突觸聯接的結構進行信息處理的數學模型。在工程與學術界也常直接簡稱為「神經網路」或類神經網路。
『伍』 神經網路與深度神經網路有什麼區別
深度學習的概念源於人工神經網路的研究。含多隱層的多層感知器就是一種深度學習結構。深度學習通過組合低層特徵形成更加抽象的高層表示屬性類別或特徵,以發現數據的分布式特徵表示。
多層神經網路是指單計算層感知器只能解決線性可分問題,而大量的分類問題是線性不可分的。克服單計算層感知器這一局限性的有效辦法是,在輸入層與輸出層之間引入隱層(隱層個數可以大於或等於1)作為輸入模式「的內部表示」,單計算層感知器變成多(計算)層感知器。
補充:
深度學習的概念由Hinton等人於2006年提出。基於深信度網(DBN)提出非監督貪心逐層訓練演算法,為解決深層結構相關的優化難題帶來希望,隨後提出多層自動編碼器深層結構。此外Lecun等人提出的卷積神經網路是第一個真正多層結構學習演算法,它利用空間相對關系減少參數數目以提高訓練性能。
深度學習是機器學習研究中的一個新的領域,其動機在於建立、模擬人腦進行分析學習的神經網路,它模仿人腦的機制來解釋數據,例如圖像,聲音和文本。
『陸』 深度學習是什麼求科普。
深度學習是一類機器學習方法,可實例化為深度學習器,所對應的設計、訓練和使用方法集合稱為深度學習。
深度學習器由若干處理層組成,每層包含至少一個處理單元,每層輸出為數據的一種表徵,且表徵層次隨處理層次增加而提高。
深度的定義是相對的。針對某具體場景和學習任務,若學習器的處理單元總數和層數分別為M和N,學習器所保留的信息量或任務性能超過任意層數小於N且單元總數為M的學習器,則該學習器為嚴格的或狹義的深度學習器,其對應的設計、訓練和使用方法集合為嚴格的或狹義的深度學習。
廣義的深度學習器及對應的深度學習方法可依據經驗和局部最優化設計,不進行上述嚴格的遍歷比較。
我們最近和中科院專家聯合推出了AI深度學習課程,感興趣的可以了解一下。
『柒』 深度學習與神經網路有什麼區別
深度學習與神經網路關系
2017-01-10
最近開始學習深度學習,基本上都是zouxy09博主的文章,寫的蠻好,很全面,也會根據自己的思路,做下刪減,細化。
五、Deep Learning的基本思想
假設我們有一個系統S,它有n層(S1,…Sn),它的輸入是I,輸出是O,形象地表示為: I =>S1=>S2=>…..=>Sn => O,如果輸出O等於輸入I,即輸入I經過這個系統變化之後沒有任何的信息損失(呵呵,大牛說,這是不可能的。資訊理論中有個「信息逐層丟失」的說法(信息處理不等式),設處理a信息得到b,再對b處理得到c,那麼可以證明:a和c的互信息不會超過a和b的互信息。這表明信息處理不會增加信息,大部分處理會丟失信息。當然了,如果丟掉的是沒用的信息那多好啊),保持了不變,這意味著輸入I經過每一層Si都沒有任何的信息損失,即在任何一層Si,它都是原有信息(即輸入I)的另外一種表示。現在回到我們的主題Deep Learning,我們需要自動地學習特徵,假設我們有一堆輸入I(如一堆圖像或者文本),假設我們設計了一個系統S(有n層),我們通過調整系統中參數,使得它的輸出仍然是輸入I,那麼我們就可以自動地獲取得到輸入I的一系列層次特徵,即S1,…, Sn。
對於深度學習來說,其思想就是對堆疊多個層,也就是說這一層的輸出作為下一層的輸入。通過這種方式,就可以實現對輸入信息進行分級表達了。
另外,前面是假設輸出嚴格地等於輸入,這個限制太嚴格,我們可以略微地放鬆這個限制,例如我們只要使得輸入與輸出的差別盡可能地小即可,這個放鬆會導致另外一類不同的Deep Learning方法。上述就是Deep Learning的基本思想。
六、淺層學習(Shallow Learning)和深度學習(Deep Learning)
淺層學習是機器學習的第一次浪潮。
20世紀80年代末期,用於人工神經網路的反向傳播演算法(也叫Back Propagation演算法或者BP演算法)的發明,給機器學習帶來了希望,掀起了基於統計模型的機器學習熱潮。這個熱潮一直持續到今天。人們發現,利用BP演算法可以讓一個人工神經網路模型從大量訓練樣本中學習統計規律,從而對未知事件做預測。這種基於統計的機器學習方法比起過去基於人工規則的系統,在很多方面顯出優越性。這個時候的人工神經網路,雖也被稱作多層感知機(Multi-layer Perceptron),但實際是種只含有一層隱層節點的淺層模型。
20世紀90年代,各種各樣的淺層機器學習模型相繼被提出,例如支撐向量機(SVM,Support Vector Machines)、 Boosting、最大熵方法(如LR,Logistic Regression)等。這些模型的結構基本上可以看成帶有一層隱層節點(如SVM、Boosting),或沒有隱層節點(如LR)。這些模型無論是在理論分析還是應用中都獲得了巨大的成功。相比之下,由於理論分析的難度大,訓練方法又需要很多經驗和技巧,這個時期淺層人工神經網路反而相對沉寂。
深度學習是機器學習的第二次浪潮。
2006年,加拿大多倫多大學教授、機器學習領域的泰斗Geoffrey Hinton和他的學生RuslanSalakhutdinov在《科學》上發表了一篇文章,開啟了深度學習在學術界和工業界的浪潮。這篇文章有兩個主要觀點:1)多隱層的人工神經網路具有優異的特徵學習能力,學習得到的特徵對數據有更本質的刻畫,從而有利於可視化或分類;2)深度神經網路在訓練上的難度,可以通過「逐層初始化」(layer-wise pre-training)來有效克服,在這篇文章中,逐層初始化是通過無監督學習實現的。
當前多數分類、回歸等學習方法為淺層結構演算法,其局限性在於有限樣本和計算單元情況下對復雜函數的表示能力有限,針對復雜分類問題其泛化能力受到一定製約。深度學習可通過學習一種深層非線性網路結構,實現復雜函數逼近,表徵輸入數據分布式表示,並展現了強大的從少數樣本集中學習數據集本質特徵的能力。(多層的好處是可以用較少的參數表示復雜的函數)
而為了克服神經網路訓練中的問題,DL採用了與神經網路很不同的訓練機制。傳統神經網路(這里作者主要指前向神經網路)中,採用的是back propagation的方式進行,簡單來講就是採用迭代的演算法來訓練整個網路,隨機設定初值,計算當前網路的輸出,然後根據當前輸出和label之間的差去改變前面各層的參數,直到收斂(整體是一個梯度下降法)。而deep learning整體上是一個layer-wise的訓練機制。這樣做的原因是因為,如果採用back propagation的機制,對於一個deep network(7層以上),殘差傳播到最前面的層已經變得太小,出現所謂的gradient diffusion(梯度擴散)。這個問題我們接下來討論。
八、Deep learning訓練過程
8.1、傳統神經網路的訓練方法為什麼不能用在深度神經網路
BP演算法作為傳統訓練多層網路的典型演算法,實際上對僅含幾層網路,該訓練方法就已經很不理想。深度結構(涉及多個非線性處理單元層)非凸目標代價函數中普遍存在的局部最小是訓練困難的主要來源。
BP演算法存在的問題:
(1)梯度越來越稀疏:從頂層越往下,誤差校正信號越來越小;
(2)收斂到局部最小值:尤其是從遠離最優區域開始的時候(隨機值初始化會導致這種情況的發生);
(3)一般,我們只能用有標簽的數據來訓練:但大部分的數據是沒標簽的,而大腦可以從沒有標簽的的數據中學習;
8.2、deep learning訓練過程
如果對所有層同時訓練,時間復雜度會太高;如果每次訓練一層,偏差就會逐層傳遞。這會面臨跟上面監督學習中相反的問題,會嚴重欠擬合(因為深度網路的神經元和參數太多了)。
2006年,hinton提出了在非監督數據上建立多層神經網路的一個有效方法,簡單的說,分為兩步,一是每次訓練一層網路,二是調優,使原始表示x向上生成的高級表示r和該高級表示r向下生成的x'盡可能一致。方法是:
1)首先逐層構建單層神經元,這樣每次都是訓練一個單層網路。
2)當所有層訓練完後,Hinton使用wake-sleep演算法進行調優。
將除最頂層的其它層間的權重變為雙向的,這樣最頂層仍然是一個單層神經網路,而其它層則變為了圖模型。向上的權重用於「認知」,向下的權重用於「生成」。然後使用Wake-Sleep演算法調整所有的權重。讓認知和生成達成一致,也就是保證生成的最頂層表示能夠盡可能正確的復原底層的結點。比如頂層的一個結點表示人臉,那麼所有人臉的圖像應該激活這個結點,並且這個結果向下生成的圖像應該能夠表現為一個大概的人臉圖像。Wake-Sleep演算法分為醒(wake)和睡(sleep)兩個部分。
1)wake階段:認知過程,通過外界的特徵和向上的權重(認知權重)產生每一層的抽象表示(結點狀態),並且使用梯度下降修改層間的下行權重(生成權重)。也就是「如果現實跟我想像的不一樣,改變我的權重使得我想像的東西就是這樣的」。
2)sleep階段:生成過程,通過頂層表示(醒時學得的概念)和向下權重,生成底層的狀態,同時修改層間向上的權重。也就是「如果夢中的景象不是我腦中的相應概念,改變我的認知權重使得這種景象在我看來就是這個概念」。
deep learning訓練過程具體如下:
1)使用自下上升非監督學習(就是從底層開始,一層一層的往頂層訓練):
採用無標定數據(有標定數據也可)分層訓練各層參數,這一步可以看作是一個無監督訓練過程,是和傳統神經網路區別最大的部分(這個過程可以看作是feature learning過程):
具體的,先用無標定數據訓練第一層,訓練時先學習第一層的參數(這一層可以看作是得到一個使得輸出和輸入差別最小的三層神經網路的隱層),由於模型capacity的限制以及稀疏性約束,使得得到的模型能夠學習到數據本身的結構,從而得到比輸入更具有表示能力的特徵;在學習得到第n-1層後,將n-1層的輸出作為第n層的輸入,訓練第n層,由此分別得到各層的參數;
2)自頂向下的監督學習(就是通過帶標簽的數據去訓練,誤差自頂向下傳輸,對網路進行微調):
基於第一步得到的各層參數進一步fine-tune整個多層模型的參數,這一步是一個有監督訓練過程;第一步類似神經網路的隨機初始化初值過程,由於DL的第一步不是隨機初始化,而是通過學習輸入數據的結構得到的,因而這個初值更接近全局最優,從而能夠取得更好的效果;所以deep learning效果好很大程度上歸功於第一步的feature learning過程。
深度置信網路(Deep Belief Network)
DBNs是一個概率生成模型,與傳統的判別模型的神經網路相對,生成模型是建立一個觀察數據和標簽之間的聯合分布,對P(Observation|Label)和 P(Label|Observation)都做了評估,而判別模型僅僅而已評估了後者,也就是P(Label|Observation)。
DBNs由多個限制玻爾茲曼機(Restricted Boltzmann Machines)層組成,一個典型的神經網路類型如圖所示。這些網路被「限制」為一個可視層和一個隱層,層間存在連接,但層內的單元間不存在連接。隱層單元被訓練去捕捉在可視層表現出來的高階數據的相關性。
DBNs的靈活性使得它的拓展比較容易。一個拓展就是卷積DBNs(Convolutional Deep Belief Networks(CDBNs))。DBNs並沒有考慮到圖像的2維結構信息,因為輸入是簡單的從一個圖像矩陣一維向量化的。而CDBNs就是考慮到了這個問題,它利用鄰域像素的空域關系,通過一個稱為卷積RBMs的模型區達到生成模型的變換不變性,而且可以容易得變換到高維圖像。DBNs並沒有明確地處理對觀察變數的時間聯系的學習上,雖然目前已經有這方面的研究,例如堆疊時間RBMs,以此為推廣,有序列學習的bbed temporalconvolutionmachines,這種序列學習的應用,給語音信號處理問題帶來了一個讓人激動的未來研究方向。
目前,和DBNs有關的研究包括堆疊自動編碼器,它是通過用堆疊自動編碼器來替換傳統DBNs裡面的RBMs。這就使得可以通過同樣的規則來訓練產生深度多層神經網路架構,但它缺少層的參數化的嚴格要求。與DBNs不同,自動編碼器使用判別模型,這樣這個結構就很難采樣輸入采樣空間,這就使得網路更難捕捉它的內部表達。但是,降噪自動編碼器卻能很好的避免這個問題,並且比傳統的DBNs更優。它通過在訓練過程添加隨機的污染並堆疊產生場泛化性能。訓練單一的降噪自動編碼器的過程和RBMs訓練生成模型的過程一樣。