最近有一個新的搜尋引擎相當受到網路界的矚目,許多網路觀察家都期待這個產品會成為挑戰 Google 的明日之星,媒體也利用大篇幅來報導這個即將上市的搜尋引擎,大家期待的程度真可說是未上市先轟動,這個東西那就是 Mathematica 創辦人 Stephen Wolfram 的最新作品 Wolfram Alpha computational knowledge engine。 然而大家可以注意到,Wolfram 實際上不把他最新的作品稱作是一個「搜尋引擎」,而是用「computational knowledge engine」(計算知識引擎) 來當作名稱,主要的原因很簡單,因為這個搜尋引擎的特點在於使用者不是真的到上面去作搜尋的動作,而是到這個地方「直接問問題」。
這有什麼特別呢?我們都知道怎麼去使用 Google 在網路上作搜尋:使用者去輸入了一些關鍵字,然後 Google 在一瞬間把搜尋結果一筆一筆列出來,使用者就點進去網頁尋找自己的資訊。Wolfram 的使用方式有別 Google 和現在所有搜尋引擎的使用方法,Wolfram 可以讓使用者直接輸入一個完整的問句,比如說:「世界上最高的山是哪一座山?」然後 Wolfram 就會分析你問的問題,理解你的問題;接著從網路已經有的、公開的資料和自己內部經過授權取得的資料,粹取出問題的答案直接回答你,如此完成一個問與答的動 作。Wolfram 不會像 Google 一樣,給你一堆網路上的搜尋結果,要你自己去找你要的東西,Wolfram 只會給你一個明確的答案,沒有其他東西。也就是說,你跟他的互動,就像是跟人的互動一樣,你問他答。
在電腦科學界,像「問與答」這種人與電腦的互動一直是許多人追求的聖杯,從事人工智慧的電腦科學家最為渴求的,就是有朝一日電腦能夠跟真人一樣與外 界互動,且外界分辨不出電腦到底是不是一個真人,這也就是鼎鼎大名的 Turing Test (涂林測驗):如果躲在幕後與人互動的電腦能夠騙過受試者,讓受試者分辨不出到底互動的對象是真人還是電腦,我們就說這一台電腦通過了 Turing Test。
現在為止,沒有任何電腦可以騙過人類。電腦還是電腦,人類還是人類,一經過互動,大家都可以分辨出牆壁的另一邊是真人還是電腦。
Wolfram Alpha 的推出,在我看來也是以另一種形式在挑戰 Turing Test,讓電腦回答問題一直是一個非常困難的問題,看過霹靂遊俠李麥克的人應該都會對裡面智慧型的跑車「夥計」印象深刻,每次只要李麥克一個指令,夥計 就會精確地執行任務,甚至於最後還會跟李麥克聊上幾句。不過這樣的未來情境,在現今的電腦界尚未實現,甚至於可以說還有很長的一段路要走。因為仔細思考一 下,我們就可以發現第一個難題是「讓電腦去理解人類的自然語言」。
理解人類的語言有多難?請各位讀者想一個簡單的問題就好了:「學習一種新的語言你需要多久的時間才能學好?」,我們都知道把語言學好是一種藝術,但 是對於人類來說,掌握一種新語言的基本元素都已經是一件不簡單的事情了。現在我們想要讓電腦去理解一種自然語言、甚至於能夠明白我們的問題,難度自然是不 在話下了。
即使這個問題我們可以完美地克服之後,第二個難題馬上來了:「理解了問題之後,電腦要怎麼產生出答案?」這個問 題到今天,也還是沒有很好的解法,通常我們只能預先給電腦準備一個很大的、經過組織後的資料庫,讓電腦從事某種程度上挖掘答案的行為,廣義來說,這也就是 Semantic Web 想要解決的問題:讓網路上的所有資料經過標準,組織成為一個世界上最龐大的資料庫,使得「整個網路可以被任何一台電腦理解並分析」這樣的一個概念可以落實。
所以 Turing Test 現在普遍被認為跟處理自然語言是同樣的一個問題,這其實很容易理解:唯有在一台電腦的人工智慧可以將人類的自然語言模擬地很好的時候,才有可能騙過與它互動的人類,進而通過 Turing Test。
以上這些懸而未解的難題,也是為什麼 Wolfram 讓人如此受期待的原因。而究竟 Wolfram 可以把這些問題解決到什麼樣的程度呢?其實我也相當期待。從以下 Stephen Wolfram 本人親自的 demo 影片來看,在一些特定領域的搜尋上面,這個新的搜尋引擎表現真的相當搶眼。就讓我們期待 5/18 Wolfram 正式上線吧!