AI 人工智能的深度學習
大V吳恩達曾經說過:做AI研究就像造宇宙飛船,除了充足的燃料之外,強勁的引擎也是必不可少的。假如燃料不足,則飛船就無法進入預定軌道。而引擎不夠強勁,飛船甚至不能升空。類比于AI,深度學習模型就好像引擎,海量的訓練數據就好像燃料,這兩者對于AI而言同樣缺一不可。
深度學習是一個近幾年備受關注的研究領域,在機器學習中起著重要的作用。 深度學習通過建立、模擬人腦的分層結構來實現對外部輸入的數據進行從低級到高級的特征提取,從而能夠解釋外部數據。
深度學習
深度學習(Deep Learning)的概念源于人工神經網絡的研究。含多隱層的多層感知器就是一種深度學習結構。
深度學習也稱為深度結構學習【Deep Structured Learning】、層次學習【Hierarchical Learning】或者是深度機器學習【Deep Machine Learning】)是一類算法集合,是機器學習的一個分支。它嘗試為數據的高層次摘要進行建模。
機器學習通過算法,讓機器可以從外界輸入的大量的數據中學習到規律,從而進行識別判斷。機器學習的發展經歷了淺層學習和深度學習兩次浪潮。深度學習可以理解為神經網絡的發展,神經網絡是對人腦或生物神經網絡基本特征進行抽象和建模,可以從外界環境中學習,并以與生物類似的交互方式適應環境。神經網絡是智能學科的重要部分,為解決復雜問題和智能控制提供了有效 的途徑。神經網絡曾一度成為機器學習領域備受關注的方向。
我們用一個簡單的例子來說明,假設你有兩組神經元,一個是接受輸入的信號,一個是發送輸出的信號。當輸入層接收到輸入信號的時候,它將輸入層做一個簡單的修改并傳遞給下一層。在一個深度網絡中,輸入層與輸出層之間可以有很多的層(這些層并不是由神經元組成的,但是它可以以神經元的方式理解),允許算法使用多個處理層,并可以對這些層的結果進行線性和非線性的轉換。
深度學習的由來
1、人腦視覺機理啟示
人類每時每刻都面臨著大量的感知數據,但大腦總能很容易地捕獲重要的信息。人工智能的核心問題就是模仿大腦這種高效準確地表示信息的能力。通 過 近些年的研究,我們對大腦機理已有了一些了解,這些都推動了人工智能的發展。
神經學研究表明,人的視覺系統的信息處理是分級的,從低級的V1區提取邊緣特征,到V2區的形狀,再到更高層。人類大腦在接收到外部信號時,不是直接對數據進行處理,而是通過一個多層的網絡模型來獲取數據的規律。這種層次
結構的感知系統使視覺系統需要處理的數據量大大減少,并保留了物體有用的結構信息。
2、現有機器學習的局限性
深度學習與淺層學習相對。現在很多的學習方法都是淺層結構算法,它們存在一定的局限性,比如在樣本有限的情況下表示復雜函數的能力有限,針對復雜的分類問題其泛化能力受到一定制約。
而深度學習可通過學習一種深層非線性網絡結構,實現復雜函數逼近,表征輸 入數據分布式表示,并且能在樣本集很少的情況下去學習數據集的本質特征。
雖然淺層學習的應用也很廣泛,但它只對簡單的計算才有效,并不能到達人腦的反應效果,這就需要深度的機器學習。這些都表明淺層學習網絡有很大的局限性,激發了我們對深度網絡建模的研究。
深度機器學習是數據分布式表示的必然結果。有很多學習結構的學習算法得到的學習器是局部估計算子,例如,由核方法構造的學習器,是由對模板的匹配度加權構成的。對于這樣的問題,通常我們有合理的假設,但當目標函數非常復雜時,由于需要利用參數進行描述的區域數目也是巨大的,因此這樣的模型 泛化能力很差。在機器學習和神經網絡研究中分布式表示可以處理維數災難和局部泛化限制。分布式表示不僅可以很好地描述概念間的相似性,而且合適的分布式表示在有限的數據下能體現出更好的泛化性能。理解和處理接收到的信 息是人類認知活動的重要環節,由于這些信息的結構一般都很復雜,因此構造
深度的學習機器去實現一些人類的認知活動是很有必要的。
3、特征提取的需要
機器學習通過算法,讓機器可以從外界輸入的大量數據中學習到規律,從而進行識別判斷。機器學習在解決圖像識別、語音識別、自然語言理解等問題時的 大致流程如圖 1 所示。
首先通過傳感器來獲得數據,然后經過預處理、特征提取、特征選擇,再到推理、預測和識別。良好的特征表達影響著最終算法的準確性,而且系統主要的計算和測試工作都在這一環節。這個環節一 般都是人工完成的,靠人工提取特征是一種非常費力的方法,不能保證選取的質量,而且它的調節需要大量的時間。然而深度學習能自動地學習一些特征,不需要人參與特征的選取過程。
深度學習是一個多層次的學習,如圖2所示,用較少的隱含層是不可能達到與 人腦類似的效果的。這需要多層的學習,逐層學習并把學習的知識傳遞給下一 層,通過這種方式,就可以實現對輸入信息進行分級表達。深度學的實質就是通過建立、模擬人腦的分層結構,對外部輸入的聲音、圖像、文本等數據進行從低級到高級的特征提取,從而能夠解釋外部數據。與傳統學習結構相比,深 度學習更加強調模型結構的深度,通常含有多層的隱層節點,而且在深度學習中,特征學習至關重要,通過特征的逐層變換完成最后的預測和識別。
深度學習的經典算法
深度學習作為機器學習的一個分支,其學習方法可以分為監督學習和無監督學習。兩種方法都具有其獨特的學習模型:多層感知機 、卷積神經網絡等屬于監 督學習;深度置信網 、自動編碼器 、去噪自動編碼器 、稀疏編碼等屬于無監督學習。
1、監督學習:卷積神經網絡CNNs
20世紀60年代,Hubel和Wiesel通過對貓視覺皮層細胞的研究,提出了感受野(receptive field)的概 念。受此啟發, Fukushima提出神經認知機 (neocognitron)可看作是CNNs卷積神經網絡的第一個實現網絡,也是感受野概念在人工神 經網絡領域的首次應用。隨后LeCun等人設計并采用基于誤差梯度的算法訓練了卷積神經網絡,并且其在一些模式識別任務中展現出了相對于當時其它方法的領先性能?,F代生理學關于視覺系統的理解也與CNNs中的圖像處理過程相一致,這為CNNs在圖像識別中的應用奠定了基礎。CNNs是第一個真正成功地采用多層層次結構網絡的具有魯棒性的深度學習方法,通過研究數據在空間上的關聯性,來減少訓練參數的數量。目前來看,在圖像識別領域,CNNs已經成為一種高效的識別方法。
CNNs是一個多層的神經網絡,如圖3所示,每層由多個二維平面組成,每個平面又由多個獨立的神經元組成。上一層中的一組局部單元作為下一層鄰近單元的輸入,這種局部連接觀點最早起源于感知器。外界輸入的圖像通過可訓練的濾波器加偏置進行卷積,卷積后在C1層會產生3個特征映射圖;然后特征映射圖中每組像素分別進行求和加偏置,再通過Sigmoid函數得到S2層的特征映射圖;這些映射圖再通過濾波器得到 C3層;C3與 S2類似,再產生 S4;最后,這些像素值被光柵化,并且連接成向量輸入到神經網絡,從而便得到了輸出。一般地,C 層為特征提取層,每個神經元的輸入與前一層的局部感受野相連,并提取該局部特征,根據局部特征來確定它與其他特征空間的位置關系;S層是特征映射層,特征映射具有位移不變性,每個特征映射為一個平面,平面上所有神經元的權值是相等的,因而減少了網絡自由參數的個數,降低了網絡參數選擇的復雜度。每一個特征提取層(C 層)都會跟著一個用于求局部平均及二次提取的計算層(S 層),這便構成了兩次特征提取的結構,從而在對輸入樣本識別時,網絡有很好的畸變容忍能力。對于每一個神經元,都定義了對應的接受域,其只接受從自己接受域傳來的信號。多個映射層組合起來可以獲得層之間的關系和空域上的信息,從而方便進行圖像處理。
CNNs是人工神經網絡的一種,其適應性強,善于挖掘數據局部特征。它的權值共享網絡結構使之更類似于生物神經網絡,降低了網絡模型的復雜度,減少了權值的數量,使得CNNs在模式識別中的各個領域得到應用并取得了很好的結果。CNNs通過結合局部感知區域、共享權重、空間或時間上的降采樣來充分利用數據本身包含的局部性等特征,優化網絡結構,并且保證一定程度上的位移的不變性。由LeCun出的LeNet模型在應用到各種不同的圖像識別任務時都取得了不錯的效果,被認為是通用圖像識別系統的代表之一。通過這些年的研究工作,CNNs的應用越來越多,如人臉檢測 、文檔分析 、語音檢測 、車牌識別等 方面。2006年Kussul等人提出的采用排列編碼技術的神經網絡在人臉識別、手寫數字識別和小物體識別等識別任務上都取得了與一些專用分類系統相當的性能表現;并且在2012年,研究人員把視頻數據里連續的幀當作卷積神經網絡的輸入數據,這樣就可以引入時間維度上的數據,從而識別人體的動作。
2、無監督學習:深度置信網DBNs
DBNs是目前研究和應用都比較廣泛的深度學習結構,它由多個受限玻爾茲曼機 累加而成。RBM結構如圖4 所示,分為可視層即輸入數據層(υ)和隱藏層(h),每一層的節點之間沒有連接,但層和層之間彼此互連。相比傳統的sigmoid信念網絡,RBM易于連接權值的學習。Hinton等人認 為,如果一個典 型的DBN有l個隱含層,那么可以用聯合概率分布來描述輸入數據υ和隱含向量的關系:
其中,是條件概率分布。DBN學習的過程中,所要學習的就是聯合概率分布,在機器學習的領域中,聯合概率分布的意義就是對象的生成。
傳統的BP算法在經典的網絡結構中廣泛應用,但對于深度學習的訓練卻遇到了 很多困難:第一,BP算法是監督學習,訓練需要有標簽的樣本集,但實際能得到的數據都是無標簽的;第二,BP算法在多隱層的學習結構中,學習過程較慢;第三,不適當的參數選擇會導致局部最優解。為了獲取生成性權值,預訓練采用非監督貪婪逐層算法,非監督貪婪逐層訓練算法被Hinton證明是有效的。
非監督貪婪逐層訓練算法的核心思想是:把 DBN分層(見圖5),每一層進行 無監督學習,每次只訓練一層,將其結果作為高一層的輸入,最后用監督學習 調整所有層。在這個訓練階段,首先,在可視層會產生一個向量v,通過它將值映射給隱單元;然后,可視層的輸入會被隨機地選擇,以嘗試去重構原始的輸入信號;最后,這些新可視單元再次映射給隱單元,獲得新的隱單元h。執 行這種反復步驟叫做吉布斯(Gibbs)采樣。隱層激活單元和可視層輸入之間 的 相關性差別就作為權值更新的主要依據。在最高兩層,權值被連接到一起,從而更低層的輸出將會提供一個參考的線索或者關聯給頂層,這樣頂層就會將其 聯系到它的記憶內容。預訓練結束后,DBN可以利用帶標簽的數據及BP算法去 調整網絡結構的性能。DBNs的BP算法只需要對權值參數空間進行一個局部的搜索,這相比前向神經網絡來說,訓練的時間會顯著減少,訓練 RBM是Gibbs有效的隨機抽樣技術。在貪婪的學習算法過程中,采用了Wake-Sleep算法的基 本思想,算法在Wake階段,利用學習得到的權重,按照自底向上的順序為下一層的訓練提供數據;在Sleep階段,按照自頂向下的順序利用權重對數據進行重組。
DBNs是目前研究和應用都比較廣泛的深度學習結構,由于靈活性很好,因此比較容易拓展,例如卷積DBNs就是DBNs的一個拓展,給語音信號處理問題帶來 了突破性的進展。DBNs作為一個新興的生成模型,已廣泛應用到了對象建模、特征提取、識別等領域。
深度學習的應用
在實際應用中,很多問題都可以通過深度學習解決。那么,我們舉一些例子:
黑白圖像的著色
深度學習可以用來根據對象及其情景來為圖片上色,而且結果很像人類的著色結果。這種解決方案使用了很大的卷積神經網絡和有監督的層來重新創造顏色。
機器翻譯
深度學習可以對未經處理的語言序列進行翻譯,它使得算法可以學習單詞之間的依賴關系,并將其映射到一種新的語言中。大規模的LSTM的RNN網絡可以用來做這種處理。
圖像中的對象分類與檢測
這種任務需要將圖像分成之前我們所知道的某一種類別中。目前這類任務最好的結果是使用超大規模的卷積神經網絡實現的。突破性的進展是Alex Krizhevsky等人在ImageNet比賽中使用的AlexNet模型。
自動產生手寫體
這種任務是先給定一些手寫的文字,然后嘗試生成新的類似的手寫的結果。首先是人用筆在紙上手寫一些文字,然后根據寫字的筆跡作為語料來訓練模型,并最終學習產生新的內容。
自動玩游戲
這項任務是根據電腦屏幕的圖像,來決定如何玩游戲。這種很難的任務是深度強化模型的研究領域,主要的突破是DeepMind團隊的成果。
聊天機器人
一種基于sequence to sequence的模型來創造一個聊天機器人,用以回答某些問題。它是根據大量的實際的會話數據集產生的。
盡管深度學習的研究還存在許多問題,但它對機器學習領域產生的影響是不容小覷的。更加復雜且更加強大的深度模型能深刻揭示大數據里所承載的信息,并對未來和未知事件作更精準的預測??傊?,深度學習是一個值得研究的領域,在未來的幾年一定會更加的成熟。
責任編輯:售電衡衡
-
權威發布 | 新能源汽車產業頂層設計落地:鼓勵“光儲充放”,有序推進氫燃料供給體系建設
2020-11-03新能源,汽車,產業,設計 -
中國自主研制的“人造太陽”重力支撐設備正式啟運
2020-09-14核聚變,ITER,核電 -
探索 | 既耗能又可供能的數據中心 打造融合型綜合能源系統
2020-06-16綜合能源服務,新能源消納,能源互聯網
-
新基建助推 數據中心建設將迎爆發期
2020-06-16數據中心,能源互聯網,電力新基建 -
泛在電力物聯網建設下看電網企業數據變現之路
2019-11-12泛在電力物聯網 -
泛在電力物聯網建設典型實踐案例
2019-10-15泛在電力物聯網案例
-
權威發布 | 新能源汽車產業頂層設計落地:鼓勵“光儲充放”,有序推進氫燃料供給體系建設
2020-11-03新能源,汽車,產業,設計 -
中國自主研制的“人造太陽”重力支撐設備正式啟運
2020-09-14核聚變,ITER,核電 -
能源革命和電改政策紅利將長期助力儲能行業發展
-
探索 | 既耗能又可供能的數據中心 打造融合型綜合能源系統
2020-06-16綜合能源服務,新能源消納,能源互聯網 -
5G新基建助力智能電網發展
2020-06-125G,智能電網,配電網 -
從智能電網到智能城市