第五章 深度突破2

有一種特別的遊戲吸引了很多人的注意。這款名為“打磚塊”的遊戲是20世紀70年代最早出現的電子遊戲之一:由玩家控製“球板”,將“球”彈到由彩色“磚塊”組成的牆上。每當球碰到磚塊的時候,磚塊就會被摧毀,玩家的目的是摧毀整麵磚牆。圖18顯示了程序在學習玩打磚塊的早期階段(在它玩了大約100次遊戲之後),在這個階段,它經常漏球。

圖18 程序學習玩打磚塊遊戲的早期階段

深度思維的雅達利遊戲程序在學習打磚塊的初期漏接了球,球在這裏用一個豎直的小矩形表示,水平的平板狀矩形表示玩家的接球板。

但是經過幾百輪的訓練以後,程序就成了這個遊戲的專家:它再也沒有漏接過一個球。然後發生了一件不同尋常的事情:程序了解到,最有效率得高分的方式是在磚牆的一側“鑽”一個洞,讓球打進去,這樣球就會在磚牆和頂部屏障之間快速反彈,迅速消滅磚塊,而玩家可以不用額外操作什麽(見圖19)。深度思維公司的工程師並沒有預料到這種行為:它是由程序自主學習的。這個遊戲的視頻很容易在網上找到:我在自己的講座中用過十幾次。每次我給觀眾播放這段視頻時,都能聽見驚訝的抽氣聲,因為觀眾明白程序在遊戲中學到了什麽。

圖19 程序經過訓練後玩打磚塊遊戲

最終,程序學會了怎麽迅速取得高分,即讓球在磚牆一側“鑽”一個洞,這樣球就會在磚牆上快速反彈。沒有人教程序這麽做,這種行為讓程序開發者都大吃一驚。

我得反複強調一點:深度思維的程序員並沒有編寫一個程序來玩雅達利遊戲:這並不難。他們所做的是寫一個程序,讓它學習如何比人類更會玩全部49個雅達利遊戲中的29個。程序接收到的唯一輸入就是屏上顯示的東西,以及分數。

此前已經提到過,雅達利遊戲程序使用的是強化學習的方式,通過神經網絡來實現,它使用的神經網絡具有三個隱藏層。神經網絡的輸入經過預處理,將圖像從原始的210×160像素的彩色格式縮減為84×84像素,並用灰度代替了彩色。程序從可用的輸入中提取出樣本,由每四幅遊戲屏幕圖像拚合組成,而不是單獨的每一幅圖像。神經網絡使用經典的深度學習技術(隨機梯度下降)進行訓練。

這個程序當然不會是完美的,在某些遊戲中,它的表現相當糟糕,研究一下為什麽會出現這種情況也挺有意思。在程序玩得特別糟糕的遊戲中,有一款叫作“蒙特祖瑪的複仇”,它的難點在於獎勵非常稀少:玩家在獲得獎勵之前必須執行一係列複雜的任務(這一點與打磚塊這種遊戲不同,在打磚塊遊戲中獎勵反饋或多或少都是即時的)。通俗地說,如果獎勵反饋在相關行動執行後很長時間才出現,就會給強化學習帶來困難:這就是前文我們討論過的信用分配問題,即你可能不清楚是哪些行為導致了獎勵的發生。

如果雅達利遊戲程序是深度思維團隊唯一完成的東西,那也足夠讓他們在人工智能的曆史上留下令人尊重、濃墨重彩的一筆,但是,該團隊隨後又取得了一係列驚人的成就。

其中最著名的是AlphaGo,在撰寫本書的時候,它可能仍然是迄今為止最著名的人工智能係統。AlphaGo的功能是玩一種源自中國的古老棋類遊戲:圍棋。

圍棋是人工智能挑戰一個引人關注的目標。一方麵,圍棋的規則非常簡單,比國際象棋簡單得多。另一方麵,在2015年,圍棋程序的水準遠遠低於人類專業棋手。那麽,為什麽圍棋對人工智能而言這麽難?答案很簡單,因為圍棋的計算量太龐大了。圍棋棋盤是19×19的格子,總共有361個位置可以落子。而國際象棋棋盤的格子是8×8,隻有64個位置可以放置棋子。正如我們在第二章中所提到的,圍棋的分支因子(即棋手在遊戲中每一步的平均移動可能性)約為250,而國際象棋的分支因子約為35。換言之,在棋盤大小和分支因子方麵,圍棋的數據量比國際象棋龐大得多。另外,一盤圍棋對弈可以持續很長時間,一場比賽中走150步是很常見的。

對人類而言,圍棋是公認最難的棋類,因為計算規模太大:思考一個如此大小的棋盤已經達到甚至超過人類玩家所能管理的極限。這導致圍棋中指定明確的戰術非常困難。對於機器而言,這也是問題所在。棋盤規模和分支因子讓簡單粗暴的搜索方式毫無用武之地——我們得考慮別的方法。

AlphaGo使用了兩個神經網絡:價值網絡隻負責評估給定的棋盤位置的優劣程度,而策略網絡則根據當前棋盤的狀況評估下一步棋該放在何處[75]。策略網絡包含13層,首先使用監督式學習進行訓練,訓練的數據則是人類的專業棋手下棋的棋譜。然後進行自我對戰的強化學習。最後,這兩個網絡被嵌入一個複雜的蒙特卡羅樹這一搜索技術中。

在這套係統公布之前,深度思維邀請了歐洲圍棋冠軍樊麾與AlphaGo比賽:最終AlphaGo以5∶0獲勝。這是圍棋程序第一次在全場比賽中戰勝人類專業棋手。不久之後,深度思維宣布AlphaGo將於2016年3月在韓國首爾與世界圍棋冠軍李世石進行五場比賽。

人工智能界因此興奮不已,相關研究人員——包括我自己——也很期待看到比賽結果(當時我們猜測AlphaGo大概會取得一到兩場勝利,但李世石會決定性地贏得整場比賽)。誰也沒有料到圍繞這場比賽爆發出空前的宣傳熱浪,這項賽事成為全世界的頭條新聞,比賽的故事甚至都被拍成了電影[76]。

這場比賽中,AlphaGo以4∶1的成績擊敗了李世石:李世石輸掉了前三局,在第四局中扳回一城,但輸掉了第五局。大家都說,李世石一開場就輸了。他很驚訝——本來他以為會輕鬆取得勝利。而且不止一個人開玩笑說,AlphaGo故意輸掉第四局,多少給李世石留點麵子。

在比賽的很多節點上,人類評論員指出AlphaGo的舉動奇怪。很明顯,這種落子“不是人類會做的選擇”。當然,當試圖分析AlphaGo如何下棋的時候,我們是從一個非常人性化的角度來分析的,我們本能地尋找下圍棋時人類的動機和策略——我們將AlphaGo人性化了。試圖用這種方式理解AlphaGo是沒有意義的:它隻是一個程序,它的存在隻為了一個目的——贏得圍棋比賽。我們想把動機、推理和策略歸因於程序,但無法做到,AlphaGo的卓越能力是通過其神經網絡的權重來體現的。這些神經網絡不過是一串很長的數字列表,我們無法提取或合理化它們所包含的專業知識。AlphaGo也無法告訴我們它如此落子的原因,而這正是深度學習需要解決的關鍵問題之一。

AlphaGo被吹捧為深度學習和大數據型人工智能的勝利,從事實來看,它倒也實至名歸。不過撇開表象深入挖掘,你會發現AlphaGo中最能體現智慧的工程都源自經典的人工智能搜索。我們在第二章提到的於20世紀50年代開發了跳棋學習程序的亞瑟·塞繆爾,他在理解AlphaGo使用的搜索技術時不會有任何困難:從他的跳棋程序,到現代最引人注目的人工智能係統,都遵循著同一條發展路徑。

兩個裏程碑式的成就,對大多數人而言應該已經足夠了。但是,僅僅18個月後,深度思維再次出現在頭條新聞中。這次是一個比AlphaGo更厲害的人工智能,被稱為AlphaGo Zero。它的非凡之處在於它是從零開始學習下圍棋的,沒有學習任何人類棋手的棋譜。在沒有人工數據幹預的情況下,它達到了超越人類棋手的水平,而這一切,隻是通過它自己和自己下圍棋來實現的[77]。公平地說,它必須自己下過很多次才能達到超人的水準,但不管怎麽說,這都是一個驚人的成就。它的後續版本名叫AlphaZero,進一步推廣到玩包括國際象棋的其他棋類遊戲。在結束9個小時的自我學習以後,AlphaZero能夠在和鱈魚係統[12]對戰中連續擊敗對方,最少也能保持平局——鱈魚係統是世界領先的國際象棋程序之一。來自國際象棋編程領域的退役專家紛紛表示他們極其驚訝。AlphaZero自己和自己下了9個小時國際象棋,就能夠自學成為世界級的國際象棋手?這種想法簡直令人難以置信。而真正令人興奮的是這種方法的普適性:AlphaGo盡管在圍棋方麵表現優秀,但它隻能下圍棋,還必須事先學習許多人類專業棋手的棋譜。而AlphaZero似乎可以自學成才,並且適用於多種不同類型的棋類遊戲。

當然,我們得謹慎地下結論,不能過度解讀。首先,盡管AlphaZero體現了令人印象深刻的通用性(它在棋類遊戲專業的通用性方麵超過了此前任何一個人工智能係統),但它本身並不代表邁向通用人工智能的重大進步。它甚至沒有我們人類所普遍擁有的智能,在下棋方麵它很專業,但它不能跟人交流,不能講笑話,也不會煎雞蛋、騎自行車或者係鞋帶。它的卓越能力其實有著相當的局限性。當然,棋類遊戲是相當抽象的——它們與現實世界相去甚遠,正如羅德尼·布魯克斯很快將要提醒我們的那樣。

但是,盡管還有許多問題和麻煩,我相信一個簡單的事實:深度思維的工作,從他們的雅達利遊戲機到AlphaZero,代表了人工智能領域一係列非凡的突破性成就。在實現這一切的過程中,他們成功地讓數以百萬計的人們美夢成真。

邁向通用人工智能?

深度學習已經被證明成就非凡,它使我們有能力構建一些在幾年前無法想象的人工智能程序。盡管這些程序贏得了輝煌勝利,但它們並不是推動人工智能朝著宏偉夢想前進的魔法。接下來,為了解釋這個問題,我們來看一下兩個現在廣泛使用了深度學習技術的應用:圖像標注和自動翻譯。

在圖像標注問題中,我們希望計算機能夠獲取圖像並對其進行文本描述。在某種程度上具備這項功能的係統已經得到廣泛應用:我的蘋果Mac軟件在更新照片管理應用程序以後,能夠正確將我的照片分為“海灘場景”“派對”等等。在撰寫本文的時候,還有好幾個通常由國際研究機構運營的網站存在,你可以將照片上傳到網站,它會嚐試為照片做出標識。為了更好地理解圖像標注技術的局限性,進而理解深度學習的局限性,我將一張家庭照片上傳到一個網站中(本例中,我使用的是微軟的標注機器人)[78],照片如圖20所示。

圖20 這張照片的內容是什麽呢?

在我們得知標注機器人的回應之前,先請你看看這張照片。如果你是個英國人,或者是科幻小說迷,那麽你可能會認出照片中右邊這位先生是馬特·史密斯(Matt Smith),他在2010年至2013年的BBC電視節目中扮演神秘博士(左邊那位就別去猜了,那是我已故的嶽父)。

標注機器人對照片的回應如下:

我想這是馬特·史密斯以站姿拍照,他們看上去似乎很:-) :-)

標注機器人正確地識別了照片中的關鍵元素,並在某種程度上識別了照片背景(站姿,拍照,微笑),然而這種正確識別容易讓我們誤以為標注機器人正在做一些它肯定做不到的事情:理解。為了說明這一點,請考慮係統是如何識別馬特·史密斯的,正如我們之前所提到的,像標注機器人這樣的機器學習係統是通過給它大量的數據作為訓練樣本訓練出來的。每個訓練數據都由圖片和對應文字組成,最終,在識別了大量馬特·史密斯的照片以及對應的文本(即“馬特·史密斯”的人名)之後,當他出現在照片裏,係統就能正確識別出來,並生成文本“馬特·史密斯”。幾十年的努力研究畢竟是有用的。

但標注機器人並沒有真正“認出”馬特·史密斯,為了理解這一點,假設我讓你看這張照片,你可能會給我這樣的回應:

這不是馬特·史密斯嗎?演神秘博士那位演員,他摟著一個老人站著,這個老人我不認識。他倆都在笑。馬特打扮成神秘博士的樣子,可能是在拍攝現場吧。他口袋裏有卷起來的紙,大概是劇本。馬特手裏拿著紙杯,或許是在拍攝現場休息。背後的藍色盒子,那不是塔迪斯嗎?神秘博士的太空船時間機器,博士乘坐它四處旅行。他們是在戶外拍攝這張照片的,所以很可能就是在攝影現場,附近可能會有攝製組、攝像機和燈光。

標注機器人無法做到這些,雖然它能夠識別馬特·史密斯,但無法正確理解此處的文本“馬特·史密斯”意味著什麽。它也無法利用這些知識來解釋圖片中正在發生的事情。缺乏理解,這就是此處的要點。

當你看到馬特·史密斯打扮成神秘博士的照片,就可能聯想到一係列的東西,而不僅僅是簡單地識別出圖片中的人物和解釋圖片本身。如果你是一個“神秘博士”的粉絲,甚至還有可能深情地回憶起你最喜歡的由他出演的電視劇的某一集(我選擇《等待的女孩》,大家同意嗎?)。你可能還會記起跟父母或者孩子一起看馬特·史密斯主演的《神秘博士》時的場景,裏麵的怪物讓你嚇了一跳,等等;或者它會讓你聯想起一個攝影棚,或者攝製組什麽的。

因此,你對這幅圖的理解是基於你在這個世界上作為一個人類存在的經曆。這樣的理解對於標注機器人而言是不可能實現的,因為它沒有這個基礎(當然,它也並不打算擁有)。標注機器人完全脫離了現實世界,正如羅德尼·布魯克斯提醒我們的那樣:智慧是具體化的。我強調,這個觀點並非認為人工智能係統無法做到理解,而是說理解並不是僅僅將某個輸入(本例中指包含馬特·史密斯的照片)映射到某個輸出(本例中指文本“馬特·史密斯”)。這種映射的能力可能是理解的一部分,但絕不是全部。

將一種語言自動翻譯成另一種語言,是過去十年中因為深度學習技術而快速進步的另一個領域。來看看自動翻譯工具能做到什麽,又不能做到什麽,有助於我們理解深度學習的局限性。穀歌翻譯可能算是最著名的自動翻譯係統了[79],作為一個產品,它最初於2006年推出,最新版本的穀歌翻譯使用深度學習和神經網絡,這個係統是通過給它大量的翻譯文本訓練出來的。

讓我們看看,2019年版本的穀歌翻譯遇見不合理的難題時會怎麽處理。我們讓穀歌翻譯法國作家馬塞爾·普魯斯特(Marcel Proust)在20世紀早期所著的經典小說《追憶似水年華》的第一段,以下是第一段的法文原文:

Longtemps, je me suis couché de bonne heure. Parfois, peine ma bougie éteinte, mes yeux se fermaient si vite que je n'avais pas le temps de me dire: ‘Je m'endors.’ Et, une demi-heure après, la pensée qu'il était temps de chercher le sommeil m'éveillait; je voulais poser le volume que je croyais avoir encore dans les mains et souffler ma lumière; je n'avais pas cessé en dormant de faire des réflexions sur ce que je venais de lire, mais ces réflexions avaient pris un tour un peu particulier; il me semblait que j'étais moi- même ce dont parlait l'ouvrage: une église, un quatuor, la rivalité de Fran?ois Ier et de Charles Quint.

很難承認,盡管努力學了10年,我對法語的理解還是十分有限,隻能辨認出上文裏一些奇怪的孤立的句子,如果沒人幫我翻譯,我根本看不懂這段文字。

以下是由專業翻譯將它翻譯成英文的結果[80]:

For a long time I used to go to bed early. Sometimes, when I had put out my candle, my eyes would close so quickly that I had not even time to say ‘I'm going to sleep.’ And half an hour later the thought that it was time to go to sleep would awaken me; I would try to put away the book which, I imagined, was still in my hands, and to blow out the light; I had been thinking all the time, while I was asleep, of what I had just been reading, but my thoughts had run into a channel of their own, until I myself seemed actually to have become the subject of my book: a church, a quartet, the rivalry between Fran?ois I and Charles V.[13]

這下好多了!但有趣的是,雖然這是一段優雅的英文,但它並不是那麽直白好懂,至少對我來說是這樣。當作者寫下“I. . . seemed actually to have become the subject of my book: a church, a quartet, the rivalry between Fran?ois I and Charles V”(直譯:我……似乎真正成了這本書的主角:一個教堂、一出四重奏、弗朗索瓦一世和查理五世的競爭)時,到底指的什麽?你怎麽能“become”(成為)一個“church”(教堂)?他說的“quartet”(四重奏)又是什麽意思?還有Fran?ois I(弗朗索瓦一世)和Charles V(查理五世)之間有什麽“rivalry”(競爭)?另外,對一個使用電燈的人而言,

“blow out the light”(吹滅燭火)又是什麽意思?

接下來我們看看穀歌是怎麽翻譯這一段的:

Long time, I went to bed early. Sometimes, when my candle, my eyes would close so quickly that I had no time to say: ‘I fall asleep.’ And half an hour later the thought that it was time to go to sleep would awaken me; I wanted to ask the volume that I thought I had in my hands and blow my light; I had not ceased while sleeping to reflections on what I had read, but these reflections had taken a rather peculiar turn; I felt that I myself was what spoke the book: a church, a quartet, the rivalry between Francis I and Charles V.[14]

穀歌翻譯做的是一件很複雜的事情,跟專業的人工翻譯工作類似。但你並不需要相當專業的翻譯知識或者文學素養,就能夠看出這段翻譯其實挺爛的。在英語中,“blow my light”(直譯:吹出我的光芒)這個短語毫無意義,這就讓後麵的句子顯得也沒有任何意義。事實上,這些句子讀起來特別滑稽。而且翻譯結果中包含了母語為英語的人永遠不可能使用的短語。我們得到的總體印象是:這段文本大致可以辨認出是什麽意思,但是行文扭曲、不自然。

當然,我們給穀歌翻譯出了一道難題——翻譯普魯斯特的小說對一個專業的法譯英譯者而言都是個巨大的挑戰。現在問題來了,為什麽自動翻譯工具這麽難以處理文本呢?

關鍵就在於,你僅僅是懂得法語並不代表就能做好普魯斯特小說的翻譯。哪怕你精通法語,但普魯斯特的小說仍然會讓你摸不著頭腦,不僅僅因為他的文字風格,要正確翻譯他的小說,你就得理解它,這就需要你有大量的背景知識。關於20世紀初期法國社會和法國人生活的知識(例如你得知道他們使用蠟燭照明),法國曆史的知識(例如你得知道弗朗索瓦一世和查理五世之間的鬥爭史),20世紀早期法國文學常識(例如當時的寫作風格,還有作者可能引用的典故),以及對普魯斯特本人的了解(例如他最想表達的是什麽)。穀歌翻譯所使用的神經網絡裏可沒有這些知識。

要理解普魯斯特的小說需要各種各樣的相關知識,察覺到這一點並不新鮮。我們在第三章提到的Cyc項目中就遇見過。還記得Cyc項目的目標是創建“包羅萬象的知識庫”, Cyc的假設是,這將是創造通用人工智能的基礎。基於知識的人工智能研究人員肯定希望我向你們指出,早在幾十年前他們就預見到這個問題了(來自神經網絡研究界的尖銳反駁就是:基於知識的人工智能界根本沒創造出來適用解決這個難題的技術,對不對?)。但是,僅僅改進深度學習的技術就能解決這個問題嗎?我認為並不是這樣。深度學習將解決問題方案的一部分,我認為,一個合理的解決方案需要的不僅僅是更龐大的神經網絡、更強大的處理能力,或者更多無聊的以法國小說形式出現的訓練數據。它需要突破現有的模式,需要至少和深度學習本身一樣閃亮的突破性進展。我懷疑這些將需要明確的知識表述方式,也需要深度學習:我們必須消除明確表示知識的世界和深度學習以及神經網絡的世界之間的隔閡。

重大分裂

2010年,我應邀組織一個大型國際人工智能會議——歐洲人工智能大會(ECAI),大會在葡萄牙裏斯本舉行。參加類似ECAI這樣的會議是人工智能研究人員生活的重要部分,我們把自己的研究成果寫下來,提交給大會,由大會的項目委員會審核。項目委員會通常是由相關領域著名科學家組成的小組,他們決定哪些研究成果值得在大會上發表。權威的會議大概隻會接受五分之一的投稿,所以研究成果被大會接受是一件非常有意義的事情。真正大型的人工智能會議能夠吸引超過5000份的投稿。所以,你能想象,被邀請擔任ECAI的主席,我感到非常榮幸——這意味著科學界信任你,另外跟學院提升職加薪的時候也是值得大書特書的一筆。

作為主席,我的工作包括召集項目委員會成員,我非常希望能有來自機器學習研究領域的代表。但意外的事情發生了:每一位我試圖邀請加入項目委員會的機器學習領域專家,都禮貌地拒絕了我。被婉拒是常見的事情——畢竟,這是一項艱巨的工作。但是我連一個人都找不到就很奇怪了,是我的問題嗎?還是ECAI的問題?或者別的問題?

我向以前組織過這項活動的同事和組織過其他類似會議的人請教,他們也提到了同樣的情況。機器學習研究領域似乎對所謂的“主流人工智能”事件不感興趣。我知道機器學習領域的兩件學界大事是神經信息處理係統(NeurIPS)會議和國際機器學習會議(ICML)。人工智能多數分支領域都有自己的專家會議,所以該領域的專家們更注重這類會議,這不足為奇。但在此之前,我根本沒意識到,機器學習研究領域的許多人根本就不把自己視為“人工智能”的一部分。

事後來看,人工智能和機器學習之間的分裂似乎很早就有端倪了,也許是從1969年明斯基和帕普特出版了《感知器》這本書開始。正如我們之前所提到的,這本書似乎在扼殺神經網絡人工智能研究方麵起到了重大作用,從60年代末一直到80年代中期PDP(並行分布模型)的出現。即使在半個世紀之後的今天來回顧,人們對這本書出版的後果仍然感到痛心。不管分裂的起源是什麽,事實就是,在某種程度上,機器學習研究領域的許多人脫離了主流人工智能,沿著自己的軌跡發展。當然,也有許多研究人員認為自己可以輕鬆跨越機器學習和人工智能之間的隔閡。但直至如今,如果你給不少機器學習專家的研究工作貼上“人工智能”標簽,他們會感到驚訝,甚至惱火:因為對他們來說,人工智能隻是我在本書其他地方記錄的一長串失敗的想法罷了。

[1] 傳聞漢諾塔來自印度的古老傳說,印度教的主神梵天在創造世界之時,在世界中心貝拿勒斯(在印度北部)的聖廟裏設置了三根柱子和64個金環,並設定了移動規則。當僧侶按照規則把所有的金環都移動完成時,世界將在一聲霹靂中毀滅,梵塔、廟宇和眾生都將同歸於盡。

[2] P代表多項式時間,在計算機術語中,如果一個問題能夠在多項式時間內解決,這個問題就是有意義可解的,即P問題,簡單地說就是P問題的有效解決方案不會引起組合爆炸。NP問題指的是不確定能否在多項式時間內解決,但是確定能夠在多項式時間內驗證某個解是否有效的問題。是否能證明NP問題都可以等同於P問題,是當今計算機科學麵臨的一大難題,即P與NP問題。

[3] 人們將對於計算機來說最困難的問題,非正式地稱為“AI完全”(AI-complete)或者“AI困難”(AI-hard),以此說明解決了這些計算性問題就相當於解決了人工智能的核心問題——讓計算機和人類或者強人工智能一樣聰明。將一個問題稱為“AI完全問題”,意味著它不能被一個簡單的特定算法解決。

[4] 順勢療法是替代醫學的一種,其理論基礎是“同樣的製劑治療同類疾病”,意思是為了治療某種疾病,需要使用一種能夠在健康人中產生相同症狀的藥劑。

[5] MYCIN係統,是一種幫助醫生對住院的血液感染患者進行診斷和選藥治療的人工智能。

[6] 1英寸≈2.54厘米。

[7] 在層次係統中,上一層次單元所具有的構成其下一層次單元所不具有的某些性質。這種性質往往是由於下一層次單元及其相互聯結方式的非線性性質產生,也即總體不等於其各個部分之和。

[8] 布魯克斯是iRobot公司的創始人,該公司廣受歡迎的產品Roomba智能掃地機器人就來自他的研究成果[81]。

[9] 博弈論的英文為game theory,直譯為“遊戲理論”。

[10] 信用分配問題(credit assignment problem),也有譯為讚譽分布、功勞分配的,通俗來講可以比喻成你吃了10個包子後吃飽了,但是你並不知道具體是哪個包子為你吃飽的貢獻比較大。

[11] 異或是一種邏輯運算,計算機符號為“XOR”,運算法則為當a、b兩個值不相同時,異或結果為1,當a、b值相同時,異或結果為0。

[12] 鱈魚係統是世界領先的國際象棋程序之一。

[13] 中文翻譯如下:我每天都早早躺下,已經持續很長一段時間。有時候,蠟燭剛滅,我甚至來不及咕噥一句“我要睡著了”,就進入夢鄉。半小時之後,我才想起應該睡覺,這一想反倒讓我清醒過來。我準備把感覺還握在手裏的書放好,吹滅燈火。一直到睡著,我都在思考剛才讀的那本書,隻是思路有點特別:我總覺得書裏說的事兒,什麽教堂呀,四重奏呀,弗朗索瓦一世和查理五世爭強鬥勝呀,全都同我直接相關。

[14] 法文原文使用翻譯軟件翻譯結果如下:長久以來,我睡得很早。有時候,我的蠟燭剛剛熄滅,我的眼睛閉得太快,以至於我沒有時間對自己說:“我睡著了。”半小時之後,想到是尋找睡眠的時候了,我醒來了。我想放下我還以為我手上還有的書卷,吹出我的光芒。我在睡覺的時候一直在思考我剛才讀到的東西,但這些思考卻有一點特別,我覺得我就是作品中提到的那個人:一個教堂,一個四重奏,弗朗索瓦一世和查理五世的競爭。