劉召華
寶雞職業技術學院電子信息工程系,陜西 寶雞 721013
?
人工智能發展的新技術
——深度學習
劉召華*
寶雞職業技術學院電子信息工程系,陜西寶雞721013
摘要:近年來,在計算機和互聯網巨頭推動下,人工智能進入新的發展高潮,人工神經網絡、機器學習、深度學習等將人工智能推向新的高度。深度學習是人工智能的基礎,本文針對Alpha Go深度學習分析,講述了深度學習算法實現原理。
關鍵詞:人工智能;深度學習;深度卷積神經網絡
2016年3月9日,谷歌人工智能Alpha Go與世界圍棋冠軍李世石進行了舉世矚目的人機大戰,人們的焦點再次聚集到人工智能。從人工智能提出60年來,人工智能取得長足發展,成為一門廣泛的交叉和前沿科學。人工智能發展到現在嶄新的階段,主要來自于機器學習中的一個子分支——深度學習。
一、深度學習
深度學習的概念源于人工神經網絡的研究,屬于機器學習研究中的一個新的領域。深度學習是指人工智能對從未經過標記的數據展開學習、訓練,自行掌握概念,學會辨識聲音、圖像和其他數據,這種學習方式更接近人腦的方式。深度學習主要是以構建深層結構來學習多層次的表示,并不是特指某種機器學習算法或模型,而是一種技術。
在人工神經網絡研究中,研究人員利用解剖學知識發現大腦表示信息的方式:通過感官信號接收到的刺激信號通過一個復雜的層狀網絡模型獲取觀測數據展現的規則。也就是說,人腦是根據經聚集和分解過程處理后的信息來識別物體。因此視皮層的功能是對感知信號進行特征提取和計算,而不僅僅是簡單地重現視網膜的圖像。人類感知系統這種明確的層次結構極大地降低了視覺系統處理的數據量,并保留了物體有用的結構信息。人工神經網絡是在對人腦組織結構和運行機制的認識理解基礎之上模擬其結構和智能行為的一種工程系統,而含多隱層的多層感知器就是一種深度學習結構。
深度學習通過組合低層特征形成更加抽象的高層表示屬性類別或特征,以發現數據的分布式特征表示。其動機在于建立、模擬人腦進行分析學習的神經網絡,從而模仿人腦的機制來解釋數據,例如圖像,聲音和文本。它比傳統神經網絡擁有更多的隱含層,使用更多的網絡層次來模擬大腦的學習機制,并克服了傳統神經網絡算法在多層情況下訓練困難的問題。它同樣是人工神經網絡,突破之處在于它的網絡層次和解決訓練難度的方法。
二、Alpha Go深度學習技術過程分析
從自然期刊論文提供的資料分析,Alpha Go主要是通過把已有的技術整合在一起,并利用大量的訓練數據和計算資源來提高準確性,所以其核心仍然是強大的計算平臺和工程能力。Alpha Go主要用到的核心技術:機器學習中的監督學習和強化學習;啟發式搜索算法的蒙特卡羅樹搜索算法,另外,深度學習模型里的深度卷積神經網絡和優化方法中的一階方法一起構成了Alpha Go的核心組件。
圍棋人工智能問題的核心在于搜索。最簡單的方法其實就是把所有的可能性羅列出來,然后從中選出最優的方案。實際圍棋比賽中這種“可能性”太多,即搜索空間過于龐大。即使耗費再多的硬件資源,把每種可能的情況都做一遍驗證也不現實。所以Alpha Go的核心技術避免窮舉這些所有的可能性,而是利用更聰明的方式(比如近似)來找到那些有可能促使勝利的策略。當一個選手把白色棋子放在9*9小棋盤上的時候,對于機器來說它有80種可能的走子方案(9*9-1),這稱之為廣度(Breadth)。機器確認了下一步走子方案的時候,選手就可以選擇剩下的79種走子方案。很容易看出,僅僅簡單的兩步就共產生了80*79種不同的組合。所以,當一個游戲的長度為N的時候(也稱之為深度Depth),考慮所有的可能性是不現實的??偟目赡苄詳的恳蕾囉谇懊嫠岬降膹V度和深度,所以我們的目標就是要降低搜索空間的大小,即要降低廣度和深度。
走棋網絡的目的是為了減少廣度。對于一個給定的棋盤狀態,我們要盡量把需要考慮的范圍減少,同時也要考慮最優的走子方案。通過走棋網絡我們可以只選擇可能性較大的走子方案,而不去考慮剩下的方案。從數學的角度來講,對于給定的一個棋盤狀態,先計算概率分布,然后從中選擇最為合理的走子方案。Alpha Go系統中選用深度神經網絡中的一種——深度卷積神經網絡方法來計算概率分布。在Alpha Go系統里,深度卷積神經網絡的輸入是一個棋盤(可以把棋盤看做是一幅圖,棋盤上的黑子和白子分別可以用1和-1來表示,剩下的空位置可以用0來表示),其實相當于一個矩陣。它的輸出就是不同走子方案的概率分布,然后基于這個分布,可以做下一步的決策。為了達到訓練的目的,Alpha Go需要大量的訓練樣本,樣本就是職業玩家的比賽記錄。訓練好的模型就可以用來模擬高手似的走法。整個樣本的訓練過程需要大量的計算資源。Alpha Go系統會從已有的比賽歷史中去學習頂級高手的走子方案。也就是說,給定一個棋盤狀態,Alpha Go會試圖去模仿專家的走法,并判斷哪中走法最有利。然而,Alpha Go并沒有停留在這一步,而是接著用強化學習的方式來進一步提高系統的性能。強化學習主要用來搜集更多的樣本,從而提高系統的準確率。采用做法是把訓練出來的模型倆倆做對抗,根據比賽的結果再更新模型的參數。所以這是機器和機器之間的較量,這種迭代會反復很多次。通過這種迭代,最初的模型最后可能演變成了另一種模型,這種通過不斷地自我提升訓練出來的模型在大部分情況下會勝出最初的專家模型。
三、深度學習應用現狀及不足
深度學習的應用對象不僅包含語音、圖像、視頻,也包含文本、語言和語義信息。深度學習已成功應用于多種模式分類問題。這一領域雖處于發展初期,但它的發展無疑會對機器學習和人工智能系統產生影響。同時它仍存在某些不適合處理的特定任務,譬如語言辨識,生成性預訓練提取的特征僅能描述潛在的語音變化,不會包含足夠的不同語言間的區分性信息;虹膜識別等每類樣本僅含單個樣本的模式分類問題也是不能很好完成的任務。
四、結束語
深度學習目前仍有大量工作需要研究。模型方面是否有其他更為有效且有理論依據的深度模型學習算法,探索新的特征提取模型是值得深入研究的內容。此外有效的可并行訓練算法也是值得研究的一個方向。在深度學習應用拓展方面,如何充分合理地利用深度學習在增強傳統學習算法的性能仍是目前各領域的研究重點。
[參考文獻]
[1]李凡長.《機器學習》.中國科學技術大學出版社,ISBN:9787312026362.
[2]周志華.《機器學習及其應用》.清華大學出版社,ISBN:9787302204190,2009.
*作者簡介:劉召華(1976-),男,漢族,陜西鳳翔人,在職碩士,寶雞職業技術學院,計算機網絡專業助講,研究方向:物聯網。
中圖分類號:B82-057
文獻標識碼:A
文章編號:1006-0049-(2016)14-0223-01