雲與鍾類問題:從國際象棋到AI圍棋,為什麼老思路無法解決新問題

導語:20世紀最著名的哲學家之一卡爾·波普爾,把所有的複雜問題歸為鍾類和雲類兩種。我們可以把一個鐘摔碎然後復原,就能弄明白時鐘的原理。但是,這一套理論卻對於一些新興雲類系統就完全無法奏效,比如生態系統、氣候系統、金融系統等。面對瞬息萬變、難以預測的新興雲類問題,我們還能用老的思路再去解決嗎?

1969年,美國兩名宇航員駕駛阿波羅11號成功登上月球,之後又能順利返回月球。目前,我們對此創舉可能只是一句輕描淡寫的稱讚,但這項曾經被認為是不可能完成的任務所需要解決的問題,真的是多到我們無法想象。

雲與鍾類問題:從國際象棋到AI圍棋,為什麼老思路無法解決新問題

這個複雜的系統可以被拆解成由40多萬名工程師共同設計類似於鐘錶的精密獨立零件,而每一個零件又被組裝成一個複雜的子系統。阿波羅11號登月計劃,的確是建立了一個脫離地心引力進入外太空的偉大交通工具。但其意義並不止於此,阿波羅11號登月飛船還為未來進入外太空的“交通工具”,提供了一個高度可預測的模型。

阿波羅11號登月飛船需要達到3400千米/小時的速度,才能和以3700千米/小時的月球相遇。雖然現在看起來並沒有什麼,但是在當時,能夠精準預測位置、速度、加速度等無數變量,並控制許許多多飛行姿態,可以說是一項非常了不起的成就。

需要注意的是,這一切的實現都是靠著一臺僅64KB內存、運算速度0.043MHz的電腦。這樣不起眼的電腦,卻完成了世界上最複雜的鐘類問題之一。可是隨著電腦配置不斷提升,如果繼續按照這種思路,我們會發現還是解決不了新興雲類問題,因為這是完全不同的問題。

什麼是鍾類和雲類問題?

那麼,到底什麼是鍾類和雲類問題?

簡單來說,可按照“拆解分析、拼裝還原”的思路來解決的問題都屬於鍾類問題,而對於那些不可預測、不確定的系統就被稱作做是雲類問題。

雲與鍾類問題:從國際象棋到AI圍棋,為什麼老思路無法解決新問題

鍾類問題鍾各個部件以及相互之間的行為關係可以說是有規律的、確定的以及完全可以預測的。即使航天飛船再怎麼複雜,各個系統之間的關係是確定並且可以預測,也是能夠被分析還原。但是雲類問題則不同,即使我們能夠預測在某種特定情形下的運作方式,但是我們依然可能無法理解他們未來會如何表現。

因此,對於雲類問題,我們不僅僅需要了解每個小部件的機理,還需要去了解各個部件組合起來而帶來的不確定性。就像雲層水滴內部水分子之間相互牽制又瞬息萬變,彼此之間若離若現不可預測。但是沒有任何威力的小水滴聚合在一起,就會形成自然界非常可怕的破壞力,比如大暴雨。

雖然我們能理解雲鍾水滴的各種特性,也能夠較為精準地預測天氣變化,但是我們根本無法理解整個系統的行為。因為,要想了解一片,我們不僅需要了解周圍其他雲,還需要了解非常複雜的交互影響,比如光照、溫度、大氣壓、地區等等。甚至,還有一些影響雲的變量,我們還沒有徹底弄明白。

雲與鍾類問題:從國際象棋到AI圍棋,為什麼老思路無法解決新問題

簡單來說,雲的行為就是不規則、無序且高度不可預測。目前,我們只能根據一些關鍵量來預測天氣變化,但是對於確切的時間、確切的規模、確切的內部關係,我們無法像列出數學公式一樣找到內在本質規律。

新興系統的出現毫無確切可言,隨著而來的是未知、不可預測以及不可知的變量,讓我們對雲類問題措不及防。但是,我們又經常用希望用這種工程化的思維來理解我們出現的新興系統。比如一些人認為人工智能系統不可靠,原因在於我們無法用一個確定的理論來描述這個系統。

於是,一些理論派堅持不懈,仍希望用工程化的思維來量化這個本身就不可確定的系統。

最簡單的一個例子就是,國際跳棋、國際象棋以及圍棋的人機對戰。國際跳棋總共有5×10的20次方種變化,但步數還是有限的,而且每一步都是遵循簡單的電腦程序規則。因此,國際跳棋歸根結底還是一個鐘類問題。但是國際象棋的走法則多達10的120次方,比宇宙中已知的原子數量還要多。

雲與鍾類問題:從國際象棋到AI圍棋,為什麼老思路無法解決新問題

IBM“深藍”

最終IBM的“深藍”打敗了最優秀的人類玩家,但是這是一個典型的利用超人類的暴力計算完勝人類的典型案例。最終說到底,“深藍”還是在解決鍾類問題。可是到了圍棋,保守估計變化多大10的170次方,甚至有人估計在每步棋合理的情況下,圍棋變化可能多達10的800次方。

如果說,計算機可以通過暴力計算解決國際象棋問題。那麼,要是還按照之前的思路,圍棋是絕對不能被計算機突破。那麼,戰勝人類圍棋頂級選手的AlphaGo,又是如何解決這類問題的呢?

AlphaGo為何能在處理雲類問題上表現優異?

前面也提到,圍棋變化的可能應該已經算是最接近雲類問題的棋牌遊戲。雖然目前來說,我們並不能把圍棋問題當作嚴格意義上的雲類問題。但是在AlphaGo出來之前,圍棋絕對算得上是一個非常複雜雲類問題。

而且,可以肯定地是,AlphaGo也絕對不是按照像“深藍”一樣的老思路來解決圍棋這類新問題。

雲與鍾類問題:從國際象棋到AI圍棋,為什麼老思路無法解決新問題

我們首先需要明確一個事,深藍雖然是通過暴力計算戰勝頂級人類選手。但是,也只是以3比2險勝。即使按照現在的計算能力,我們如果還是以暴力計算的方式,最終結果也不會太好,更不用說應對多好幾十個數量級的圍棋。

因此,過去崇尚暴力計算的老思路面對新興雲類問題,就顯得極其力不從心。人類雖然輸了,但是人類具備一種獨特的能力,能夠不依靠暴力計算解決一些新興雲類問題,那就是通過棋理建立特有的、難以用言語表達的“直覺和創造力”。

不同於國際象棋會有“皇后”的價值遠遠大於“兵”的情況,圍棋的棋子並沒有差異,這也使得計算機很難對圍棋進行評估。換句話說,我們幾乎不可能用一個評價函數來選取足夠豐富的特徵來捕捉這種人類的直覺。

AlphaGo之所以能夠處理圍棋這類雲問題,不僅是因為其擁有超強大的計算能力,而是它通過深度學習形成了類似人類的某種“直覺”。簡單來說,深度學習可以從千百種圍棋走法中歸納出各種規律,並在此基礎之上決定走哪一步最好。

雲與鍾類問題:從國際象棋到AI圍棋,為什麼老思路無法解決新問題

AlphaGo的搜索樹

為了更好建立這種直覺,AlphaGo把自己模擬的成千上百的棋盤對局的勝負統計數據推到搜索樹的最高層次,也即存放從當前局面開始各種走法的勝負次數。一旦推演的棋盤足夠多,AlphaGo就會擁有關於下一步棋該怎麼走的直覺。

那麼,AlphaGo的難點就落到如何模擬實戰棋局。事實上,每當AlphaGo需要模擬棋局的時候,它就會一步接一步地去預測每個玩家可能的走法,而不是採用隨機抽樣走子的方式。要實現這個過程,AlphaGo採用了13層深度學習網絡的走子預測網絡。而且這個網絡包合了特別多人為總結的圍棋邏輯,因此,這個網絡也是專門為下圍棋而設計的。

AlphaGo擁有的兩套獨立算法共同決定下一步棋該如何走。第一種是策略網絡,作用是結合之前經歷的所有對弈,根據實際情況來推斷走那一步棋比較好。另一種是估值網絡,計算每一步棋可能成功的概率。兩種算法共同構成了一套動態變化的規則,讓AlphaGo能遵循這個規則下棋。

雲與鍾類問題:從國際象棋到AI圍棋,為什麼老思路無法解決新問題

但是,每一盤棋中,玩家大概需要從250個節點中選擇落點,AlphaGo的走子預測網絡能夠以相當可觀的57%準確率預測玩家的落點。這並不完美,AlphaGo對於預測玩家落點仍然存在很大的不確定性。但是,即使最佳的人類玩家也無法完美預測選手的落子。因此,AlphaGo通過推演棋局時對玩家的走法進行抽樣的做法,是合理的。

雖然走子預測網絡如此精確,但它慢得不切實際。生成需要的數千個樣本中的一個樣本就要花費將近半秒鐘的時間。但是,一種被稱為蒙特卡洛樹搜索的算法導致了計算機圍棋範式的轉變。蒙特卡洛樹搜索在模擬棋盤時分為速度慢、精度高的慢速走子演算網絡和速度快、精度低的快速走子演算網絡,從而解決了走子預測緩慢和惡劣的錯誤走子問題。

總之,AlphaGo採用了與之前暴力計算完全不同的“抽樣走子”思路,來建立類似人類的“直覺”,從而有效解決了圍棋這種雲類問題。

為何不能沿用老辦法解決新問題?

從國際象棋到圍棋,人們一直在探索如何解決這種不確定性很強的新興雲類問題。

無論是天氣、股市、市場體系、生物圈還是人類社會活動等,裡面都帶著一定的不確定性,人們也是不可能完全理解。計算機的配置再高,也不能解決雲類問題所帶來的挑戰,只能說在問題的表面上取得初步的進展,特別是在暴力計算方面,人類已經幾乎接近極限。

雲與鍾類問題:從國際象棋到AI圍棋,為什麼老思路無法解決新問題

谷歌數據中心

這也就是物理極限!

這個不僅僅是摩爾定律的上限,而且如果我們繼續按照現在的速度加速存儲數據,就會發現一個非常可笑的場景。預計全球所有的數據中心每年消耗的能源比英國全年消耗的能源高出25%,其碳足跡堪比整個航天工業。僅就日本而言,如果該國的數據中心繼續保持現有的增長速度,到2030年就會耗盡整個國家的能源輸出。

而且,如果持續按照現在的發展速度,我們將會面臨因存儲空間不足而無法存儲過多數據。到2020年,預計世界每年會產生44澤字節(Zettabytes,44後面有21個零)的數據 ,到2025年,這個數據將陡增至180澤字節。這意味著我們的數據年產出量每兩年就會翻一番,而且還將繼續加速。按照這種速度,到2220年,哪怕是把太陽系中每一個原子都用來存儲數據,我們也會突破極限。

雲與鍾類問題:從國際象棋到AI圍棋,為什麼老思路無法解決新問題

因此,我們實在無法再繼續按照這種有限的、工程化的解題思路,來應對更多不確定的新興雲類問題。但是,這並不意味著,我們要拋棄以前解決鍾類問題的方式,原因在於鍾類問題不會消失。但是,我們需要認識到技術問題之間的差異,工程化思維解決的是可線性化、可簡化推理的鐘類問題,但是不確定性的雲類問題可能就需要採用系統行為分析的研究思路。

這就是為什麼我們已經不能再按照老思路來解決新問題,一個是條件不允許,一個是無法解決。

人工智能是目前最接近能夠幫助人類打開未來的技術, 但是從目前來看,即使是研究或者探索人工智能技術本質的人,也都不能很好解釋和理解人工智能系統做出某種決定或者選擇的原因。換句話說,我們目前通過任何預想的規則都是沒有辦法很好地去理解和預測這些新興雲類問題。

或許可以說,不確定性是對未來缺乏瞭解。

最後,做一個簡單的類比來說明我們應該採用何種新的思路來解決新的問題。

雲與鍾類問題:從國際象棋到AI圍棋,為什麼老思路無法解決新問題

人工智能挖掘隱藏數據背後的行為

想解決這個問題,我們就回歸到人本身。千萬不要忽視人具備“直覺”這個獨特能力,即使目前我們還真的不瞭解這種“直覺”背後的機理。

假如你在做一件比較難的決定,你要做的事首先是先想出一些好的選項。一旦有了這些選項,你下一步很有可能就會找出最有可能成功的選項。

換句話說,這種從經驗中去學習的行為分析新思路應該是應對新興雲類問題所必須的。

結論

本文從阿波羅11號登月飛船這個龐大複雜而又高度可預測的系統入手,引出對什麼是雲和鍾類問題的思考。進而得出,按照“拆解分析、拼裝還原”的老思路是無法解決我們目前面臨的諸多新興雲類問題,比如天氣、市場分析和社會行為等。

究其原因在於,系統的不確定性導致這兩類問題呈現出完全不同的解題思路。

為了進一步說明,靠“性能堆積、暴力計算”的老思路無法解決新興雲類問題。本文從國際象棋到AlphaGo圍棋的轉變入手,說明AlphaGo為了應對圍棋這種新興雲類問題,摒棄了之前的老思路,採用“隨機走子來建立類人直覺”的新思維方法。

為什麼老思路無法再解決新興雲類問題?一是未來存儲條件不滿足,二是老思路也根本無法解決。利用鍾類問題的工程思路,也只能對雲類問題的表明進行分析。而且,我們目前通過任何預想的規則都是沒有辦法很好地去理解和預測這些新興雲類問題。

不確定性很有可能是我們對未來的不瞭解,或許按照“從經驗中學習”的行為分析新思路將是我們打開未來的新思路,即使目前我們還不能很好理解這背後的行為。


如果您覺得本文對您有價值,

歡迎大家關注靜心科技,靜心科技為您提供不一樣的靜心視角。

如果您有不同的看法,

歡迎在下方留言板留下您的意見建議


分享到:


相關文章: