机器之心编辑部

集换式卡牌类游戏绕不开的便是抽卡。
为了一张卡面精美、效果拔群的卡牌,无数玩家献祭了自己的钱包。
而最近,一位机器学习开拓者开源了万智牌的卡牌天生器,玩家只须要指定名称就可以天生卡牌,个中不乏罕有牌。

玩过集换式卡牌类游戏的读者都知道,卡牌的效果决定了战斗力的强弱,越是罕有的卡(如 SSR)越有着更强的效果。
但是,抽不到罕有的卡牌也让无数玩家心碎。
近日,机器学习爱好者用

GPT-2

你还在氪金抽卡高玩用GPT2自己生成SSR卡

制作了一个万智牌天生器。
玩家只须要指定卡牌名称,机器就可以自动天生牌面、效果、罕有度等信息。
项目作者 Max Woolf 毕业于卡内基梅隆大学,目前担当美国新闻聚合网站 BuzzFeed 的数据科学家,也曾在苹果就职。
他已经供应了一个网站,有兴趣的玩家可以天生自己的万智牌卡牌。
经由考试测验,笔者创造出罕有牌的数量比游戏抽卡出的多很多。

天生器网址:https://minimaxir.com/apps/gpt2-mtg/项目地址:https://github.com/minimaxir/mtg-gpt-2-cloud-run

什么是万智牌

万智牌(Magic: The Gathering)是著名的卡牌类游戏,类似的游戏有「炉石传说」。
进行游戏的双方各自有一套牌组。
游戏开始时,双方各有 20 点「生命」。
双方打出牌,目标是使对方输掉这盘游戏。
双方可以利用牌面上的效果将对方的「生命」降至 0 或以下,或迫使对手的牌库没有牌可抓,或牌手累积 10 个以上的中毒标记,或利用分外咒语。

万智牌的一部分卡牌。

卡牌是万智牌游戏的核心,由以下几部分组成:

卡牌名称:位于牌的左上角。
施法用度(Mana):位于牌的右上角。
表示须要施放的法术力。
卡牌插画:位于牌的正中。
卡牌类型:位于牌的插画下方靠左的位置。
万智牌中有七种基本种别:「Land」、「Creature」、「Artifact」、「Enchantment」、「Planeswalker」、「Permanet」、「Sorcery」、「Instant」罕有度:位于种别栏的右侧的标志,表示此牌的罕有程度。
(金色代表「Rare」,银色代表「Uncommon」,玄色代表「Common」,不同版本可能有更罕有的卡牌)效果描述:用于描述这张卡牌的效果。
力量和防御力属性:仅属于「Creature」这个类别的牌具有,位于牌的右下角,由斜线分开的两个数字表示,表现出该生物的力量和防御力(如:「3/3」表示 3 的力量和 3 的防御力)。
所属颜色:类似于阵营,图标会涌如今施法用度阁下。
一共有五种,见下图:

罕有卡牌一键天生,只要几个词

项目作者在 Reddit 中提到,这个项目可以自动天生万智牌卡牌,而玩家只须要输入卡牌的名字,而卡牌类型和施法用度可以自定义或交给机器决定。
大约须要十几秒,机器就会天生一张新卡,包括卡牌插画、罕有度和卡牌效果的笔墨描述。

在左上角的框中填入卡牌名称,玩家可自定义卡牌类型(Card Type)和施法用度(Card Mana Cost)或留空。
机器会在右侧自动天生一张新的卡牌图片。

作者供应了一些例子,比如:

Krovikan Vampire(寇维肯吸血鬼)

这是一张 Uncommon 的卡牌,类型是 Creature 中的吸血鬼,还有出牌时的效果。
牌面右上角则有施法用度、颜色等信息。
从效果描述上来看,当这张牌入场或攻击时,其得到+2 的力量和+0 的防御力,直到回合结束。

这些信息都是由机器天生的,效果的描述和卡牌名称能够很好的搭配,行文也足够连贯。

机器之心也考试测验天生了一些卡牌:

「火手」。

「自然低语」。

「闪电獠牙」。
惊喜的是,有时候可以天生「Rare」罕有度(右侧为金色)的手牌。

从实验来看,机器可以根据卡牌名称供应该种名称下类似的效果。
比如类似火「Fire」的词语更倾向于产生带有侵害效果的手牌。
而自然「Nature」这样的词语更倾向于得到增益效果。

GPT-2:卡牌天生器

根据作者的描述,实现玩家制卡背后的技能是 GPT-2。

GPT-2 是 OpenAI 于 2018 年提出的一种基于 Tranformer 的预演习措辞模型。
Transformer 是一种盛行的把稳力机制,在 BERT 预演习措辞模型中也有利用。

在预演习 GPT-2 时,模型输入为无标注的语料,演习目标为预测一句话中的下一个字。
比较于 BERT,GPT-2 增加了 Transformer 层数,采取了更多、更宽泛的语料进行演习,达到了更好的效果。

发布之初,由于担心被滥用,OpenAI 仅开源了「缩水版」的 GPT-2-simple 版本,仅有 117M 的参数量,而真正的 GPT-2 参数量达到多达 15 亿。

纵然是 GPT-2-simple,它的效果也是惊人的。
已有利用 GPT-2 天生假新闻的实现。
也有很多人利用 GPT-2 进行更多的实验,OpenAI 自己也用 GPT-2 制作了一个 AI 音乐天生器。

在本项目中,作者利用了 GPT-2 117M,即最早开源的 GPT-2-simple。
模型演习了 6500 步,在 P100 GPU 上耗费了两个小时。

作者表示,由于演习量较小,GPT-2 在卡牌名称和效果上涌现了过拟合的情形。
超参「Temperature」在 0.7 和 1.0 时,天生的卡牌比较普通,1.2 时,网络开始天生自己的规则和卡片,达到 1.5 和 2.0 时,天生的卡片类似于卡牌天生网站 MTGCardsmith。

目前项目已经开源,作者供应了天生卡牌效果和图片的 API。

GPT-2 效果怎么样

其实用 GPT-2 天生文本已经是非常通用的做法了,如果第一次看到它天生的文本,那么肯定会被惊艳到。
彷佛 GPT-2 依赖措辞模型已经能天生非常「合理」的段落了,乃至我们都不太能确定它到底是机器写的还是人类制作的。

如下所示为机器之心考试测验用 GPT-2 中 3.45 亿参数量的大模型做预测。
纵然我们每次都给相同的条件,模型也会天生完备不同的故事。
不才面的例子中,我们创造 GPT-2 天生的样本还是非常合理的,乃至它还会天生一些不存在的 GitHub 地址。

如此神奇的模型可以源源不断天生各种各样的卡牌。
考虑到作者已开源了项目代码,大概改换数据,你也可以为自己的手游或桌游天生超高罕有度的卡牌了。