越吃越蒙山人

越吃越蒙山人 名博

關於常識和邏輯之間的糾結

越吃越蒙山人 (2018-11-06 12:46:26) 評論 (34)

 

 

半個多世紀前,圖靈在設想計算機的發展前景時,認為它應該被允許以自我的方式去思考。於是,為了判斷機器是否能“思考”,圖靈提出了一個檢測方案,叫做“模擬遊戲”。這就是所謂的圖靈測試。

 

圖靈的意思是,讓你想象坐在計算機前與兩個遊戲參與者對話,我們把他們叫做夥伴A和夥伴B。這A和B其中之一是計算機,但你看不到他們,也不知道哪個是真人哪個是機器。你能和他們交流溝通的唯一途徑就是鍵盤和屏幕。如果你對A提到一個問題,隻是A回答。同樣你對B提一個問題,隻有B來回答。然後,你的任務就是通過對話,判斷誰是機器誰是人。如果到了最後,你實在是分不清楚這A和B之間的分別,圖靈說,這就有理由說明那部計算機是智能的了。圖靈曾經在一篇題為“計算的機理和智能”的文章裏寫到,給計算機編程,使它能下棋以及明白人類的語言,這是兩個最為明顯的挑戰。說過這些話後不久,在咬了一口手中的蘋果之後,圖靈倒身死去。

 

圖靈所構想的這兩個挑戰,對計算機來說,下棋相對來說是容易一點的事情。那不過是要計算機了解一套規則以及基於規則之上的擇優算法,而這些基本都是邏輯能夠搞定的事情。上世紀九十年代,IBM開發的深藍,就已經讓國際象棋大師無法招架了。又過了十幾二十年,穀歌的阿爾法狗又毫無懸念地把世界頂級圍棋大師挑於馬下。一開始時,這事還是讓我吃驚不小。這是因為圍棋博弈的背後,牽扯到更多的非精準非定量的模糊概念,這就要求計算機不但要有一門心思算到底的硬分析能力,還要有對權重對走勢對取舍這樣的對策技巧有定性判斷的軟分析能力。這點做好了,讓人覺得就是智能的顯現了。當然,阿爾法狗的那樣讓人驚詫的神通背後,所依仗的應該還是數學,也就是說,歸根到底還是在依賴人類現有的邏輯。

 

不久前,我看到網上有消息說,現在人工智能已經開始寫小說了。當時我就覺得頭皮一緊,連忙點進去要看個仔細。我還以為圖靈構想的第二個挑戰又已變為現實了呢。還好,這消息可能是閑來沒事的人想要抓一下大眾的眼球,除了標題,那消息並沒有真的帶來一部構思奇特的文學作品。無論如何,這就讓人鬆了一口氣。什麽時候,計算機要是真的能寫小說了,那基本就是一個乾坤轉換的時代來臨了。因為,對於計算機來說,要想通曉人類的語言,僅僅是邏輯能力強就是不夠的了。盡管人類語言結構的組成實際是和邏輯有著不可分割的關係,但是語言意義的表達和接受,對話語境的建立和融通則是其他一些主觀客觀因素交織發力的結果,這其中包括像認知常識感覺情緒這樣不能進行推理的文化基準構件。而目前,依據現有的人類思維邏輯,現有的數學推導理論,還不能設計出一種算法讓計算機能夠理解人類變化無端的語境空間。

 

以人類邏輯的概念去教會計算機弄明白一句話的表麵意思並不是一個困難的事情。但是,把前後幾句話都連接起來,即便說聰明的計算機都聽懂了這些語句的表麵意思,但結合到現實生活中的特殊情景,要讓電腦總能通過簡單的對話做出正確的應對舉動,基本上還是可望不可及的事情。我們可以想象一下這樣的情節:比如小芳和小明是大學裏的一對戀人,在上晚自習時,埋頭看書的小芳抬頭問身旁的小明,你冷嗎?小明沒有說話,起身走到窗前,伸手把窗戶關上了。小明如果是機器人,他能聽懂小芳話裏的真實含義嗎?

 

和人的思維程式一樣,我們可以教會計算機使用古典邏輯中的三段論來進行推理論證。計算機會很可靠,它不會犯程式上的錯誤,但它會在前提設立時犯常識的錯誤。比如,我事先給了計算機這樣兩個前提:1. 這世界上沒有有角的動物是獨角獸;2. 按字麵定義,所有的獨角獸都是有角的動物。接下來,如果我們要計算機據此作出進一步的分析的話,很可能它就會告訴我們這樣一個奇怪的推論: 有些有角的動物不是有角的動物。這個謬誤是怎麽產生的呢?以純邏輯的概念,這兩個給定的前提都是邏輯正確的,計算機的邏輯推理也沒有毛病。但是,對於理念清晰的人來說,根據這樣的前提,我們不會得出一個自相矛盾的推論,因為我們知道常識。常識告訴我們,獨角獸隻是一個傳說,他所處的動物集與第一個前提裏麵所說的動物集,其實不是一回事。

 

 

讓我們看看下麵這段話的推理過程。

 

1. 馬科斯是一個人。

2. 馬科斯是龐貝人。

3. 馬科斯生於公元前40年。

4. 所有的人都是會死的。

5. 所有的龐貝人死於公元79年的維蘇威斯火山爆發。

6. 現在是2018年。

 

接下來的問題是,馬科斯現在還活著嗎?對於腦力正常的人來說,這是一個對二三年級小學生出的智力測驗題。但對於計算機來說,它會覺得這個題目出得很蹊蹺,這是因為在它的論證前提知識庫裏,還缺少能夠確保結論正確的常識。按照現在的純邏輯理論,我們可以把上述已知事實片段寫成一個準確的代數等式,然後編程讓計算機通過自己懂得的語言,明白等式的意思。按照常規推理,計算機能夠知道在公元79年的時候,馬科斯肯定已經死掉了;但是計算機不知道死掉的人不能複活,它沒有這個常識,所以它無法確定在2018年馬科斯的生死狀態。要想在這點上讓計算機和人類認知保持同步,我們必須告訴它,對於任何一個死人X,如果X在年代d死了,並且t是d以後的年份,則X在年代t也是死的。

 

所以沒有常識,隻是靠邏輯公式嚴謹計算能力超強,電腦還是不具備和人類無障礙溝通的能力。怎麽解決這個問題呢?三十年前,有個英國的人工智能先行者考慮了好久這個問題,後來他發表了一個叫做“幼稚物理宣言”的東西,就是想把人類知道的日常基礎知識,都總結出來,告訴計算機。比如,水不能往上流,容器下麵有洞水就會流光,喝開水能燙死人,秋天樹葉會落等等。可是後來研究者們意識到,這麽做還是不行。先不說,我們是不是有可能把所有的常識都能一樣不漏地搜集出來,全都告訴計算機。主要這裏存在的問題是像我們中國人常說的,隻是治了標沒有治到本。用數學的語言來說就是,知其所以然並不是通過知其然的集合所能達到的。

 

我們在日常生活中所使用的常識,很多是來自習慣和經驗有些甚至是來自生物本能。這就超出邏輯的範疇了,是起自亞裏士多德直到笛卡爾的經典數學思維所不能推導的了。而那些出自經驗和本能的常識,最早的時候很可能是人類的先祖們在生與死的瞬間做出的選擇。活下來的,遺傳下來的就是當時選擇正確的了。後代依據這樣繼承下來的正確常識,對周圍的事物進行判斷,應該來講也算是一種理性思維。當然,你可以說,在生死存亡的刹那間所做的正確選擇和過後的理性繼承肯定也是符合一種邏輯,但那種邏輯和我們所說的數學規律顯然並不是一回事。

 

 

上世紀七十年代的時候,有個加拿大人叫Monty Hall。 他跑到美國發展,主持了一檔流行電視節目,叫做《一言為定》(let’s make a deal). 在鏡頭前,Monty 讓你注意麵對的三個門,你被告知這三個門後中的一個的櫃子裏有一萬美金, 這在當時算是一筆相當不錯的財富了。而另兩個門後隻是放有一些微不足道的東西,比如說一根香蕉之類的。遊戲開始時,你可以選中一個門,如果選擇正確的話,那門後邊的錢就歸你所有了。與此同時,你也知道,台上主持節目的Monty是能看到這三個門後麵的真實情況的。

 

在你做完初次選擇之後,Monty會走過來把剩下的兩個門中的一個打開,讓你看到打開的門後有一隻香蕉。然後,他會問你,願不願意改變你最初的選擇。 也就是說換成另外一個沒被打開的門。但是,為此交換,你得付出,你必須花十塊美金去得到這次改變主意的機會。當然,這次交換如果最終是選擇錯誤,那十塊錢就白花了。要不要抓住最後的機會改變初始的選擇呢?這就是對直覺和理性的考驗了。在此情況下,很多直覺感很強的人的決定就是不換了,因為他們覺得概率不變。但實際上,這既是一個心理的問題,也是一個邏輯的問題,或者說也是一個數學的問題。

 

一開始的選擇是隨機的,即選到錢的概率是三分之一。但當Monty把剩下的兩個門中的一個給打開時,情況發生了變化。大家都看到了,被打開的門後麵沒有錢,是一根香蕉。這就告訴我們,錢要麽是在你原來選中的那個門後麵,要麽是在Monty留下沒打開的那個門後麵,二者居其一。麵對運氣,你還是要啟用智商做出選擇。那麽,這剩下的兩個門的後麵有錢的概率各是多少呢?好像常識告訴我們,剩下的兩個門,後麵有錢的可能性沒變,還和一開始的時候一樣,各有三分之一。或者根據現在的情況變化,精簡一下,兩邊各有一半的可能性。

 

但是,如果我們靜下心來仔細思考一下,就會發現這時的情況和一開始的不同之處。最開始你第一次選擇的時候,是一種機會均等的隨機抽選。你拿到了一個有三分之一機會的門,剩下來兩個門占有其餘的三分之二機會。要注意,隨後,Monty並不是隨機打開了剩下的兩個門中的一個。他一定會是有選擇性地打開了沒有機會的一個門。按照這樣的非常規思維,從邏輯的角度,剩下的兩個門就不是同樣的有錢可能性了。Monty 沒打開的那個門,其實是獨占了開始時候的三分之二可能性。在這樣的情形下,理智的做法是,抓住最後的機會,把原來的選擇放棄,去改換更高機會概率的那個門,隻有這樣你得獎的機會才能翻倍。

 

不過,不顧常識去追求隱匿數學的嚴謹,有時候也會讓人感覺是很偏執的一件事情,到頭來也不好說能帶來好處還是黴頭。我說過我這人以前愛去賭場撞運氣。在那裏,我最喜歡玩的是俄羅斯輪盤賭,因為我有自信,我知道我能很快地算出來各種顏色奇偶數行或列的組合機會和出現概率。一般來說,如果遵循我事先設定的原則,多數情形下我都會是以小有斬獲收場的。隻有一次我輸得比較離譜,事後也一直沒鬧明白,那到底算是邏輯擊敗了常識,還是常識反抗了邏輯。

 

了解輪盤賭運作的人都知道,小球跳出來的數字基本上是以紅黑各稍稍小於一半的可能性來出現的。如果從你入場下注的時間點開始算,下一個數字出現是紅的可能性基本上是1/2,下兩次都出現是紅的可能性是1/4,下三次都是紅的可能性差不多是1/8。 我那次是看到有了五次連續的紅數字以後,開始押黑的數字。這時候按概率思考,連續出現6次同樣顏色的可能性小於1.56%。但那次我運氣不好,第六次輪盤上小球還是跳到了紅色的格子裏。我加倍押翻黑,結果事與願違,結果第七次還是紅。我再加倍押反轉變黑,輪盤數字連續第八次還是紅。就這樣輪盤數字一直連續了十二次紅,把我指數級別加碼的賭注全都吞了進去。

 

其實這件事背後的道理也不複雜,從你開始關注或下注的那一點開始,從數學的角度看,未來連續十二次出現同一顏色的數字可能性是小於0.024%。但是從常識上來講,每一次重新下注,重新拋球,得到紅色數字的可能性卻都是將近1/2。在這樣的時候,你到底是應該跟著感覺走,還是跟著理智走呢?到了第十三次拋球的時候,我把所有的籌碼全都押在了黑色數據上,等到輪盤停下來之後,那個白色的小球跳到了雙零的那個綠色格子中去了。

(本來還有一節是有關用貝葉斯概率預測事件可能性的,但時機正值美國中期選舉,城裏太多能人在顯神通,我就不摻合了,反正是用數學還是用感覺都有各自的道理)。