定義三:ai就是與人類行為相似的計算機程序
和仿生學派強調對人腦的研究與模仿不同,實用主義者從不覺得人工智能的實現必須遵循什麼規則或理論框架。“黑貓白貓,逮住耗子的就是好貓。”在人工智能的語境下,這句話可以被改成:“簡單程序,複雜程序,聰明管用的就是好程序。”
也就是說,無論計算機以何種方式實現某一功能,隻要該功能表現得與人在類似環境下的行為相似,就可以說,這個計算機程序擁有了在該領域內的人工智能。這一定義從近似於人類行為的最終結果出發,忽視達到這一結果的手段。另一種對人工智能的近似定義則更強調人工智能的實用色彩:ai就是可以解決問題並獲得最大收益的計算機程序。
略懂些編程的人都知道,幾乎所有程序設計語言都提供了類似“if……else……”的分支結構,即,如果程序發現某個條件已滿足,就執行if之後的指令,否則就執行else之後的指令。那麼,與“if……else……”相關的一個哲學問題是,程序根據某個條件進行判斷並完成相應操作的時候,這個“判斷”以及隨後的“決定”是由計算機自己做出的,還是由編程序的人做出的?如果是由計算機自己做出的,那能不能說所有執行了“if……else……”語句的計算機程序都是人工智能?如果相反,那計算機根據運行時的情況做決策時,人又在哪裏呢?
哲學思辨容易陷入這樣的兩難境地,但實用主義者根本不把這當回事——執行“if……else……”的程序是否有智能,完全要看那個程序是不是做了和人相似的有智能的事。像dendral這樣的專家係統就是靠大量“if……else……”來模仿人類專家的判定規則,這當然屬於人工智能的範疇,而普通的數值計算程序即便用了“if……else……”,也不能被稱作智能。
實用主義者推崇備至的一個例子是麻省理工學院於1964年到1966年開發的“智能”聊天程序eliza。這個程序看上去就像一個有無窮耐心的心理醫生,可以和無聊的人或需要談話治療的精神病人你一句我一句永不停歇地聊下去。當年,eliza的聊天記錄讓許多人不敢相信自己的眼睛。可事實上,eliza所做的,不過是在用戶輸入的句子裏,找到一些預先定義好的關鍵詞,然後根據關鍵詞從預定的回答中選擇一句,或者簡單將用戶的輸入做了人稱替換後,再次輸出,就像心理醫生重複病人的話那樣。eliza心裏隻有詞表和映射規則,它才不懂用戶說的話是什麼意思呢。
這種實用主義的思想在今天仍有很強的現實意義。比如今天的深度學習模型在處理機器翻譯、語音識別、主題抽取等自然語言相關的問題時,基本上都是將輸入的文句看成由音素、音節、字或詞組成的信號序列,然後將這些信號一股腦塞進深度神經網絡裏進行訓練。深度神經網絡內部,每層神經元的輸出信號可能相當複雜,複雜到編程者並不一定清楚這些中間信號在自然語言中的真實含義,但沒有關係,隻要整個模型的最終輸出滿足要求,這樣的深度學習算法就可以工作得很好。在研究者看來,深度學習模型是不是真的跟人類大腦神經元理解自然語言的過程類似,這一點兒都不重要,重要的是,整個模型可以聰明地工作,最終結果看起來就像人做的一樣。
定義四:ai就是會學習的計算機程序
沒有哪個完美主義者會喜歡這個定義。這一定義幾乎將人工智能與機器學習等同了起來。但這的確是最近這撥人工智能熱潮裏,人工智能在許多人眼中的真實模樣。誰讓深度學習一枝獨秀,幾乎壟斷了人工智能領域裏所有流行的技術方向呢?
20世紀80年代到90年代,人們還在專家係統和統計模型之間搖擺不定,機器學習固守著自己在數據挖掘領域的牢固陣地遠遠觀望。從2000年到2010年,短短十幾年過去,機器學習開始逐漸爆發出驚人的威力,並最早在計算機視覺領域實現了驚人的突破。2010年至今,使用深度學習模型的圖像算法在image net競賽中顯著降低了對象識別、定位的錯誤率。2015年,image net競賽中領先的算法已經達到了比人眼更高的識別準確率。就在同一年,語音識別依靠深度學習獲得了大約49%的性能提升。機器翻譯、機器寫作等領域也在同一時期逐漸被深度學習滲透,並由此獲得了大幅改進。
“無學習,不ai”,這幾乎成了人工智能研究在今天的核心指導思想。許多研究者更願意將自己稱為機器學習專家,而非泛泛的人工智能專家。穀歌的alpha go因為學習了大量專業棋手棋譜,然後又從自我對弈中持續學習和提高,因此才有了戰勝人類世界冠軍的本錢。微軟的小冰因為學習了大量互聯網上的流行語料,才能用既時尚,又活潑的聊天方式與用戶交流。媒體上,被宣傳為人工智能的典型應用大多都擁有深度學習的技術基礎,是計算機從大量數據資料中通過自我學習掌握經驗模型的結果。