針對圍棋程序KataGo漏洞的對抗性技術使業餘選手也能輕鬆取勝
一個由麻省理工學院、加州大學伯克利分校和FAR AI的成員組成的研究小組創建了一個計算機程序,針對KataGo程序中的漏洞,使其能夠擊敗基於AI的系統。他們在arXiv預印本服務器上發表了一篇論文,描述了他們的努力。
2016年,DeepMind項目創建的一個計算機程序首次成功地擊敗了人類冠軍圍棋選手。該程序使用深度學習神經網絡來學習遊戲的運作方式,然後通過簡單地與自己對弈,學習如何在越來越高的水平上下棋。
最近,一個名為”KataGo”的類似開源程序向公眾發布,它也能打敗最好的人類棋手。但是,正如其他研究中所指出的,基於深度學習的程序往往有一個主要的弱點–它們只和它們所訓練的數據表現一樣好。也就是學習過程中包含漏洞反過來又會導致隨後技能上存在漏洞。在這項新工作中,研究人員尋找並發現了KataGo中的一個漏洞。
由於KataGo是按照”正常”的下棋方式進行訓練的,因此它在面對那些以看似奇怪的方式下棋的對手時可能會遇到麻煩。研究人員指出,一種對抗性的(奇怪的)下棋方式可能涉及到對棋盤一個角落的特殊下法,採取這種方式會使KataGo認為自己已經過早地贏得了比賽,因為它控制了棋盤的所有其他部分。
KataGo被抓到的漏洞如圖,(左)對抗方作為黑棋下;(右)對抗方作為白棋下。KataGo預測自己有很高的獲勝概率,而且從某種程度上說,它是對的–在KataGo的角度吃掉對手的大部分棋子,取得勝利會很簡單。然而,KataGo在完成確保其領土的工作之前選擇不落子,讓對手反過來不落子並結束本局。根據圍棋的標準規則,Tromp-Taylor(Tromp,2014),這導致了對手的勝利,因為對抗方佔領的角落領域可以取得分數,而KataGo方面由於對手的棋子的存在,其沒有完全佔領的領域沒有得到分數。
而圍棋的規則之一是,如果一個棋手不落子,另一個也選擇不落子,那麼遊戲就會結束,雙方都會計算自己的分數。由於對手在其角落的小範圍上已經有得分,而KataGo在不安全的領土上放置了對手的棋子卻得不到分數,因此對手得到了更多的分數反而輕鬆被判勝。
研究人員指出,這種策略只對KataGo有效;對其他人類使用這種策略會導致快速失敗,因為他們會憑直覺看到正在發生的事情。他們還指出,他們編寫對抗性程序的原因是為了表明人工智能係統仍然存在嚴重的漏洞–這意味著當它們被用於關鍵應用時需要非常小心,例如在自動駕駛汽車或掃描癌症圖像時。