帝国理工二五仔分享一下alphastar的实现思路 花边杂谈

Cure 2020-6-22 02:45 19970

今天看了看启元AI的表演,感觉上呢没有什么让人惊艳的东西,这无可厚非,毕竟AlphaStar已经给出了他们的大致方法和思路(当然能复现也很厉害了,这一点是值得认可的,毕竟所需算力和工程量不可小觑)。


扯点题外话:

比较让我觉得不妥的就是宣传之中有一句"在NIPS中惊艳全场" , 但是我并未在NIPS best papers / awards 中找到相关论文. NIPS作为现在灌水发文为趋势下难得的净土顶会, 文章质量一直还是维持在一个较高的水平. (CVPR现在不是说不行了,只是从论文投稿数量,评审水平上来说水准不如曾经了) 相信这也是为什么广大二五仔们对其不爽的原因之一,宣传方的用词充满了微信公众号的味道,难以称之专业. (关于这点我看了看启元别的项目, 微信公众号里的宣传https://mp.weixin.qq.com/s/YlSGIDQ7oWBwVzLEY3lXRg  称该项目击败了来自Facebook AI (FAIR), NUS,Georgia的团队取得第一。但是这似乎与官方信息 https://evalai.cloudcv.org/web/challenges/challenge-page/537/leaderboard/1527 有所出入, 上面来自新加坡国立大学的团队取得了并列第一. 至于是不是官方信息更新不够及时大家无从得知) 暂且不论结果如何, 这份宣传充满了微信公众号营销的写法: 其中来自佐治亚理工的主要作者 Joanne 在读phd 于FAIR实习, 另一成员为FAIR的Research Engineer,另外两位则为佐治亚理工的教授. 而将其模糊为FAIR,佐治亚理工分别参赛个人认为有标题党之嫌. (能以小型实验室的能力击败AI研究巨头之一的FAIR不是小新闻)。 可能他们真的需要流量和投资。


跑题了,下面聊一聊AlphaStar的项目领导之一博士Oriol Vinyals在2019年底帝国理工讲座中分享阿老师的真身:


TIM截图20200621182936.png

非常非常概括的说Alphastar的动作网络采取的输入包括:一些标量特征(当前人口,拥有的资源, 时间, 等等), 当前拥有的单位, 小地图(以图片形式)

这三种输入分别通过普通的Dense layers; Google家自己的Transformer (自然语言处理业界标杆之作, 主要用途用作机器翻译但理论可以应用到各种序列型数据);计算机视觉中的ResNet(Kaming He的文章,简而言之是为了让网络可以更深效果更好,并仍能训练)


这三种输入通过网络后一起作为后面循环网络LSTM的输入 (这也是感谢自然语言处理界的进步,提供了这些成熟的方法,而以前Deepmind训练Atari 小蜜蜂那些游戏的时候,都不得不把4帧的画面组合在一起传给网络作为输入来表达速度这种包含时间的概念, 为此就要牺牲了图片的第三个维度RGB色彩信息, 如今在如星际复杂的游戏中颜色也包含着重要信息能保留自然更好)


TIM截图20200621182952.png


(这些都是概念化的网络,实际会复杂很多,由很多工程上的技巧不是一般团队能复现的)

而这个网络的输出则是一个包含了多种信息的动作:

  1. 动作类型 2.动作延迟(在有限的apm里要有效分配) 3. 动作顺序(是否要在某一动作之后) 4. 选中的单位(多个) 5. 目标单位(攻击,施法等等, 可为空) 6. 目标位置(移动,A地板等)

这也是其成功的关键之一,这种复杂的对于动作的定义和人类有相通之处,并且缩小了动作空间. 但是就算如此,还是依靠了巨量训练算力,同时进行16000场SC2比赛,持续44天,使用了小团队望尘莫及的夸张的硬件.


整个Alphastar发展有好几个阶段:

  1. 拿Alphago那套训练框架改改输出动作空间试试看,结果就是人族学会开局飞基地保平

  2. 意识到动作空间过大,于是尝试人为定义很多动作,如选中单位并移动(在我们的理解里就是让兵去这里);选中基地造农民,选中兵营造兵. 这大大缩小了动作空间,每个动作仅需要定义选中单位,目标单位,什么动作. 这之后 AI会造兵A人了,但是大致也就是到黄金水平

  3. 拿出大量高水平对抗replay,作为训练数据,训练AI来判断局势 (给出当前经济,兵力,时间,来判断谁胜率高,像是Dota2大老师那样)。然后以此为基准进行监督训练,训练出一些AI。网络结构大概就在这时候打磨出主要形态

  4. 这会AI能打到白金钻石了, 好像第一次和团队里会玩星际的日本小哥开始来回. 借鉴了alphago的经验,试图建立一个自我对抗的训练框架,就是AlphaLeague. 在此监督学习和自我监督学习交替进行。(这里一个有趣的做法是,用了一个z vector 来选择各种建造顺序/流程,是来源于人类定义的,不过这也是让Alphastar和AlphaGo不同的核心原因之一,因为后者是纯自我训练出来的没有人类干预和帮助, 而前者训练自始至终都离不开人类帮助)

  5. 后来的故事大家也都知道了,训练出了追猎imba P。后来限制了apm并加入了反应延迟(对人类玩家更公平的同时反而让天梯分数提升了,最后在欧服天梯上被人认出来是因为1.不编队 2. 偶尔在屏幕外点兵营改集结点之类的操作)最后好像P到了欧服6100,T有5900,Z有5700 (这说明了什么 zzzzzzz pusagi injung?)


整个以星际作为载体的AI项目研究目标是推动AI的决策能力和不完全对称信息下的博弈能力,相信Alphastar的后期版本做到了这个,启元的AI也做到了. 但是这次比赛中展现出来的版本有所偏离初衷, 这也很正常,毕竟对400apm, 200epm没什么概念,再加上跨屏幕操作和稳定的反应速度, 可以说是通过运营和抗压上的优势强行赢下了比赛. 人类玩家有太多缺陷了,鼠标可能点不准要重点,一下反应不过来,没听到农民被屠的报警,的确AI可以搞定这些问题。但玩家们,和科学家们想看到的是AI做出类人的决策和判断,甚至超人的决策,而不是仗着操作和机械层面上的优势碾压人类选手. 玩家也不是第一次看到类似这种风格的AI了。


其实今天的节奏罪魁祸首还是1. 夸大如同微信公众号的宣传营销,2. 主持人尬吹(可能要吃饭没办法可以理解). 

说实话这个AI就算拿来给TIME练习多线抗压运营也是好的,比请全太阳"容易"多了.  如果单纯以击败这个AI为目标那太容易了,来点狗哥,全太阳那种未知领域的打法就可以,不要让AI进其节奏. (比如死神开矿不探路,野2兵营死神一打就死, 只是例子) 希望大家可以更客观的看待现在还在坚持做这种硬核AI的团队了,不容易的,不容易变现而且难度相当高. 


本人才疏学浅,望广大二五仔包容,如有点明指教,感激不尽! :D


补充一下: 个人认为Deepmind在发了NATURE后急流勇退是因为该项目持续将近3年,参与人数近20人,加上硬件开销,成本已经达到了夸张的程度。全靠情怀撑下来的(顺便一提,因为Deepmind总部在伦敦,在Deepmind做科研的待遇相比在美国同等级研究机构/公司差了很多很多。比如Research Engineer年薪在80000英镑左右,而美国类似职位Uber AI Lab, FAIR等 可能会有20万刀以上甚至更多. 所以愿意在Deepmind的人或多或少都有些情怀)。 这个项目带来了可观的认可度,但是很难带来任何直接利润


最后于 2020-6-22 14:52 被tager编辑 ,原因:
最新回复 (91)
全部楼主
  • superMC 猛男
    8 举报 2
    讲道理 张开元还是不懂AI,导致吹得有点尴尬
    2020-6-22 02:59 收起回复
    Ahzek: 拿了钱硬吹也要吹啊
    2020-6-22 18:20回复
  • Ronaldkong 猛男
    2 举报 3
    给lz点赞,这就叫专业
    2020-6-22 03:00 回复
  • OverM1nd 混元体猛男
    1 举报 4
    条理清晰,有理有据,感谢老哥
    2020-6-22 03:01 回复
  • 魔升夜蝶 精英猛男
    0 举报 5
    谢谢分享
    2020-6-22 03:06 回复
  • OverM1nd 混元体猛男
    0 举报 6

    我个人还是更喜欢能落地的AI,譬如能直接用于机械产品控制,显著提高效率的AI,这才是AI的未来。没有具体的应用场景,纯粹只能在虚拟环境中展示性能的AI往往理想很丰满,但还是太浮夸了,就像启元这个模型,改一改能不能用到其他场合真的是未知数

    2020-6-22 03:07 收起回复
    SCBOXTossgirl: 游戏陪练陪玩也是极好的😂
    2020-6-22 05:55回复
    SCBOXTossgirl: 人类要大量失业了233
    2020-6-22 05:55回复
    zmc748159263: 其实这种用不上的AI可以类似于数学上的某些领域,比如pareto三百年前玩的general pareto distribution,近十年开始尝试用于自然灾害预测和特殊保险的模型。这种东西不好说几十年后有没有实用的机会
    2020-6-22 08:52回复
    CLEARMIRROR: 回复 zmc748159263: 帕累托分布一开始不是用于描述经济学现象的吗,怎么不实用
    2020-6-22 10:10回复
    还有4条回复,查看
  • dogeyy 二五仔
    0 举报 7
    有个疑问,这里网络输出的动作是通过类似调用api的方式直接作用于游戏的吗?还是模拟人类的方式?如果是后者的话很难想象屏外操作是怎么实现的。
    2020-6-22 03:08 收起回复
    double_cm: 无限视距 黄哥说过了呀 ai第一视角那个视角也不知道是怎么生成的23333
    2020-6-22 13:37回复
  • Cure 猛男
    3 举报 8
    dogeyy 有个疑问,这里网络输出的动作是通过类似调用api的方式直接作用于游戏的吗?还是模拟人类的方式?如果是后者的话很难想象屏外操作是怎么实现的。
    是的,由暴雪和Deepmind联合开发的pysc2环境中以API形式直接操作
    2020-6-22 03:09 回复
  • nocow 二五仔
    0 举报 9
    专业
    2020-6-22 03:12 回复
  • 星火世界 二五仔
    0 举报 10
    阿尔法的算法和启元的好像不太一样 好像启元没有采用这种算法吧 我只是猜测的 
    2020-6-22 03:15 回复
  • nocow 二五仔
    5 举报 11
    论坛戾气太重了,需要lz这样的理智风气。
    2020-6-22 03:16 收起回复
    nocow: 由于法人的认可,您的回帖成功触发了幸运回复, 幸运的额外获得金币+2 🎉🎉🎉
    2020-6-22 03:16回复
  • Lanthdoral 混元体猛男
    0 举报 12
    先mark一下 稍微等脑袋清醒点慢慢看
    2020-6-22 03:19 回复
  • 哈工大高阶领主 精英猛男
    1 举报 13
    精英二五仔
    我也想去ICL
    2020-6-22 03:33 回复
  • Cure 猛男
    3 举报 14
    哈工大高阶领主 精英二五仔 我也想去ICL
    校训和校徽都改了,下一步就是改名了,肯辛顿男子职业技术学院
    2020-6-22 03:39 回复
  • 3 举报 15
    所以我说论坛理智和懂得二五仔还是有不少的啊,原来真的不想在论坛聊专业知识的。。。。。。。。真的是忍不住,lz可以再多写点自己的想法,我反正把这个当做写作练习整理思路了。
    2020-6-22 03:45 收起回复
    会飞的查查: 一些人真的以为拿着砂纸和复制粘贴就能做科研了,还抄作业。。。。。
    2020-6-22 03:46回复
  • Cure 猛男
    0 举报 16
    会飞的查查 所以我说论坛理智和懂得二五仔还是有不少的啊,原来真的不想在论坛聊专业知识的。。。。。。。。真的是忍不住,lz可以再多写点自己的想法,我反正把这个当做写作练习整理思路了。
    这个要吃透还是很难的, nature的paper里了解到的是大多是思路,但是具体怎么做,很多就算在appendix里也没有. 就比如那个把4个图片叠加在一起的trick就很难从老的atari的 DQN paper里看出来 我的想法。。。就是我太菜了,我啥也不会,啥也搞不出来
    2020-6-22 03:56 回复
  • 2 举报 17
    Cure 这个要吃透还是很难的, nature的paper里了解到的是大多是思路,但是具体怎么做,很多就算在appendix里也没有. 就比如那个把4个图片叠加在一起的trick就很难从老的atari的 DQN ...
    像这些论文一般是不会涉及技术细节的,哪怕是 Implementation details也只不过会说一些特殊参数设置,特别是代码(又让我想到到了一些本科的毕业论文),能给你个算法伪代码就算挺好的了。所有东西都是从复现开始的,我是从那些顶会的开源代码一点点摸索的,做个baseline挺好的,不亏(很多开源的也是在别人基础上堆出来的,前人栽树后人乘凉)。而且你复现了,有可能比原有的算法还要好呢,别人的一些写法不一定是最优的,很多人工智能的学者是从别的学科转过来的,代码水平其实不高,要不然也不会用python。
    2020-6-22 04:11 回复
  • 1 举报 18
    有这样的二五仔真好。顶。
    2020-6-22 04:42 回复
  • lollipop 二五仔
    0 举报 19
    哎呀,都是好事
    2020-6-22 04:52 回复
  • αX_VeritasSC2 精英猛男
    0 举报 20
    牛逼 
    2020-6-22 05:02 回复
  • nozdor 猛男
    0 举报 21
    大佬大佬
    2020-6-22 05:06 回复
  • spectrum_ 二五仔
    0 举报 22
    说得很好。
    2020-6-22 05:22 回复
  • Saya 精英猛男
    0 举报 23
    2020-6-22 05:25 回复
  • 喜欢偷送白给 二五仔
    0 举报 24
    一开始没通气,给人当垫脚石,好多人气的这个吧
    2020-6-22 06:59 收起回复
    法人抽奖小号: 还有就是没给钱,钱给够了花花轿子人人抬,你没给钱还把cnsc当猴耍
    2020-6-22 12:50回复
  • SherryOK 猛男
    0 举报 25
    牛逼牛逼,写的比我好多了
    2020-6-22 07:17 回复
  • fate 二五仔
    1 举报 26
    专业
    2020-6-22 07:33 回复
  • NightFlash 精英猛男
    0 举报 27
    这tm就叫 专业
    2020-6-22 07:37 回复
  • 0 举报 28
    顶一下
    2020-6-22 08:27 回复
  • tutuz 二五仔
    0 举报 29
    哥几个都听不懂啊
    2020-6-22 08:31 回复
  • romanticwar 猛男
    0 举报 30
    专业,中肯!
    2020-6-22 08:32 回复
返回