跳到正文
知乎 · AI 游戏文章· 来源· chainhelen·· 11 小时前AI 评分70

离谱!这款免费开源 游戏 ,居然让你手搓 AI 推理

离谱!这款免费开源 游戏 ,居然让你手搓 AI 推理

正文

Attention、Softmax、残差连接……平时在 Transformer 架构图里看到的模块,到了《神经工坊》里,全成了棋盘上能拖动的组件。

你要亲手把它们搭起来,接好输入,再点下运行,看数据沿着线路一格一格算过去。双击组件还能打开矩阵,检查这一步究竟发生了什么。游戏完全免费,电脑浏览器打开就能玩,无需登录,代码也全部开源。

先来一道具体的题。棋盘上摆着「我 / 爱 / 猫」三个词。模型读到「爱」、准备预测下一个词时,如果注意力表里,「爱」分给「猫」的权重是 0.2,这个计算哪里出了问题?

这关模拟的是因果自注意力。在「爱」这个位置,模型可以利用「我」和「爱」,而「猫」还在未来。只要给它分配了权重,后面汇合内容时就有机会把答案带进来。你得把遮罩放到合适的位置,再观察 Softmax 算出的权重。接下来,还要把权重交给汇合内容的组件,一步步搭到给候选词打分。

矩阵缩小到了能在棋盘上摊开的尺寸,每一步都能停下来看。那个「我知道公式,但不知道它在这里干什么」的问题,终于有了可以动手试的位置。

更容易让人犹豫的是解码器里的残差。交叉注意力的一端是目标前缀,另一端是编码器给出的原句表示。棋盘上,两份输入的尺寸恰好一样,都能做加法。现在要接一根旁路,把原来的信息加回来,你会选哪一份?

可以先问自己,这一层正在更新谁?目标前缀里的每个位置拿着查询去原句里找信息,查回来的内容要加回发起查询的那一侧。看架构图时,眼睛很容易顺着箭头滑过去。真到自己选输入的那一刻,这个问题就躲不过去了。

到了芯片分配关,玩法又变了。六个组件已经接好,起初全在 CPU 上。你可以把任务分给 GPU、ANE,再看运行报告,挑战把第一个词的模拟耗时压到 110 毫秒以内。该把哪些组件放到一起,哪些交给另一颗芯片,值得来回试几次。

第一次玩可以从「原版基础」开始,想试芯片分配可以直接选「把工作交给合适的芯片」。喜欢解谜,又对大模型推理过程好奇,可以用电脑打开玩一关。

在线试玩

神经工坊

游戏代码全部开源,想研究实现、修改玩法,或者自己部署一份,都可以从仓库开始。

https://github.com/chainhelen/neural-atelier

觉得这个玩法有意思的话,可以去 GitHub 点个 ⭐ Star,支持一下这个免费开源的小项目。

如果你也遇到了「两个输入尺寸都对,但不知道该选哪个」的关卡,欢迎聊聊你当时是怎么判断的。

来源:知乎 · AI 游戏文章 · zhuanlan.zhihu.com