方弦
不管我們是否愿意,形形色色的人工智能(Artificial Intelligence,簡稱AI)早已深入日常生活。對違章車輛車牌的自動識別,網(wǎng)上搜索的自動推薦,懂得自己充電和探索地形的掃地機(jī)器人,還有會幫你自動排好日程的智能助理……這一切,將人們從種種無趣的腦力勞動中解放出來,同時也帶來了眾多機(jī)遇和挑戰(zhàn)。但鮮為人知的是,在背后支撐這些人工智能的,其實是一個個數(shù)學(xué)定理和計算機(jī)算法。
思考向來是人類的專長。通過思考,人類獲得了其他動物不具備的能力。自然,人們也想要造出能夠輔助思考的機(jī)器,以減輕自己的負(fù)擔(dān),這就是AI的起點。
思考既然如此強(qiáng)大,要模擬它就很困難,于是,人們將起點放在其中比較簡單的一部分—邏輯推理。AI最初的一步,就是教會機(jī)器邏輯推理的方法,即具體的算法。
但在考慮算法之前,有一個更根本的問題:我們怎么知道邏輯推理一定正確,而正確的命題必定能通過邏輯推理得到嗎?換句話說,真理是否一定能被證明?
這個問題屬于數(shù)理邏輯的范疇,對不同的邏輯系統(tǒng),答案也不同。幸好,美國數(shù)學(xué)家哥德爾證明了在所謂“一階謂詞演算”的體系中,答案是肯定的。這個定理鋪平了自動邏輯推理的道路。從20世紀(jì)60年代開始,各種自動推理系統(tǒng)陸續(xù)出現(xiàn),只要向它們輸入以邏輯命題表達(dá)的某個領(lǐng)域的知識,它們就搖身一變,成為“專家系統(tǒng)”,并自動進(jìn)行推理,回答人們提出的相關(guān)問題。
作為早期的AI,自動推理系統(tǒng)曾被寄予厚望,但人們逐漸發(fā)現(xiàn)它有不少弱點。首先,它需要專家花費(fèi)寶貴的時間來將知識整理成邏輯命題;其次,這些知識常常充滿各種例外,難以用邏輯完全概括。如果勉強(qiáng)去概括的話,得到的就是一個“頭腦簡單”的AI,雖然能正確應(yīng)對大多數(shù)情況,但面對少數(shù)情況時會束手無策甚至鬧出笑話。所以,目前它主要被用于一些相對狹隘簡單的領(lǐng)域,比如數(shù)學(xué)和交通調(diào)度。怎樣才能避免這個缺點呢?
專家系統(tǒng)的問題在于,它需要專家為它總結(jié)知識。但專家也是人,在整理自己的知識時,難免有疏漏,忽略某些罕見的情況。就像醫(yī)生遇見感冒癥狀,并不會一下子想到心肌炎。但醫(yī)生在結(jié)合其他少見的癥狀后,仍然能做出正確的診斷,這就是人的優(yōu)勢—懂得變通。
那能不能將這個優(yōu)勢移植到AI上呢?還是以醫(yī)生為例:如果讓醫(yī)生用自己的經(jīng)驗為人工智能編寫一部教科書,這將是個艱巨的任務(wù)。但醫(yī)生的經(jīng)驗也體現(xiàn)在診斷結(jié)果上,如果能直接從醫(yī)生經(jīng)手的病歷中學(xué)到他們的經(jīng)驗,這不僅節(jié)省了時間,還不會漏掉那些不常見但確實會出現(xiàn)的病例。
為了做到這一點,計算機(jī)科學(xué)家依靠大量線性代數(shù)、統(tǒng)計學(xué)和概率論的知識,發(fā)明了各種各樣的算法,從看似雜亂無章的海量數(shù)據(jù)中提取統(tǒng)計上有意義的規(guī)律,這就是統(tǒng)計學(xué)習(xí)和大數(shù)據(jù)分析的基礎(chǔ)之一。人們利用這些算法,能從互聯(lián)網(wǎng)無數(shù)頁面之間的相互鏈接中推斷某個網(wǎng)站的重要性,從而改善網(wǎng)絡(luò)搜索;也能通過對大量病例的分析,為某些特定的疾病提供早期的發(fā)現(xiàn)和診斷;還能從互聯(lián)網(wǎng)海量的雙語對照資料中,得知如何將一種語言翻譯為另一種語言。
大數(shù)據(jù)的應(yīng)用可謂數(shù)不勝數(shù),雖然這些算法本質(zhì)上屬于某種統(tǒng)計方法,做不到絕對可靠,但在實踐中它們的表現(xiàn)十分出色。例如IBM研發(fā)的AI系統(tǒng)Watson,在閱讀大量資料后,搖身一變成為星級客服,能回答顧客各種各樣的提問。
但統(tǒng)計學(xué)習(xí)也有無法解決的問題。比如,要判斷一張照片中有沒有貓,對于人類來說是小菜一碟,但對于機(jī)器來說,圖片包含的信息太多,即使對于統(tǒng)計學(xué)習(xí),要利用這樣的數(shù)據(jù)還是太棘手了。那么,人類的大腦又是怎么處理這些信息的呢?能不能將這種處理方法搬到機(jī)器上呢?
在人類大腦中,負(fù)責(zé)處理數(shù)據(jù)的是上千億個名為“神經(jīng)元”的細(xì)胞。它們之間通過電脈沖互相傳遞信息,每個神經(jīng)元受到一定閾值的刺激,就會向自身連接的其他神經(jīng)元發(fā)送電信號。這些紛繁復(fù)雜的信號組成了人類的思維。AI研究者嘗試在計算機(jī)上重現(xiàn)類似的系統(tǒng),試圖模仿人類思維這一演化的奇跡。這就是所謂的“神經(jīng)網(wǎng)絡(luò)”。當(dāng)然,我們現(xiàn)在仍然無法模擬整個大腦,但即使是數(shù)萬個神經(jīng)元組成的系統(tǒng),能力已經(jīng)非同凡響。
跟人一樣,神經(jīng)網(wǎng)絡(luò)也需要利用相應(yīng)的數(shù)據(jù)進(jìn)行大量的學(xué)習(xí),才能解決問題,而學(xué)習(xí)的方法會深刻影響最后的結(jié)果。目前,神經(jīng)網(wǎng)絡(luò)的研究主要集中于所謂的“前饋神經(jīng)網(wǎng)絡(luò)”,數(shù)學(xué)家證明了它們在理論上足以解決所有問題。為了得到實用的神經(jīng)網(wǎng)絡(luò),科學(xué)家利用數(shù)學(xué)分析中的知識,借鑒人腦的部分結(jié)構(gòu),設(shè)計了特殊的神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu),還有配套的高速并行學(xué)習(xí)算法,利用大型計算機(jī)、顯卡以及專用芯片提供的大量計算能力,訓(xùn)練出優(yōu)秀的神經(jīng)網(wǎng)絡(luò)以供應(yīng)用。只要向訓(xùn)練好的神經(jīng)網(wǎng)絡(luò)輸入數(shù)據(jù),它就能輸出相應(yīng)的計算結(jié)果。
盡管人工智能現(xiàn)在已經(jīng)能解決很多問題,但對它的研究才剛剛開始。之前提到的所有實現(xiàn)人工智能的方法,全都需要處理海量的數(shù)據(jù),但反觀人類自身,我們能舉一反三,不需要閱讀整個互聯(lián)網(wǎng)的數(shù)據(jù),就能學(xué)會一種語言或者一門學(xué)科。如何將這種觸類旁通的能力移植到機(jī)器上,是對人類智慧的又一個挑戰(zhàn)。
神經(jīng)網(wǎng)絡(luò)應(yīng)用廣泛,特別是在圖像處理方面,之前提到的自動識別車牌就是實例之一。現(xiàn)在還出現(xiàn)了“刷臉支付”,只要在攝像頭前點點頭,神經(jīng)網(wǎng)絡(luò)就能識別出你的身份,自動記錄你應(yīng)付的賬單。而神經(jīng)網(wǎng)絡(luò)最有名的應(yīng)用,恐怕就是擊敗世界圍棋第一人柯潔的圍棋人工智能AlphaGo。它的神經(jīng)網(wǎng)絡(luò)能將棋盤當(dāng)作一幅圖畫,從中“看出”目前局勢的優(yōu)劣。再結(jié)合其他算法,AlphaGo得到了遠(yuǎn)超人類的圍棋水平。這不是人類的造物第一次超過人類自身,但也許是最震撼的一次,因為我們其實并不完全理解AlphaGo為什么能下出如此犀利的圍棋。endprint