2016年4月15日晚上,北京大學研究生會、北京大學燕新社聯(lián)合Xtecher共同主辦“未名對話”系列講座之一——“對話人工智能”。人工智能專家、北京大學教授譚營發(fā)表演講,主題為《人工智能漫談》。 演講嘉賓:譚營,北京大學計算智能實驗室創(chuàng)建人、煙花算法發(fā)明人。 本文整理:Xtecher特稿記者 凌云 以下為譚營教授演講實錄: 人工智能的起源 說起人工智能,它的思想萌芽可以追溯到17世紀的巴斯卡和萊布尼茨,他們萌生了有智能的機器的想法。 19世紀,英國數(shù)學家布爾和摩爾根提出了“思維定律”,機器是不是應該有思想?在19世紀,英國科學家巴貝奇還發(fā)明了第一架“計算機器”,成為人工智能發(fā)展的最早硬件,認為這是能夠把人的智能寄托于機器的一個手段。 但是真正把人工智能作為一種科學來研究,要追溯到M-P模型。這是神經(jīng)網(wǎng)絡最著名的一個模型,是Mcculloch和Pitts(1943年)提出來的。為什么說這個模型奠定了人工智能的基礎呢?因為這是第一次對我們?nèi)四X神經(jīng)元系統(tǒng)進行建模。目前人工智能研究領(lǐng)域里非常火的一個模型——“深度神經(jīng)網(wǎng)絡”的最基本的單元還沒有離開M-P模型。 除了M-P模型以外,還有Heb學習規(guī)則,這是一個讓機器具有學習能力的最基本的原理。那么,現(xiàn)在的非監(jiān)督學習基本還是沿用了這個Heb學習規(guī)則。 再一個比較有名的就是Perceptron。Perceptron是美國心理學家Rosenblatt提出來的一個系統(tǒng),這個模型可以實現(xiàn)一定的分類功能。在當時,Perceptron就比較火,而且掀起了人工智能的第一次高潮。 那么,“人工智能”(Artificial Intelligence)這個詞第一次是在哪兒提出來的呢? 是在1956年達特茅斯(Dartmouth)會議上。有幾個比較有影響的科學家,像Misnky還有McCarthy,他們在會議上經(jīng)過討論,最后提出了這么一個概念?!叭斯ぶ悄堋闭嬲菑倪@個時候開始叫的。在以前,大家都不叫這個名字,有把它叫做perceptron的,有把它叫神經(jīng)網(wǎng)絡的,還有等等其他很多的名詞。 那么,從1956年這個Dartmouth會議過后,人工智能就登大雅之堂了。到目前,正好是一甲子(60年)?,F(xiàn)在全世界很多研究人工智能的一些協(xié)會和機構(gòu)都在籌備活動,來紀念AI誕生60周年,我們國家在這個月下旬可能也要在北京開個會。 在人工智能研究過程中,一個比較重要的人物就是阿蘭·圖靈。他是第一位比較明確地提出計算機是不是有智能這么一個概念。 阿蘭·圖靈認為機器可以模擬人腦思維過程;一個良好設計的計算機能夠做到人腦所能做的一切。因此,也有人把他稱為“人工智能之父”。現(xiàn)在大家真正比較認可的“人工智能之父”還是McCarthy,是他提出了人工智能這個名字。 圖靈有一個最著名的測試,叫“圖靈測試”,就是判定一個機器是不是有智能。在圖靈測試里,有一個提問者提出問題,回答問題的一邊是人,一邊是機器。如果這個提問者分不清回答問題的人到底是人還是機器的話,那么就認為機器具有人工智能。這是判斷機器有沒有人工智能,但還沒有回答什么是智能。 那么,真正的人工智能是什么? 我給了一個回答,就是:讓機器去做需要人類智能才可以做的那些事情。 比如,AlphaGo這個程序可以下圍棋,可以完成人需要非常高的智能水平完成的一些工作,就是一個典型的人工智能的運用。 那么,在專業(yè)術(shù)語里面,一般把人工智能定義為“認識、模擬和擴展人的自然智能,目的是為人類服務”。換一句話說,我們研究人工智能主要是去做什么事呢?模擬我們自然智能,然后擴展或者加速我們?nèi)祟愔悄艿陌l(fā)展,把它提高到更高的水平,我們最終是要把這些技術(shù)應用于生產(chǎn)過程或者來提高我們?nèi)说纳钯|(zhì)量,來為我們?nèi)祟惙铡?/span> 人工智能的發(fā)展歷程 人工智能的發(fā)展經(jīng)歷了一個螺旋式上升的發(fā)展路線,非常曲折。人工智能里面派系復雜,發(fā)展起起伏伏,一會兒是這派占了上風,打倒了另一派;過陣子,另一派又打倒了原來的那一派。 我們把它整個的發(fā)展歷程梳理一下,會發(fā)現(xiàn)有三大派別——符號主義學派、聯(lián)接主義學派和行為主義學派。前兩個派別是最主流的發(fā)展學派,而且這兩個學派之間互不買賬,互相貶低對方。 ▼符號主義學派——基于規(guī)則推理 傳統(tǒng)的人工智能,基于規(guī)則推理。我剛才提到的幾個人物,Misnky、McCarthy、Nillsson這些人實際上就是參加1956年達特茅斯會議的組織者。也就是說在五六十年代,當人工智能這個詞一出來,當時占主流的是符號主義學派,是他們在支配人工智能的發(fā)展。 ▼聯(lián)接主義學派——模擬神經(jīng)網(wǎng)絡 聯(lián)結(jié)主義學派也是起起落落。五六十年代,是它的低潮,正好被符號主義學派打壓下去;到80年代是它的第一次復興;到90年代初,它又進入瓶頸;現(xiàn)在又進行了第二次勝利,是聯(lián)接主義學派受到追捧的時代。 ▼行為主義學派——進化主義或控制論 始于六七十年代,以Wiener(通信原理、雷達系統(tǒng)的奠基人)為代表,就是做控制論,演化控制,實際上是世界二次大戰(zhàn)的需求,當時得到了很廣泛的發(fā)展。 人工智能的研究內(nèi)容 作為一個學科,人工智能主要從這幾個方面進行了深入的研究。 在方法層面,有啟發(fā)式搜索和推理,這個是建立在知識和知識工程的基礎上,從方法層面來講,應該歸于符號主義學派。還有模式識別、機器學習和生物激發(fā)方法(計算智能)等是當今或者說近二三十年獲得廣泛研究和追捧的方法。尤其是機器學習和計算智能,是人工智能研究的熱點和前沿。 在應用層面,實際上有很多。像自然語言理解,我們說的自然語言。原來我們認為這些是有智能的人才能做,那么機器實際上現(xiàn)在也能做,能識別語音,能進行翻譯。還有數(shù)據(jù)庫的檢查檢索系統(tǒng)、專家系統(tǒng)、機器定理證明等?,F(xiàn)在在我們的圖像識別、語音識別以及計算視覺等領(lǐng)域已經(jīng)取得了非常多的進展。這都是人工智能在應用層面的一些工作。 計算智能的研究(Computational Intelligence) 下面我來說一說現(xiàn)在人工智能發(fā)展最前沿的一個研究——計算智能的研究。在計算智能里面,它主要是通過計算智能的方法來實現(xiàn)人類智能。 計算智能現(xiàn)在作為一門學科,主要包括了人工神經(jīng)網(wǎng)絡、模糊邏輯、進化計算、群體智能還有人工生命等領(lǐng)域。 那么計算智能跟傳統(tǒng)的人工智能的區(qū)別在哪里呢? 傳統(tǒng)的人工智能,我們談的就是基于符號的,然后以知識信息為基礎,通過邏輯推理來進行處理。因為當時傳統(tǒng)人工智能的想法是人的思維比較高級、比較高等,需要用一些高水平的方法,需要用符號,需要嚴密的邏輯推理才能實現(xiàn)。這個時候的基本思路是自頂向下。 而計算智能實際上是以數(shù)據(jù)為基礎,通過數(shù)值計算進行求解。現(xiàn)在計算手段飛速發(fā)展,為計算智能的深入研究提供了很好的手段,所以計算智能得到了非常廣泛的發(fā)展。 ▼人工神經(jīng)網(wǎng)絡 在計算智能里面,研究最早、認識最為廣泛的之一的領(lǐng)域就是人工神經(jīng)網(wǎng)絡。 左邊是一個生物神經(jīng)元,神經(jīng)元之間是有突觸連接的,而且這個突觸連接是可以調(diào)整的,那么通過調(diào)整這個連接,就可以去感受輸入的信號或者是輸出的信號的變化。 人工神經(jīng)網(wǎng)絡實際上就是對生物神經(jīng)網(wǎng)絡進行建模。這個模型實際上就是最早我提到的M-P模型,把神經(jīng)元都排列起來,組成了這么一個網(wǎng)狀結(jié)構(gòu),有多輸入、多輸出,它們之間是有分層的,之間是一個全連接狀態(tài),這么一個網(wǎng)絡就是一個最簡單的神經(jīng)網(wǎng)絡,我們把它稱為“多層神經(jīng)網(wǎng)絡”。這個是應用最廣泛、也潛力巨大的神經(jīng)網(wǎng)絡模型。其實,我們現(xiàn)在的深度神經(jīng)網(wǎng)絡也是建立在這么一個模型的基礎上。 ▼復雜優(yōu)化問題 在計算智能里面,還有一大類是要求解一個復雜優(yōu)化問題。實際上,我們在求解實際問題的時候,任何一個問題都可以等效為一個復雜優(yōu)化問題來求解。那么我們能不能有一個有效的方法能夠在最快的速度找到這個最優(yōu)值——全局最優(yōu)點,而不受其他局部最優(yōu)值的影響?這個是現(xiàn)在計算智能的一個熱點問題、通用問題,也是一大類要研究的方法。 一個典型方法是遺傳算法。遺傳算法是模擬生物體的遺傳進化過程,通過對環(huán)境的適應能力的大小來進行“適者生存、優(yōu)勝劣汰”。那么,這個過程是一個優(yōu)選過程,可以用于求解十分復雜的優(yōu)化問題,所以它是研究計算智能最主要的方法之一。 除此之外,我們在研究人工智能里面還有一大類,就是生物群體表現(xiàn)出來的一些非常強大的能力。個體可能很簡單,你像一只鳥很簡單,但是一群鳥卻能夠在非常惡劣的環(huán)境下生存下來,這是為什么?這也是我們現(xiàn)在在研究的群體智能。 還有,五年前,我根據(jù)煙花爆炸在空中形成的美麗圖案而發(fā)展的一個空間搜索的新方法,叫做煙花算法。它實際上在求解優(yōu)化問題方面已經(jīng)比現(xiàn)在流行的很多方法要好?,F(xiàn)在(煙花算法算出)的結(jié)果基本上是最好的一個結(jié)果。 機器學習的研究(Machine Learning) 機器學習是什么?就是我們讓機器能夠像人一樣學習。機器有自我更新的能力。我們可以造成一個機器出來,在我們普通人眼里,機器造出來什么樣,那它就只能是這個樣子,對不對?但是我們對機器賦予了學習能力,那它就可以改進自己的性能。機器學習實際上就是經(jīng)過經(jīng)驗提高自身系統(tǒng)性能的一個過程,或者我們叫“系統(tǒng)自我改進”。 原來我們把機器學習歸為人工智能的一個分支,但現(xiàn)在的觀點是,機器學習基本可以獨立出來了,專門作為一套求解復雜問題的方法來使用,不一定要跟人工智能扯上關(guān)系。當然,它和人工智能是有很多交叉的。 那么機器學習為什么會有這么神奇的一個能力呢?實際上,機器學習從原理上講還是非常簡單的。 令W是這個給定世界的有限或無限所有對象的集合,由于觀察能力的限制,我們只能獲得這個世界的一個有限的子集Q?W,稱為樣本集。機器學習就是根據(jù)這個有限樣本集Q,推算這個世界的模型,使得其對這個世界為真。 這個Q是個很小的部分,然后這個W是我們求解問題的整個搜索空間,就我們剛才談到的一個復雜問題的整個空間。這個空間很大,可以是我們到目前為止不可能窮盡搜索的一個大的空間,也可以是無限大。 比如,下圍棋的搜索空間也是非常龐大,現(xiàn)在的計算資源是不可能進行窮盡搜索的,如果能窮盡搜索的話,那我們就不需要這種智能方法。 正由于我們計算能力有限,所以在整個搜索空間里面,我們只能得到很少一部分的知識,就是說每個人的自身經(jīng)驗只是非常小的一部分。然后我們利用已有的這部分知識,或者將知識進行提煉,建立這個模型。 建立起的這個模型對于我們的經(jīng)驗肯定是適合的,對不對?因為這是從我們的經(jīng)驗中建立起來的。但是我們希望建立的這個模型要對我們沒見過的事情同樣有效,這就叫做泛化。 也就說,我們可以讓這個機器學習我們給它的經(jīng)驗和知識,但是它不能只是在我們的這些知識上工作,而應該具有更強大的能力,從而體現(xiàn)出機器學習的作用。這就是機器學習的過程。那么泛化就在這起到了非常重要的作用。而從這個數(shù)據(jù)來建模的過程,就是機器學習最重要的一個方面。不論多么重要的模型,都是在做這件事,都是從Q到W的過程。 在機器學習里面,主流看法分成兩類。 ▼淺層學習(Shallow Learning) 模型采用的就是單層的網(wǎng)絡。這個是80年代進行廣泛研究的,而且我們把它作為機器學習的第一次浪潮。 最初比較典型的方法是多層感知器(Multi-layer Perceptron)。當神經(jīng)網(wǎng)絡研究到一定程度,我們發(fā)現(xiàn)多層感知器的性能提不高,受到很多限制,泛化性能不好,便轉(zhuǎn)而研究像支撐向量機(SVM)、Boosting、隨機森林(Random Forest)、ELM等其他方法,但都沒有離開神經(jīng)網(wǎng)絡的層數(shù)只有一層。 ▼深度學習(Deep Learning) 2006年,Geoffrey Hinton在《科學》雜志上發(fā)表了一篇文章,提出了深度學習的概念。也就是說,神經(jīng)網(wǎng)絡應該不止一層,應該多層,而且每一層能表達概念的抽象程度是不一樣的,表達知識復雜程度也是不一樣的,這是它最基本的一個觀點。 第一,多層的人工神經(jīng)網(wǎng)絡具有優(yōu)異的特征學習能力,學習得到的特征對數(shù)據(jù)有更本質(zhì)的刻畫,從而有利于可視化或分類。 第二,它最主要的是有一個預訓練,這是它的一個重大貢獻,由此掀起了機器學習的第二個浪潮。 從上圖我們可以看一下,同樣是訓練10^6次,如果加入了預訓練,性能可以急劇提高(錯誤低于沒有預訓練的情況)。這意味著深度神經(jīng)網(wǎng)絡加上預訓練再進行監(jiān)督訓練的這種方式,可以找到更優(yōu)的全局最優(yōu)點。很復雜的函數(shù)可能平時找到的是局部最優(yōu)點,如果我們經(jīng)過了事先預訓練,再進行監(jiān)督訓練,那么這種訓練方式可以大大提高性能。 同樣,我們把它用來做圖片當中物體的識別。我們知道人是具有很強大的識別能力,給你一張圖片,能識別出來里面是一個貓還是一個香蕉。用機器來識別一個物體,以前的神經(jīng)網(wǎng)絡SVM在2010年最高做到72%的正確率,2011年做到74%,但是現(xiàn)在實際上已經(jīng)到99%。所以說,提高得非??欤驗槲覀儸F(xiàn)在網(wǎng)絡更復雜,計算資源更好,可以利用這種深度學習的表達能力,對這類復雜的、需要我們?nèi)巳ヨb別才能完成的智能工作都可以要求機器來完成。 當前人工智能的熱點 ▼人臉識別 我們見一個人,馬上就能記住他的臉,下次見到很快就能識別出來。那么人具有很強大的識別能力。 以前,我們用計算機嘗試做人臉識別系統(tǒng),識別效率都不高。由于深度神經(jīng)網(wǎng)的應用,香港中文大學教授湯曉鷗帶領(lǐng)他的團隊開發(fā)了一個名為“Deep ID”的深度學習模型,現(xiàn)在可以在LFW(Labeled Faces In the Wild)數(shù)據(jù)庫上做到99.15%的識別率,這是有史以來首次超過99%的LFW識別率,超過人類肉眼的識別能力。 ▼圍棋人機大戰(zhàn) 簡單說一說AlphaGo與李世石之間人機大戰(zhàn)的博弈機理。 AlphaGo里面主要是組合了這四個策略。一個是蒙特·卡洛(Monte Carlo)的搜索樹(Search Tree)方法,再加上監(jiān)督學習(Supervised Learning)和強化學習(Reinforcement Learning),然后整個是建立在深度神經(jīng)網(wǎng)絡(Deep Neural Networks)的基礎上,是建立在一個13層的卷積神經(jīng)網(wǎng)絡上來實現(xiàn)的。 AlphaGo的聰明之處有這么幾點: 第一,使用監(jiān)督學習的策略網(wǎng)絡(SL Policy Network),這是一個非常好的起點。整個程序的起點是從人類下棋的經(jīng)驗當中學習,先把人類最精華的部分學到手。 第二,使用一個快速提升算法,叫強化學習的策略網(wǎng)絡(RL Policy Network)去提升自己的能力。 最后,使用一個有效的評價策略,我們把它叫做強化學習的價值網(wǎng)絡(RL Value Networks),來計算每一步的結(jié)果。 那么這幾點相互協(xié)作,共同來完成一個非常需要智力水平的圍棋模擬。 在《自然》上發(fā)表的一篇研究文章顯示AlphaGo已經(jīng)達到了業(yè)余三段,這個結(jié)論是根據(jù)AlphaGo和樊輝對弈的結(jié)果而得出的,實際上,現(xiàn)在的AlphaGo比起之前可以再讓四個子,已經(jīng)達到人類圍棋十五段的樣子。 這是一個機器學習的方法,是一個可以逐漸提升繼續(xù)提高的過程,所以能達到非常高的智能水平。 ▼預測比賽結(jié)果 上個禮拜,阿里云做了一個小AI的人工智能程序,進行了《我是歌手4》的歌王預測。實際上它也預測出來了。 目前,小Ai的學習速度是人類的1萬倍。要成為某一領(lǐng)域的專家,如果人類需要10萬小時,則小Ai只需要10小時。 它聲稱可以做到理解人類的情感,這個實際上它還做不到。所謂的理解情感,只是從網(wǎng)絡上搜集其他人的評價,它并不是去聽音樂。 實際上,現(xiàn)在最有挑戰(zhàn)性的是讓計算機去識別音樂的好壞。這個很難識別,因為只有人才能聽懂這個音樂,只有人才能感覺這個音樂好聽還是不好聽。要機器去聽它,機器可能按一定規(guī)則來,但是人是按心情來的,所以這是非常難、復雜的一件事情。 對人工智能發(fā)展的幾點思考 人工智能的發(fā)展現(xiàn)在正以一個前所未有的速度在往前發(fā)展,更多的驚喜在不斷地涌現(xiàn)。而且AI技術(shù)的應用會廣泛深入到我們生活的方方面面,逐漸地將我們?nèi)祟惿鐣频角八从械闹悄苌鐣母叨取?/span> 當然,在這個發(fā)展過程當中,跟其他任何技術(shù)發(fā)展是一樣的,都要滿足和遵循我們所施加給它的人類社會的規(guī)范和行為準則,否則,可能對我們?nèi)祟惿鐣陌l(fā)展產(chǎn)生一些不利的影響。 結(jié)束語 人工智能是一門多學科交叉的綜合性前沿學科,在理論上很不成熟,技術(shù)上逐漸突破,應用上正在快速擴展和滲透;基于各種生物原理與過程的激發(fā)是其繼續(xù)前進的源泉,人類社會的需求是其不斷發(fā)展的動力! 希望有興趣的同學能夠加入到“智能科技”研究的行列中來,歡迎大家,謝謝! |
|