「人工智能」No.4 初識深度學習

【導讀:當今人類即將或者已然了進入智能時代,這是·情報通·人工智能科普系列第[4]篇文章,歡迎閱讀和收藏!】

一、什麼是深度學習?

深度學習( Deep Learning )是利用多層神經網絡結構,從大數據中學習現實世界中各類事物能直接用於計算機計算的表示形式(如圖像中的事物、音頻中的聲音等),被認為是智能機器可能的“大腦結構”。

Learning :讓計算機自動調整函數參數以擬合想要的函數的過程。

Deep :多個函數進行嵌套,構成一個多層神經網絡,利用訓練算法調整有效地自動調整函數參數。

簡單地說深度學習就是:使用多層神經網絡來進行機器學習。同機器學習方法一樣,深度機器學習方法也有監督學習與無監督學習之分.不同的學習框架下建立的學習模型很是不同.例如,卷積神經網絡( Convolutional neural networks ,簡稱 CNNs )就是一種深度的監督學習下的機器學習模型,而深度置信網絡( deep belief networks ,簡稱 DBNs )就是一種無監督學習下的機器學習模型。

二、深度學習訓練過程

1 )使用自下上升非監督學習(就是從底層開始,一層一層的往頂層訓練)

採用無標定數據(有標定數據也可)分層訓練各層參數,這一步可以看作是一個無監督訓練過程,是和傳統神經網絡區別最大的部分(這個過程可以看作是 feature learning 過程)。

具體的,先用無標定數據訓練第一層,訓練時先學習第一層的參數(這一層可以看作是得到一個使得輸出和輸入差別最小的三層神經網絡的隱層),由於模型 capacity 的限制以及稀疏性約束,使得得到的模型能夠學習到數據本身的結構,從而得到比輸入更具有表示能力的特徵;在學習得到第 n-1 層後,將 n-1 層的輸出作為第 n 層的輸入,訓練第 n 層,由此分別得到各層的參數。

2 )自頂向下的監督學習(就是通過帶標籤的數據去訓練,誤差自頂向下傳輸,對網絡進行微調)

基於第一步得到的各層參數進一步 fine-tune 整個多層模型的參數,這一步是一個有監督訓練過程;第一步類似神經網絡的隨機初始化初值過程,由於 DL 的第一步不是隨機初始化,而是通過學習輸入數據的結構得到的,因而這個初值更接近全局最優,從而能夠取得更好的效果;所以 deep learning 效果好很大程度上歸功於第一步的 feature learning 過程。

三、深度學習模型

深度學習模型在網絡結構上與傳統的神經網絡相似,都是分層的網絡結構。但是,深度學習採用了與傳統神經網絡不同的訓練機制。

Ø 深度神經網絡 DNN

深度神經網絡 (Deep Neural Network) 是層數很深的全連接網絡,層數決定了神經網絡對數據的刻畫能力——利用每層更少的神經元擬合更加複雜的函數。 2006 年 Hinton 利用預訓練方法緩解了局部最優解問題,將隱含層推動到了 7 層,揭開了深度學習的浪潮。(注意這裡的“深度”並沒有固定的定義——在語音識別領域, 4 層就認為是比較深的了;而在圖像識別領域 20 層的模型屢見不鮮)。

優點:

• 更好的數據刻畫能力。

缺點:

• 參數數量膨脹(訓練開銷大),沒有考慮數據的固有局部特徵(如圖像中的輪廓、邊界等等)。

Ø 卷積神經網絡 CNN

卷積神經網絡( Convolutional Neural Network , CNN )更改了神經網絡的結構,不再是全連接的結構了,大量的減少了網絡的參數;同時,通過參數共享進一步減少了網絡參數。它考慮到了空間結構和局部特徵,非常適用於圖像處理領域。

優點:

• 具有位移、縮放以及其他形式扭曲不變性

• 隱式地從訓練數據中進行學習,避免了顯式的特徵抽取

• 同一特徵映射面上的神經元權值相同,所以網絡可以並行學習

• 佈局更接近於實際的生物神經網絡,權值共享降低了網絡的複雜性,特別是多維輸入向量的圖像可以直接輸入網絡這一特點避免了特徵提取和分類過程中數據重建的複雜度,在語音識別和圖像處理方面有著獨特的優越性。

Ø 循環神經網絡 RNN

在普通的全連接網絡或者 CNN 中,每層神經元的信號只能向上傳播,樣本的處理在各個時刻獨立,因此又稱為前饋神經網絡。而在循環神經網絡 (recursive neural network , RNN) 中,神經元的輸出可以在下一個時間戳直接作用到自身;即第 i 層的神經元在 m 時刻的輸入包含 i-1 層在該時刻的輸出以及其自身在 m-1 時刻的輸出。在此基礎上發展出了長短期記憶 LSTM 網絡。

優點:

• 可以對時間序列上的變化建模,適用於處理語音、自然語言等領域 。

Ø 深度置信網絡 DBN

深度置信網絡( deep belief networks , DBN )是一種包含多層隱單元的概率生成模型,可被視為多層簡單學習模型組合而成的複合模型。可以作為深度神經網絡的預訓練部分,併為網絡提供初始權重,再使用反向傳播或者其他判定算法作為調優的手段。

「人工智能」No.4 初識深度學習

四、深度學習應用

從計算機視覺到自然語言處理,在過去的幾年裡,深度學習技術被應用到了數以百計的實際問題中。諸多案例也已經證明,深度學習能讓工作比之前做得更好。

1 、計算機視覺

在計算機視覺領域,深度學習最初成功的應用是在數據降維、手寫數字識別等問題中。近年來,深度學習在更廣泛的計算機視覺和模式識別問題中,例如圖像識別、圖像去噪和修復、運動建模、動作識別、物體跟蹤、視覺建模、場景分析等,展現出了有效性。一個案例是 2016 年,多倫多大學辛頓教授等採用深度卷積神經網絡在 ImageNet 圖像識別競賽中將錯誤率從 26 %降低到 15 %。

2 、語音識別

微軟研究人員通過與 hinton 合作,首先將 RBM 和 DBN 引入到語音識別聲學模型訓練中,並且在大詞彙量語音識別系統中獲得巨大成功,使得語音識別的錯誤率相對減低 30% 。但是, DNN 還沒有有效的並行快速算法,很多研究機構都是在利用大規模數據語料通過 GPU 平臺提高 DNN 聲學模型的訓練效率。在國際上, IBM 、 google 等公司都快速進行了 DNN 語音識別的研究,並且速度飛快。國內方面,阿里巴巴,科大訊飛、百度、中科院自動化所等公司或研究單位,也在進行深度學習在語音識別上的研究。

3 、自然語言處理等其他領域

深度學習在自然語言處理方面也具有巨大的潛力,儘管目前的研究還沒有取得像語音識別那樣的突破性成果。最近,辛頓領導的研究團隊基於深度學習方法從大量分子中找到可能成為藥物的分子,這項成果由此獲得了默克( Merck )公司贊助的一項大獎。事實上,涉及到大數據智能分析和預測的領域都可能找到深度學習的用武之地,這樣的領域包括(但不侷限於):互聯網行為分析、文本分析、市場監測、自動控制(如無人駕駛汽車)等等。


分享到:


相關文章: