當AI開始“踢臟球”,你還敢信任強化學習嗎?
編者按:本文來自微信公眾號“腦極體”(ID:unity007),作者 藏狐,36氪經(jīng)授權發(fā)布。
足球機器人排成一排向球門發(fā)起射擊,但守門員卻并沒有準備防守,而是一屁股倒在地上開始胡亂擺動起了雙腿。然后,前鋒跳了一段十分令人困惑的舞蹈,跺跺腳,揮揮手,啪嘰一下摔倒在地上。然后比分守門員1-0。
這場景像不像比國足對戰(zhàn)梵蒂岡(并沒有),一切都是那么迷幻且不真實。如果說它是阿爾法狗和OpenAI Five等的“同門師兄弟”,都是用強化學習訓練出來的,大家想不想開除它的“AI籍”?
顯然,雖然曾經(jīng)大敗柯潔李世石,團滅Dota2國家隊,并被視作AGI(通用人工智能)必由之路,但強化學習算法,頭頂上始終有著一口摘不掉的“安全性”大黑鍋。
而這也是阻止它真正落地應用的根本原因。畢竟沒有人希望自動駕駛汽車開著開著就把乘客帶到溝里去,或者是機器人端一杯開水直接澆到主人頭上。
到底為什么,強化學習總會犯一些匪夷所思的錯誤,有研究人員認為,這是因為系統(tǒng)中的智能體可能會被一些怪異的行為所欺騙。
具體是怎么回事呢?研究原本打算今年4月在埃塞俄比亞舉行的學習代表國際會議上發(fā)表,目前看來能順利召開的概率幾乎不存在,所以我們就提前云解讀,來聊聊看似穩(wěn)健的強化學習策略背后,究竟掩蓋著哪些嚴重的缺陷。
不省心的AI:告別臟數(shù)據(jù),但學會了臟行為
強化學習取代監(jiān)督學習,成為深度學習領域的“未來之星”,不是沒有原因的。
因為監(jiān)督學習是通過標記好的數(shù)據(jù)集來進行訓練的,這意味著,如果對輸入的數(shù)據(jù)進行一些微小的調整,比如改變圖像的像素或是更換語音包的內容,都可能讓AI陷入混亂,有可能將蟲子識別為賽車,讓紳士學會臟話……
與之相比,強化學習就智能多了。因為它是模仿人類的學習模式,能體(Agent)以“試錯”的方式進行學習,通過與環(huán)境進行交互,以獲得最大的獎賞為追求來做出行為反應。
就像不斷告訴小孩子好好寫作業(yè)就有好吃的食物獎勵,不好好寫就關小黑屋,久而久之為了“利益最大化”,自然就會將寫作業(yè)與好吃的聯(lián)系起來,去產(chǎn)生正確的動作。
通過這種“行動-評價”機制來獲得知識,改進行動以適應環(huán)境,是不是聰明了許多。這也是為什么,人類開始讓強化學習玩游戲、開汽車、搞藥物實驗……
但研究證明,強化學習的效果并沒有預期的那么穩(wěn)定,很容易受到篡改輸入的影響。
加州大學伯克利分校的亞當·格里夫(Adam Gleave)發(fā)現(xiàn),強化學習不會因為添加少量噪音(不適當?shù)妮斎耄┒黄茐?,因為智能體(agent)可能根本看不到那些東西,而如果改變它周圍事物的行為方式,智能體卻會被那些奇奇怪怪的行為所欺騙,進而產(chǎn)生一些奇怪的“對抗”策略。
比如開篇提到的足球比賽,當“守門員”開始不按規(guī)矩出牌,“前鋒”也就跟著瞎舞動起來了。這種錯誤的“對抗性策略”,導致的安全威脅可能會更大。
首先,比起投喂給監(jiān)督學習“臟數(shù)據(jù)”,強化學習“被誤導”,受影響的將是AI系統(tǒng)的整體行為。如果說數(shù)據(jù)集被污染會讓AI準確率下降,那么強化學習錯誤訓練出的AI有可能將攝像頭輸入的信息錯誤分類,然后指導傳感器做出預期之外的反應。比如行人突然揮舞手臂,無人駕駛汽車就失控了……這,聽起來還是挺“災難片”的。
其次,超強的學習能力也會導致研究人員根本來不及發(fā)現(xiàn)和糾正AI的錯誤行為。
研究小組利用強化學習訓練棒形機器人玩兩人游戲,包括踢一個球進一個球,橫越一條線,和相撲等等。然后,又訓練了第二組機器人來尋找打敗第一組機器人的方法。結果發(fā)現(xiàn),第二組機器人很快發(fā)現(xiàn)了對抗策略,并用不到3%的訓練時間后就學會了可靠地擊敗受害者,要知道受害者可是在第一時間就學會了玩游戲啊。這就像新來的高智商版的胖虎同學,拼命欺負大雄,老師還沒辦法及時發(fā)現(xiàn),妥妥的校園霸凌??!
顯然,第二組機器人的努力并不是為了成為更好的球員,而是通過發(fā)現(xiàn)對手策略來制敵并贏得勝利。在足球比賽和跑步比賽中,對手有時甚至都站不起來。這會使受害者坍塌成一堆扭曲的東西,或者在周圍扭動,那場面,真是猛男都不忍看……
我估計吧,叛逆的智能體同學可能是這么想的:
聽說打贏有獎,但我啥都不會,先溜達溜達,隨便打打看吧;
哎,這個人怎么這么厲害呢,讓我好好瞅瞅;
前輩策略也學習的差不多了,這樣下去我倆豈不是難分伯仲?
哎呀嘿,發(fā)現(xiàn)了對手漏洞,將干掉對手納入策略選項;
是繼續(xù)PK讓自己變得更強?還是直接干掉對手?哪個得到獎勵最簡單劃算!
顯然是選項二啊,揍它!
不要覺得我是在瞎說啊,在學術界這樣的奇聞軼事可是數(shù)不勝數(shù)。
比如訓練機器人室內導航,因為智能體一旦走出“房間”,系統(tǒng)就會判定機器人“自殺”,不會對它進行負面獎勵(扣分),所以最后機器人幾乎每次都選擇“老子不活了”,因為它覺得完成任務太難了,0分反而是一個最佳結果。
還有的研究者試圖讓機器人用錘子釘釘子,只要將釘子推入洞孔就有獎勵。然后機器人就完全遺忘了錘子,不停地用四肢敲打釘子,試圖將它弄進去。
雖然強化學習這一bug為我們貢獻了無數(shù)段子,但這絕不是研究人員所期待的。
盡管人類玩家會“踢臟球”,但AI想要在游戲中搞骯臟手段那是萬萬不能的。
不過好消息是,這種情況相對容易受到控制。當研究者格里夫對受害者智能體進行微調,讓它思考對手的怪異行為后,對手就被迫變回熟悉的技巧,比如扳倒對手。
好吧,雖然手段仍舊不怎么光明磊落,但至少沒有繼續(xù)利用強化學習系統(tǒng)的漏洞了。
獎勵黑客:強化學習的甜蜜負擔
由此,我們也可以來重新審視一下強化學習在今天,想要真正成為“AI之光”,必須跨越的技術門檻了。
關于強化學習被廣為詬病的訓練成本高、采樣效率低、訓練結果不穩(wěn)定等問題,背后最直接的歸因,其實是“獎勵黑客”(reward hacking),就是智能體為了獲得更多的獎勵,而采取一些研究者預期之外,甚至是有害的行為。
其中既有獎勵設置不當?shù)脑颍热缭S多復雜任務的獎勵信號,要比電子游戲難設置的多。
就拿研究人員最喜歡讓智能體挑戰(zhàn)的雅達利游戲來說,其中大量游戲的目標都被設計成最大限度地提高得分。而智能體經(jīng)過訓練,比如在DeepMind的一篇論文中,其設計的RainbowDQN就在57場雅達利游戲中,以40場超越人類玩家的絕對勝利成為王者。
但如果任務不是簡單的得分,而是需要先讓智能體理解人類的意圖,再通過學習去完成任務呢?
OpenAI曾經(jīng)設計了一個賽艇游戲,任務原本的目標是完成比賽。研究者設置了兩種獎勵,一是完成比賽,二是收集環(huán)境中的得分。結果就是智能體找到了一片區(qū)域,在那里不停地轉圈“刷分”,最后自然沒能完成比賽,但它的得分反而更高。
顯然,一旦獎勵函數(shù)無法被精準直接地設置,困難就來了。因為智能體可無法跟研究者“心有靈犀”,一開始就清楚地知道人類想要什么。它是通過試錯,不斷嘗試不同的策略來學習的。這也就意味著,它很大概率會在訓練過程中“鉆空子”,發(fā)掘出不正確但是有用的策略。
這也直接導致了兩個結果:
一是盡管理論上,只要為強化學習系統(tǒng)設計的足夠優(yōu)秀,在現(xiàn)實環(huán)境中實現(xiàn)就不成問題,但實際上許多任務的獎勵是很難設計的,研究者往往不得不采用約束型策略優(yōu)化(CPO)來防止系統(tǒng)過擬合,提高其安全性,以防止預期外的結果。
可是這樣一來,又限制了強化學習能力的泛化,導致那些在實驗室中表現(xiàn)很好的強化學習系統(tǒng),只在特定任務中起作用,像是一些游戲、比賽中。可一旦讓它應對日常應用,比如無人機控制(UAV Control)和家用機器人等,就不靈了。
二是增大了隨機性。
前面提到,強化學習的探索方式就是“試錯”。所以,它會試圖從一大堆數(shù)據(jù)中找到最佳策略。但往往,它會在一大堆無用的數(shù)據(jù)中進行一些無意義的嘗試。這些失敗的案例,又為智能體增加了新的維度,讓它不得不投入更多的實驗和計算,以減少那些無用數(shù)據(jù)帶來的影響。
本來強化學習的采樣效率就不高,再加上隨機性的干擾,得到最終成果的難度,自然指數(shù)性增加了。這也進一步讓強化學習變得“紙上談兵”,走進現(xiàn)實應用難上加難。
等待援軍:改變或許在圍墻外
顯然,強化學習存在的很多問題,是其技術根源本身就與生俱來的。
這也是有許多專業(yè)人士并不贊同將強化學習過度神化的原因。比如軟件工程師Alex Irpan就曾在Facebook發(fā)文,聲稱:每當有人問我強化學習能否解決他們的問題時,我會說“不能”。而且我發(fā)現(xiàn)這個回答起碼在70%的場合下是正確的。
改變的力量從哪里來?顯然深度學習本身已經(jīng)很難提供變革的養(yǎng)分。目前的研究方向主要有三個:
一是增加智能體的先驗經(jīng)驗。
人知道不能“踢臟球”,是因為我們已經(jīng)擁有了大量的先驗知識,默認了一些規(guī)則。但強化學習機器智能通過狀態(tài)向量、動作向量、獎勵這些參數(shù),來嘗試著建構局部最優(yōu)解。
能不能讓機器也擁有先驗經(jīng)驗呢?目前就有研究開始嘗試,用遷移學習幫助強化學習來提高效率,將以前積累的任務知識直接遷移到新任務上,通過“經(jīng)驗共享”來讓智能體解決所有問題。
二是為獎勵機制建模。
既然認為地設置獎勵難以滿足任務要求,那么讓系統(tǒng)自己學習設置獎勵,是不是能行得通呢?
DeepMind研究人員就鼓勵智能體通過兩個系統(tǒng)生成的假設行為來探索一系列狀態(tài),用交互式學習來最大化其獎勵。只有智能體成功學會了預測獎勵和不安全狀態(tài)后,它們才會被部署執(zhí)行任務。
與無模型的強化學習算法相比,使用動力學模型來預測動作的后果,從實驗看來能夠有效幫助智能體避免那些可能有害的行為。
三是尋求腦神經(jīng)科學的突破。
深度神經(jīng)網(wǎng)絡、增強學習等機器算法的出現(xiàn),本質上都是模擬人腦處理信息的方式。盡管增強學習被看做是最接近AGI(通用人工智能)的技術之一,但必須承認,其距離人類智能還有非常極其十分遙遠的距離。
以當下人類對大腦的了解,在認知過程、解決問題的過程以及思考的能力等機制還都不清楚。所以想要模擬人類的思考能力,強化學習乃至整個機器學習的升級,恐怕還依托于腦神經(jīng)科學的發(fā)展。
過去的數(shù)年間,強化學習幾乎是以一己之力撐起了人工智能浪潮的繁榮景象。谷歌正在將其打包成服務推廣到千家萬戶,中國的科技巨頭們已經(jīng)紛紛將其應用在搜索、營銷、推薦算法等各種應用中,自動駕駛的前景更是與強化學習綁定在一起。
可以說,數(shù)億人已經(jīng)借由互聯(lián)網(wǎng)產(chǎn)品,開始觸摸強化學習。
毫無疑問,它將繼續(xù)為人類世界發(fā)光發(fā)熱,帶著缺陷造就智能社會的輝煌。究竟如何才能用好這柄利刃,既是膽魄,亦需智慧。