深度學習的關鍵術語

摘要: 本文着重介紹了深度學習的一些關鍵術語,其中包括生物神經元,多層感知器(MLP),前饋神經網絡和遞歸神經網絡。對於初學者來講,掌握它們能夠防止在學習請教時的尷尬~算法

深度學習已經成爲編程界的一股潮流,由於其在許多領域取得了使人難以置信的成功,使其在研究和工業領域廣受歡迎。那麼到底什麼是深度學習呢?深度學習是應用深層神經網絡技術:即利用具備多個隱藏層的神經網絡結構來解決問題的過程。深度學習是一個過程,如數據挖掘,它採用深度神經網絡架構,它是特定類型的機器學習算法。編程

clipboard.png

深度學習最近取得了使人吃驚的成就。但,至少在我看來,謹記一些事情是很重要的:網絡

  1. 深度學習不是萬能的——它不是一個解決全部問題的萬能的解決方案。
  2. 它不是傳說中的王牌算法——深度學習不會取代全部其餘機器學習算法和數據科學技術、或者至少它尚未證實如此。
  3. 有指望是必要的——儘管最近它在全部類型的分類問題上取得了很大進展,特別是計算機視覺和天然語言處理以及強化學習和其餘領域,當代深度學習並無擴展處處理很是複雜的問題,如「解決世界和平」。
  4. 深度學習和人工智能並非同義詞。
  5. 深度學習能夠經過附加的過程和工具來幫助解決問題,從而爲數據科學提供了極大的幫助。當從這個角度觀察時,深度學習對數據科學領域是很是有價值的補充。

clipboard.png

如上圖所示,深度學習其本質就是數據挖掘,由於(深度)神經網絡是機器學習(過程與體系結構)。一樣能夠看到的事實是,深度神經網絡與當代人工智能有很大關係,至少二者能夠交織在一塊兒(然而,它們不是同一事物,人工智能是具備許多其餘算法以及超越神經網絡的技術)。還須要注意的是深度學習/深度神經網絡與計算機視覺、天然語言處理和生成模型之間的聯繫,鑑於近年來在這些領域取得的巨大進步,深度學習和神經網絡技術的聯繫是微妙的,但這種聯繫具備特別重要的意義。架構

那麼,讓咱們來看看一些與深度學習相關的術語。機器學習

1. 深度學習:函數

如上所述,深度學習是應用深度神經網絡技術解決問題的過程。深度神經網絡是具備最小隱藏層的神經網絡(見下文)。像數據挖掘同樣,深度學習是指一個過程,它採用深層神經網絡體系結構,其是特定類型的機器學習算法。工具

2. 人工神經網絡(ANN):學習

機器學習架構最初是由深度學習的腦神經(尤爲是神經元)所啓發的。實際上,單獨的人工神經網絡(非深度變種)已經存在了很長時間,而且歷史上可以解決某些類型的問題。然而,相對最近,神經網絡架構被設計出來,其中包括隱藏的神經元層(不只僅是輸入層和輸出層),並且這種複雜程度增長了深度學習的能力,並提供了一套更強大的問題解決工具。優化

人工神經網絡在結構上與深度神經網絡有很大的不一樣,所以沒有明確的神經網絡定義。全部人工神經網絡一般引用的特徵是擁有自適應加權集合,以及將輸入的非線性函數逼近神經元的能力。人工智能

3. 生物神經元

一般,生物神經網絡和人工神經網絡之間存在明確的聯繫。流行的出版物宣傳了人工神經網絡在某種程度上是人類(或其餘生物)大腦中發生的確切複本,但這顯然是不許確的。充其量,早期的人工神經網絡受到生物學的啓發。二者之間的抽象關係不比原子與太陽系的組成和功能之間的抽象比較明確。

也就是說,若是僅僅瞭解人工神經網絡的靈感,它確實能讓咱們看到生物神經元如何在很高的水平上工做。

clipboard.png

咱們感興趣的生物神經元的主要組成部分是:

  • 核:保存遺傳信息(即,DNA)。
  • 細胞主體:處理輸入激活,並將其轉換成輸出激活。
  • 樹突:從其餘神經元接受激活。
  • 軸突:傳遞激活到其餘神經元。
  • 軸突末梢:與相鄰的樹突造成神經元之間的突觸。

被稱爲神經遞質的化學物質而後擴散穿過軸突末端和鄰近的樹突之間的突觸間隙,構成神經傳遞。神經元的基本操做是激活神經元,處理,而後經過其軸突末端再傳播出軸突,穿過突觸間隙併到達許多接受神經元的樹突,重複這個過程。

4. 感知器

感知器是一個簡單的線性二元分類器。感知器獲取輸入和相關權重(表示相對輸入重要性),並將它們組合以產生輸出,而後用於分類。感知器已經存在了很長時間,早期的實現能夠追溯到20世紀50年代,其中第一個涉及早期的ANN實現。

5. 多層感知機(MLP)

多層感知機(MLP)是幾個徹底相鄰鏈接的感知機層的實現,造成一個簡單的前饋神經網絡(見下文)。這種多層感知機具備單感知機不具有的非線性激活功能的優點。

6. 前饋神經網絡

前饋神經網絡是神經網絡結構的最簡單形式,其中的鏈接是非週期性的。原始的人工神經網絡,前饋網絡中的信息從輸入節點(隱藏層)向輸出節點單向前進,沒有周期存在。前饋網絡不一樣於後來的常常性網絡架構(RNN)(見下文),其中鏈接造成有向循環。

7. 常常性神經網絡(RNN)

與上述前饋神經網絡相比,遞歸神經網絡的鏈接造成有向循環。這種雙向流動容許使用內部的時間狀態表示,這反過來又容許序列處理,而且提供了識別語音和手寫的能力。

8. 激活函數

在神經網絡中,激活函數經過組合網絡的加權輸入產生輸出決策邊界。激活函數的範圍是從線性到sigmoid(邏輯)再到雙曲線(相切)和超越。爲了採用反向傳播(見下文),網絡中必須利用可區分的激活函數。

9. 反向傳播

我曾經遇到過的最簡潔、最基本的反向傳播定義是數據科學家Mikio L. Braun 對Quora給出瞭如下答案:

BP只是個別錯誤的漸變降低,你能夠將神經網絡的預測與指望的輸出進行比較,而後根據神經網絡的權重計算偏差的梯度。這將給你一個參數權重空間的方向,在這個空間中偏差會變小。

clipboard.png

10. 成本函數

在訓練神經網絡時,必須評估網絡輸出的正確性。因爲咱們知道訓練數據的正確輸出,因此能夠比較訓練的輸出。成本函數衡量實際產出與訓練產出之間的差別。實際產出和預期產出之間的零成本意味着網絡一直在儘量地進行訓練,這顯然是理想的。

那麼,經過什麼機制來調整成本函數,並將其最小化呢?

11. 梯度消失

梯度降低是一種用於尋找局部函數最小值的優化算法。儘管不能保證全局最小值,但梯度降低法對於精確求解或者難以求解的函數特別有用,例如將導數設置爲零並求解。

clipboard.png

如上所述,在神經網絡的狀況下,隨機梯度降低用於對網絡參數作出明智的調整,目的是最小化成本函數,從而使網絡的實際輸出更接近於迭代地達到預期的輸出。這種迭代最小化成本過程採用的是微積分,即微分。在訓練步驟以後,網絡權重根據成本函數的梯度和網絡的當前權重來接收更新,以便下一個訓練步驟的結果可能更接近正確(經過較小的成本函數測量)。反向傳播(錯誤的後向傳播)是用於將這些更新分發給網絡的方法。

12. 消失漸變問題

反向傳播使用鏈式規則來計算梯度,其中朝向n層神經網絡的「前」(輸入)的層將其小數更新的梯度值乘以n倍,而後將該穩定值用做更新。這意味着梯度將呈指數形式降低,這是一個n值較大的問題,而前面的層次須要愈來愈多的時間進行有效訓練。

13. 卷積神經網絡

一般與計算機視覺和圖像識別相關聯,卷積神經網絡(CNN)採用卷積的數學概念來模擬生物視覺皮層的神經鏈接網格。

首先,如Denny Britz所描述的那樣,卷積能夠被認爲是圖像矩陣表示上的滑動窗口(參見下文)。

clipboard.png

這個概念在神經網絡結構中的實現致使神經元集合專用於處理圖像部分,至少在計算機視覺中被使用時。在其餘領域(如天然語言處理)中使用時,也可使用相同的方法,由於輸入(單詞,句子等)能夠排列在矩陣中並以相似的方式處理。

14. 長短時間記憶網絡(LSTM)

clipboard.png

長短時間記憶網絡(LSTM)是一種常常性神經網絡,它通過優化,能夠從相關事件之間的時間相關數據中學習,這些數據可能具備未定義或未知的時間長度。他們特殊的架構容許持久性,給ANN帶來「記憶」。LSTM網絡最近在手寫識別和自動語音識別方面取得了突破。

這只是深度學習術語的一小部分,而且隨着你對機器學習研究瞭解,許多其餘的概念正在等待你的探索。

文章原標題《deep-learning-key-terms-explained》

做者:Matthew Mayo

詳細內容請查看原文

相關文章
相關標籤/搜索