当前位置: 首页 > 科技观察

DeepMind构建Transformer的“逆向”方法流行:AI通过可解释编程设计,项目已开源

时间:2023-03-13 08:28:44 科技观察

本文经AI新媒体量子比特授权转载(公众号ID:QbitAI),转载请注明出处转载请联系出处。先搭建一个模型,如果效果不错再尝试解释。这是我们常见的AI设计套路。然而,有些人已经受够了这种“莫名其妙”的过程——既然人类总是试图解释AI模型,为什么不能反过来,直接用可以理解的程序来设计AI模型权重呢?这样产生的模型不仅提高了其可解释性,还降低了设计架构的复杂度。这是DeepMind为Transformer模型设计的最新工具。发到网上后引爆:有网友表示惊讶:这真有意思。它可能是第一个可以将代码(软件1.0)转化为模型(软件2.0)的系统。那么它究竟是如何工作的呢?将可读代码转换为AI权重的“编译器”。这种将更具可读性的代码“翻译”成Transformer模型的工具称为Tracr。具体来说,它有点像一个“编译器”,知道如何将一种叫做RASP(RestrictedAccessSequenceProcessingLanguage)的编程语言转换成Transformer模型权重。RASP是之前在ICLR2021上的一篇论文中提出的“编程语言”,专门基于Transformer架构(codec-attention机制等)设计的。Tracr在此基础上更进了一步。它不仅对原有的RASP语言进行了简单的优化,还将基于RASP编写的程序转化为Transformer模型的权重。具体来说,Tracr会先将“编程语言”RASP转化为“汇编语言”craft,表示向量空间和其间的相应操作,再将craft进一步转化为“机器码”模型权重。具体实现过程如下,分为5个步骤:作者在此基础上创建了一系列人工编写的benchmarkTransformer,包括计算token频率、排序、Dyck-n括号识别等。据介绍,Tracr最大的亮点在于可以“从0开始构建自己的Transformer模型”。还提出了互补压缩方法。然而,基于Tracr的模型可能效率很低,因此作者提出了一种互补的“压缩”方法。基于案例,这种方法不仅使Tracr模型更高效,而且允许将D维特征压缩到比D维更小的特征空间中。例如,这是一个用RASP语言写的程序的例子:压缩模型后,也能很好的完成原来的任务,而且效果相差不大:同时作者也观察到,压缩后模型,它甚至保留了比较重要的特征,并学会自动过滤掉一些不重要的特征:同时也能保证很好的准确率:目前对应的Tracr模型已经开源,感兴趣的朋友可以去查一下~作者介绍论文作者分别来自DeepMind和ETHZurich。第一位是苏黎世联邦理工学院的博士生大卫林德纳。这项工作是他在DeepMind实习期间完成的。他目前的研究兴趣是人工智能鲁棒性和强化学习。你有没有想过如何用它来设计一个Transformer模型?论文地址:https://arxiv.org/abs/2301.05062项目地址:https://github.com/deepmind/tracr