※ 引述《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