不久前和諮詢客戶聊人工智慧,一般人總是直接想到圍棋alphaGo,「機器能想到各種前所未見的勝利方法,人們來不及應付,所以就輸了。」
當時我是這樣回答的:機器沒有「輸贏」概念,只有「數值」,被模型寫定了要追求棋盤上餘子數量比對手多。機器也不思考什麼事情,只是反復執行同一個任務,「此處落子後,接下來會是哪裡?」 每一步都如此推敲接下來的發展,從中擇優,直到終局。
人如何教電腦?
這個做法也不算創新,人就是這樣作,也這樣教電腦。電腦圍棋在70年代起步,早期做法是機械式地「背誦」棋譜,根據對手落子搜尋棋譜再對應,這種「亦步亦趨、不假思索」的方式很快就出現瓶頸。
接著另闢蹊徑,開始計算棋盤上的「氣」,計算當下可以造成對手最大傷害或創造自己最大存活機會的落子處,但這又難以判斷潛在的陷阱,因為計算量太大,當時的電腦根本無法處理。就這樣緩步二十年,直到alphaGo打敗人類冠軍,而那又是五年前的事情了。
電腦學會動能評估
如果說,第一階段可以歸結為「以人為師」,第二階段就是「邯鄲學步」,都是以「勝利」為前提所作的種種努力。只不過資質有限,機器徒弟打不過人類師父。
到了現在,電腦已經不再機械比對,而是動態評估。評估又分為兩個部分,一個是計算下一子可能出現在哪些地方。
另一個則是根據每個可能性,再推算這樣下之後接下來繼續推算直到終手時是否勝利,反算勝率後,再選高勝率處落子。這樣可做大量減少計算量,對於短期干擾也能免疫。機器就這樣「不慌不忙、按部就班」直到終點,然後呢?然後就贏了。
算得快、記得久
換句話說,贏是結果,而非機器的目標,反正每一子背後都是計算上億局之後的選擇,也絕對不會有狹路相逢勇者勝的問題,不必問,一定是電腦勝,因為計算後會輸的狀況都被排除了。有人挑刺,「可就是狹路啊?」「少年,你想多了,十步之前電腦就看到狹路,老早迴避掉了。」
機器心思很簡單,只是算得快、記得久罷了。一般人搞不懂,看著機器贏,然後還一路贏,嚇壞了,以為機器要主宰未來。
其實並非如此,不是機器主宰未來,是能用得起機器的人才能主宰未來,其他人為這個架構提供服務,許多關於機器學習的哲學思考從這裡才算開始,包括機器民主、AI貧民等,先前的說法就只能歸類成科幻小說了。