※ 引述《EvilSD (邪星暗(Usagi))》之銘言:
: 持續一直有再追蹤這件事,不過這次的比賽結果
: 確實讓我非常驚訝
: 先來簡單介紹一下DeepMid是如何訓練這個AlphaStar的
: https://www.youtube.com/watch?v=5iZlrBqDYPM
: 上面這段影片就是他們在讓AI學習的過程
: 一般常見的遊戲AI
: 都是直接讀取遊戲內部參數
: 然後透過寫好的腳本直接下去做執行
: 簡單來說就是讓AI根據不同種時間狀況作相對應的決定與抉擇
: 但DeepMid並不是如此,DeepMid使用的是深度學習的方式
: (如今我已經很難想像他們在這次AlphaStar是如何建構深度學習網路的)
: 我們在回到剛剛的影片
: 影片上的左邊有四個畫面
: 這就是所謂的特徵提取的動作
: 也就是AlphaStar在建立模型與學習的時候
: 是透過即時的影像進行,而不是透過讀取遊戲參數使用腳本的方式
: 困難點在哪呢?
: 普遍現在不論是學界與工業界
: 大家成熟的深度學習架構(也可以說現在最常見的AI)
: 大多數都是讀取一個畫面內的特徵參數進行學習
: 如果要簡單解釋就是,今天給你一張照片上面有隻狗
: 那AI辨識後就說這是狗,這是所謂的Classification
: 照片上有隻狗還能標記出在哪裡
: 那就是Classification + Localization
: 照片上有很多種物體並且都能標記出位子
: 就是 Object Detection(也就是目前智慧車常用的方式)
: 還有另一種叫做Semantic Segmentation
: 是將畫面上的每一個pixel去做標記
: 那AlpahStar做了些什麼呢
: 首先在早期的API裡
: 裡面可以同時學習20個Semantic Segmentation
: 而且是即時的,所以我甚至懷疑其實是Instance Segmentation
: 那單純只是學習這些畫面困難點在哪呢?
: 時間與未知(戰爭迷霧)
: 因為以前的AlphaGO
: 圍棋的大小是一個既定19X19的範圍
: 所以我下完一子後,我可以全局重新判斷
: 但星海完全不是如此
: 第一 星海的地圖資訊很多是未知的,所以我們才要防空投探圖等
: 第二 星海的遊戲是時間連續的,也就是我上一秒鐘做的事情會影響到下一秒鐘
: 跟圍棋完全不一樣,不是下完一子後重新掃描全局
: 所以困難點非常的多,在特徵提取上大概能夠理解
: 但多特徵合併後進行學習,又要保持時間上學習不會誤差放大(如傳統RNN)
: (傳統RNN在學習連續性資料後,往往一開始學習的資訊會遺忘或是誤差放大
: 因此後來才有了深度學習版本的LSTM與biLSTM)
: 上述的內容可能還是有點艱深難懂,但我已經盡可能講得比較簡單一些
: 總而言之大家現在討論的是APM 操作上的問題
: 但我看見的是,能透過視覺的方式
: 讓AI學習玩星海爭霸二
: 還能夠將遊戲時間拉長並且與職業選手對戰
: 我是覺得很不可思議
: 還是那種....完全無法想像他們訓練出這個模型的狀態
: 真的真的 非常的吃驚(原本以為這至少也要五年才能夠突破的瓶頸)
想說看到ML相關的,試著來講看看,順便看看自己的理解有沒有甚麼盲點
不過先講一下,我不是主要研究NLP這方面的,NLP我只懂一點皮毛而已XD
希望能夠拋磚引玉
我等等的內文主要根據
https://deepmind.com/blog/alphastar-mastering-real-time-strategy-game-starcraft-ii/
[1]
這一篇,應該是官方的東西。
還有,前面這篇所說的使用Segmentation應該是錯誤的,詳情後述
首先先簡單把整個任務分成三個部分
Input