谷歌人工智能AlphaGo圍棋下九段棋手代表什麼?
這兩天一個熱鬧的討論,就是谷歌公司推出的人工智能,名叫AlphaGo,與韓國九段棋手李世石下圍棋,於3月9日及今天10日連勝兩局。
自從當年IBM的深藍在國際象棋上下勝了國際象棋的世界冠軍後,圍棋因為運算量龐大,一直認為在是計算機難以挑戰的領域。
然而自從深度神經網絡技術出現後, 人工智能領域得到了巨大的發展,大眾普遍會發現近幾年,無論是手寫輸入還是語音識別都有了巨大的提升。
深度神經網絡的主要提升在於,它大大提高了對深層邏輯的提取,通過海量的數據訓練,可以讓其不斷將更復雜的邏輯規則進行識別並抽象並提取出來,然後這個抽象的結果作為一種數據結構保存下來,可以用於辨別事物。
對於類似AlphaGo這樣的系統,原理上是相通的,然而真正讓其得到最大提高的部分在於,它可以自己與自己進行下棋,然後不斷總結更優結果,於是便能不斷進行優化。
在過去的神經網絡系統中,面臨一個問題就是,在識別數據的時候,很容易出現識別到一半,整個網絡分佈就散了,於是就識別不下去了,這方面要細說就要談到深度學習方面了,這裡先不談這個。
簡單來說,AlphaGo它在圍棋上取得的成就,已經超過大部分棋手了,這意味著在圍棋領域,專業的九段高手也有面前敗下陣來的。
有很多人說,圍棋以後也沒有可玩的了,因為在機器面前,人已經無還手之力了,這個說法顯然是不對的。因為圍棋的解集是很大的,能夠構成的圍棋局盤是一個天文數字,AlphaGo目前所提取的圍棋規則及下法,仍然是從棋譜學習,並進行自我不斷演算,然而無論如何演算,它是不可能覆蓋所有的可能,只是在一個局部範圍內尋找到了最優解。而這個局部範圍的求解結果,極有可能在另一個角度上是錯的,如果有足夠多的局例對AlphaGo的下棋特點進行分析,那麼人戰勝AlphaGo並不難,在一些微妙的識別上,人工智能算法會很難處理。
舉例來說,如果是在字符識別上,如果你把一個“2”寫得模糊一些,那麼對機器識別來說,它可能是“2”,也可能是“乙”,還有可能一個扭曲的“S”,亦或是其它的什麼。如果有上下文的情況下,產生了會導致誤導的模糊邏輯,那麼要它識別出來就會很困難了。雖然理論上機器也可以聯繫上下文進行處理,然而現實中卻不那麼容易,比如機器學習中,提供的數據通常需要要規範的格式,如果是雜亂需要整理的內容,學習在對新內容的學習上會搞得一片混亂。
任何系統都一定是有BUG的。記得以前玩過下象棋的智能系統,如果是按步就班的下,難度還是很高的,然而如果走些明顯很不合理的怪棋,往往系統自己就完蛋了,它們也會走一些莫名其妙的棋。像AlphaGo必然也存在這樣的問題,只是體現在哪裡並不清楚。
另外,既然AlphaGo能夠自我進行下棋博弈進行優化,那麼就說明,人工智能在自己與自己下的時候,總有一方勝一方負,如果沒有的話,便不可能進行優化了。
換而言之,戰勝目前狀態的AlphaGo解法是一定存在的,然而這些如何應用在下棋上,又如何才能戰勝,只能等棋手們去思考了。
說到人工智能,AlphaGo的侷限性在於,它目前實現的智能程度確實很高,然而卻是體現在僅僅下棋這個方面,如果比喻的話,AlphaGo實際上就相當於一個刻苦學習的白痴,然而因為他實在太刻苦了,所以在某一個方面掌握得就能非常精深,然而在其它方面,就完全不行了。
什麼都能識別都並加以學習的人工智能,是通用人工智能,目前這樣的系統還沒有出現,AlphaGo同樣稱不上這方面好的開始,因為它的表現是在某一個專精方面的深入,而不是其它方面。當然這個也是很有意義的,利用計算機這樣的工具,可以讓我們更好的學習研究一些深入的知識。
如果虛心一些,那麼AlphaGo這種系統的數據訓練方式,對我們現實的啟迪是什麼?它意味著如果一個人先天不是太糟糕的情況下,後天的刻苦努力最起碼可以讓人在某一領域獲取成就。