如何快速理解強化學習的概念?馴隻貓就行。比如下面這位爺,巨皮。整天就是跑酷、尿炕、抓沙發,搞到人頭皮發麻、心態爆炸。直到你忍不,決定對它進行殘酷的貓德教育。方案是:
允中 發自 凹非寺
以後在傢,每當它表現出一次守貓德的行為,就獎勵一根貓條;
而每當它皮一次,你就立刻撲過去,咬它的頭……
這樣反復拉扯兩個月之後,你的貓再也不敢皮——
這個過程裡發生的事情,就是 “強化學習”:
一個智能體(你的貓)在與環境(有你的你傢)互動的過程中,在獎勵(貓條)和懲罰(咬頭)機制的刺激下,逐漸學會一套 能夠最大化自身收益的行為模式(安靜,躺平)。
所以其實,養貓跟搞人工智能,道理是一樣的。
強化學習最著名的代表當然是AlphaGo:幾萬盤棋,左右互搏,最後無師自通成獨步天下的圍棋之神。
如果把AlphaGo看作上面例子裡的貓,那在訓練裡,決定它能否獲得“貓條”的每盤棋最終的對弈結果——贏就有好東西吃,輸就要被吃(bushi)。
另外,DeepMind開發出過一個能在57款雅達利遊戲上都超越人類玩傢的智能體,背後依靠的同樣是強化學習算法。
不過這裡的獎勵和懲罰機制就要根據不同的遊戲來具體設計。比如玩最簡單的吃豆人,就可以對每次吃到豆子的行為進行獎勵,對撞到幽靈gg的狀況給予懲罰。
而除在遊戲領域天空海闊之外,強化學習,其實還能拿來搞自動駕駛。
如何訓練AI司機
為更方便地說明這件事怎麼實現,這裡我們借用一個道具:來自亞馬遜雲科技的Amazon DeepRacer。
一輛看上去很概念的小車,跟真車的比例是1比18。 車上安裝處理器、攝像頭,甚至還可以配置激光雷達,為的就是實現自動駕駛——
當然,前提就是我們先在車上部署訓練好的強化學習算法。
算法的訓練需要在虛擬環境中進行,為此Amazon DeepRacer配套一個管理控制臺,裡面包含一個3D賽車模擬器,能讓人更直觀地看到模型的訓練效果。
有這套東西,我們就能自己嘗試從零開始訓練一個AI司機。
具體怎麼做呢?重點來:
假設這是模擬器裡的一條完全筆直的賽道,以及虛擬環境裡的Amazon DeepRacer賽車。
我們的目標是讓賽車以最短的時間沖刺到終點——那麼對於這條賽道而言,最好的選擇就是讓車盡量沿著中線跑,避免因繞路或出界而導致增加時長。
為此,我們可以把賽道切分成多個網格,然後給這些網格賦予不同的分數:
靠近中間的,給更高的分;在兩側的,稍微意思一下;超出賽道范圍的部分屬於無效區域,如果碰到,就要從頭再來。
開跑之後,一開始,賽車並不知道哪一條是最佳路線,隻是在像無頭蒼蠅一樣四處亂撞,很多時候還會沖出賽道。
但後面,隨著試錯的次數越來越多,在獎勵函數的“指揮”下,賽車會逐漸探索出一條能夠獲得最高累積分數的路線。
理想狀況下,一段時間的訓練、迭代之後,算法就會學會“直線”最快這條真理。
而再把算法部署到車上,我們就能收獲一輛會跑直線的賽車。
當然跑直線隻是一種最簡單的情形,實際的賽道一般都更加復雜,很多時候沿中心線跑也並不是最快的路線,為此我們就需要調整訓練的策略和獎勵函數的設計。
實際操作中,具體函數的編寫同樣通過Amazon DeepRacer的管理控制臺完成。
在寫函數之前,我們可以在上面調整模型的超參數,然後定義它的行動空間,規定賽車行駛的速度和轉向時的角度,甚至……還能選擇賽車的皮膚,等等。
Amazon DeepRacer這一整套服務,蠻像一套入門強化學習的可視化教學工具,新手跟著提示也能一步步做下來,大傢如果有興趣,不妨自己試試。
挑戰吉尼斯?
當然,既然說是賽車,自然要追求速度,越快越好。
而如果你想測試一下,自己“培養”出來的AI司機到底夠不夠快的話……
亞馬遜雲科技官方還搞比賽,讓把大傢訓練的AI司機全都拉出來,比一比 ,看看誰才是真正的秋名山車神。
這個聯賽是一個全球范圍內的正經比賽。18年開始辦第一屆,辦到現在,總共有超過10萬人參加。從線上模擬到線下實體比賽,都有。
比賽在全球的機器學習開發者圈子裡已頗有名氣。去年,還跟F1搞過聯名,喊來當時雷諾車隊的車手裡卡多,跟大夥一塊開車。
而中國區也為中國的開發者建立專門的Amazon DeepRacer聯賽。
今年中國區聯賽分為兩個賽季,每個賽季的月賽根據賽道的難易程度和模型訓練難度的不同,分成大眾組和專業組。月賽組別排名靠前的選手,會有機會晉級到下一組別或參加線下比賽。
當然,比賽都有獎品。耳機、鍵盤、音箱……什麼亂七八糟的都有;
而如果你一不小心拿個賽季總冠軍的話,那恭喜你,你可以白嫖一張去拉斯維加斯的機票(還有酒店、大會門票)。
Amazon DeepRacer聯賽的報名是免費的,也沒有職業要求。隻不過如果你沒滿16周歲就來卷,就得需要監護人允許……
今年的比賽還在進行中,現在在官網上註冊賬號,就會自動獲得亞馬遜雲服務上10個小時的訓練時間,並且可以申請價值30美元的“點卡”。
與之同時,亞馬遜雲科技官方還在搞一個“挑戰吉尼斯世界紀錄”的活動,目標是突破4387這個參賽人數數字,申請成為全世界“最大規模的機器學習競賽”。
今年的每個參賽選手都會成為紀錄的一部分——甚至, 每人都有機會得到一張吉尼斯世界紀錄的挑戰證書。
至於這次挑戰的最終結果,會在十月份公佈。
到時,今年的亞馬遜雲科技線上中國峰會將在10月開啟,會上除公佈Amazon DeepRacer吉尼斯挑戰結果,還會有雲計算領域的眾多大咖做分享,以及相關的技術成果展示。
目前,線上峰會已經開啟報名,海報和鏈接在此:
https://summit.awsevents.cn/2022/signin?source=gh/ZsR4xii4TX2Vs20QVMuBJ8myz/eb2C54wsCCG96M=&tab=1&type=2