scout流浪出装 新英雄腕豪怎么出装
淘宝搜:【天降红包222】领超级红包,京东搜:【天降红包222】
淘宝互助,淘宝双11微信互助群关注公众号 【淘姐妹】
看着我,和600万名朋友一起玩技术~
“通关!”
前职业Dota2选手、玄斗鱼平台主播YYF大吼一声,随着屏幕上属于陈辉一方的遗迹水晶被打碎,YYF所在的野灭一方宣告了胜利。
YYF 是月夜枫三个字的缩写,熟悉 Dota 历史的人都知道这个名字代表曾经的第二届 Dota2 国际邀请赛冠军,今晚和他一起游戏的,是 YYF 所在的 OB 解说团的朋友们,他们也都是 Dota2 的前职业选手。
在此之前,OB 已经玩了整整 8 个小时,面对同样的五个对手,全败。短则十几分钟,长则五十多分钟,他们一场也没有赢过。即便是以前的直播中面对职业选手阵容,OB 也没有过如此惨淡的战绩。
最后一场,他们在长达八个多小时的努力后,终于赢下了第一场比赛,而这也是中国玩家两天时间里面对这个队伍的首胜。
因为他们的对手,叫 OpenAI Five ,一个多星期前刚刚打败过新科 Dota2 国际邀请赛冠军 OG 战队的 OpenAI Five,而 OG 已经是 OpenAI Five 打败的第四个也是最强的职业战队了。
在此前,OpenAI 团队宣布这将是 OpenAI Five 在 Dota2 的最后一次比赛。还给这比赛起了个名字,叫 “ OpenAI Five Finals ” ,最终之战。
随着 OG 战队被 OpenAI 干脆利落地 2 比 0 带走,许多人都说,Dota2 在围棋之后,也 被 AI “ 攻陷 ” 了。
比赛后,OpenAI 团队将在 4 月 18 日- 4 月 21 日开放一个 OpenAI Five Arena,可以让全球玩家挑战 OpenAI Five 。
三天时间,来自世界各地的 15000 多名 Dota2 玩家对 OpenAI Five 发起了挑战,在七千多场比赛过后,OpenAI Five 对人类的战绩是 7215C42 ,胜率高达 99.4% 。
挑战者中不乏 YYF 这样的前职业选手,更是有很多现役职业选手在其中,实力不可谓不强。
可是最终人类只能拿下 42 场胜利,可以看出 OpenAI Five 在操作、战术执行方面已经超越了大部分人类。
实际上,只要能在 OpenAI Five 手中撑过 32 分钟,就已经属于挑战者的前 100 名水平了。
人类在 AI 面前真的那么不堪一击吗?未必如此。
在排行榜上,我们可以看到一个非常奇怪的现象:排名前 9 的队伍中,有8 个是同一支队伍。
奖牌上的数字,代表着他们对 OpenAI Five 时,所达到的连胜数。
由于每一场比赛结束,战绩都会被记录,这个 ainodehna 所在的队伍达到 10 连胜后,排行榜也被 “ 屠榜 ” 了。
面对职业选手打起来都吃力的 OpenAI Five ,居然能干脆利落地拿下 10 连胜?这莫不是钦定了下一届 Dota2 国际邀请赛的冠军?可是这几个选手的 ID 分明没有任何一个是职业选手,这是怎么回事?
其实仔细一看他们的战绩,不难发现,每盘比赛他们基本都是人头落后的情况下获得了胜利的,这样的战绩,如果出现一两次,还可以怀疑是前期猥琐发育,后期一波打死对面,但是连着出现 10 次,就很有问题了,只可能是他们找到了击败 OpenAI Five 的打法。
这个俄罗斯队伍的直播录像证实了这个想法。
说来其实很简单,由于挑战赛里,英雄选择是有限制的,只有 18 名英雄可以选择,拼操作,已经有那么多人证明过人类和 AI 是无法相提并论的了,毕竟人类的反应极限也就是 100 多毫秒,差不多 0.1 秒,而且这只是理论可能。但是 AI 却可以轻易做到。
所以想要赢下游戏,最终还是要在游戏机制上做文章。
在 ainodehna 队伍的比赛中,他们 10 连胜用的是同一个阵容,隐形刺客、撼地者、水晶室女、影魔、流浪剑客。
他们的策略就是前期通过占线,让两个大哥影魔和流浪剑客积累基础的刷钱装备,然后三个辅助来吸引敌人的注意力,给影魔和流浪剑客创造刷钱的空间。
每盘的出装基本都是一致的,先出飞鞋( 可以快速传送,打钱更快 )、隐刀、BKB( 用于逃命和免疫控制 )、黯灭( 加深对建筑伤害 )。
在这些装备齐全后,他们就会尽量避免团战,然后找个机会击杀 Roshan ,拿到复活盾( 可以使人原地复活 ),然后由两个大哥轮流开启 BKB 打塔,即便敌人在攻击他们也无所谓,只要打完塔不死就是赚。
就这样一路一路地打下去,借助拆掉对面兵营后的兵线优势,让对方忙于清理兵线而不能出来打钱发育,最终顶着对面的攻击强行拆掉基地获胜。
虽然这样的打法非常没有观赏性,比不上 YYF 他们正面击溃 AI 来得好看,但却是针对 AI 的弱点后最有效的获胜方式。
Dota2 毕竟也算是一个多人即时策略游戏,在配合、操作等方面被碾压后,只能从策略方面入手,AI 会选择成功率最高的策略去执行,而 AI 的操作再厉害,终究也是要遵循游戏规则的。
更何况,现在的 OpenAI Five 还有很多条件的限制,比如只有 18 个英雄可以选择。
Dota2 有 100 多个英雄,如果全部开放选择,又会多出成千上万的可能性,而英雄之间的相互克制等关系,人类职业玩家可比 AI 熟悉多了,这也是决定胜负的关键点所在。
虽说这一次 OpenAI Five 在战绩上可以说是碾压了人类玩家,但是并不意味着 Dota2 就被 “ 攻陷 ” 了,撑死了只能说他们在 18/117 的 Dota2 游戏中打败了大部分人而已,只要 AI 的缺陷被找到,人类可以很轻易地战胜它们。
参考资料、图片来源:OpenAI Five ArenaTwitch
“ 反正我打不过。。。”
欢迎点赞、评论,分享你的观点~
业界 | OpenAI提出Reptile:可扩展的元学习算法
选自OpenAI Blog
作者:ALEX NICHOL & JOHN SCHULMAN
机器之心编译
近日,OpenAI 发布了简单元学习算法 Reptile,该算法对一项任务进行重复采样、执行随机梯度下降、更新初始参数直到习得最终参数。该方法的性能可与 MAML(一种广泛应用的元学习算法)媲美,且比后者更易实现,计算效率更高。
元学习是学习如何学习的过程。元学习算法会学习任务的一个分布,每项任务都是学习问题,并输出快速学习器,学习器可从少量样本中学习并进行泛化。一个得到充分研究的元学习问题是 few-shot 分类,其中每项任务都是分类问题,学习器只能看到 1-5 个输入-输出样本(每个类别),之后学习器必须对新输入进行分类。下面,你可以尝试 OpenAI 的 1-shot 分类交互 Demo,其使用了 Reptile。
点击「Edit All」按钮,绘制三种不同的形状或符号,然后在后侧的输入区域绘制其中一个形状,就可以看到 Reptile 的分类效果。前三个图是标注样本:每个定义一类。最后的图表示未知样本,Reptile 输出其属于每个类别的概率。(请点击原文链接体验交互)
Reptile 的工作原理
和 MAML 类似,Reptile 会学习神经网络的参数初始化方法,以使神经网络可使用少量新任务数据进行调整。但是 MAML 通过梯度下降算法的计算图来展开微分计算过程,而 Reptile 在每个任务中执行标准形式的随机梯度下降(SGD):它不用展开计算图或计算任意二阶导数。因此 Reptile 比 MAML 所需的计算量和内存都更少。伪代码如下:
最后一步也可以把 Φ?W 作为梯度,将其插入如 Adam 等更复杂的优化器。
很令人震惊,该方法运行效果很好。如果 k=1,该算法对应「联合训练」(joint training):在多项任务上执行 SGD。尽管联合训练在很多情况下可以学到有用的初始化,但在 zero-shot 学习不可能出现的情况下(如输出标签是随机排列的)它能学习的很少。Reptile 要求 k>1,更新依赖于损失函数的高阶导数。正如 OpenAI 在论文中展示的那样,k>1 时 Reptile 的行为与 k=1(联合训练)时截然不同。
为了分析 Reptile 的工作原理,OpenAI 使用泰勒级数逼近更新。Reptile 更新最大化同一任务中不同小批量的梯度内积,以改善泛化效果。该发现可能在元学习之外也有影响,如解释 SGD 的泛化性能。OpenAI 的分析结果表明 Reptile 和 MAML 可执行类似的更新,包括具备不同权重的相同两个项。
在 OpenAI 的实验中,他们展示了 Reptile 和 MAML 在 Omniglot 和 Mini-ImageNet 基准上执行 few-shot 分类任务时具备类似的性能。Reptile 收敛速度更快,因为其更新具备更低的方差。OpenAI 关于 Reptile 的分析表明,我们可以使用不同的 SGD 梯度组合获取大量不同的算法。在下图中,假设我们在不同任务中使用不同批量大小的 SGD 执行 K 个更新步,产生 g_1,g_2,…,g_k k 个梯度。下图展示了在 Omniglot 上的学习曲线,且它由梯度的和作为元梯度而绘制出。g_2 对应一阶 MAML,即原版 MAML 论文提出的算法。由于方差缩减,使用更多的梯度会导致更快的学习或收敛。注意仅使用 g_1(对应 k=1)如预测那样在这个任务中没有什么提升,因为我们无法改进 zero-shot 的性能。
实现
实现的 GitHub 地址:https://github.com/openai/supervised-reptile
该实现应用 TensorFlow 进行相关的计算,代码可在 Omniglot 和 Mini-ImageNet 上复现。此外,OpenAI 也发布了一个更小的基于 JavaScript 的实现(https://github.com/openai/supervised-reptile/tree/master/web),其对使用 TensorFlow 预训练的模型进行了调整――以上 demo 就是基于此实现的。
最后,下面是一个 few-shot 回归的简单示例,预测 10(x,y) 对的随机正弦波。该示例基于 PyTorch:
论文:Reptile: a Scalable Metalearning Algorithm
地址:https://d4mucfpksywv.cloudfront.net/research-covers/reptile/reptile_update.pdf
摘要:本论文讨论了元学习问题,即存在任务的一个分布,我们希望找到能在该分布所采样的任务(模型未见过的任务)中快速学习的智能体。我们提出了一种简单元学习算法 Reptile,它会学习一种能在新任务中快速精调的参数初始化方法。Reptile 会重复采样一个任务,并在该任务上执行训练,且将初始化朝该任务的已训练权重方向移动。Reptile 不像同样学习初始化的 MAML,它并不要求在优化过程中是可微的,因此它更适合于需要很多更新步的优化问题。我们的研究发现,Reptile 在一些有具备完整基准的 few-shot 分类任务上表现良好。此外,我们还提供了一些理论性分析,以帮助理解 Reptile 的工作原理。
原文链接:https://blog.openai.com/reptile/
本文为机器之心编译,转载请联系本公众号获得授权。