半岛彩票近日,一篇由谷歌大神Jeff Dean领衔的「AI自主设计芯片」研究,被曝正式接受Nature调查!
谷歌发表这篇论文后,又在GitHub上开源了具体的Circuit Training代码,直接引起了整个EDA和IC设计社区的轰动。
请读者注意,本文中的性能声明已受到质疑,编辑们正在对这些问题进行调查,一旦调查结束,将酌情采取行动。
同时,一向给AI大模型泼冷水的马库斯也发现,与这篇Nature论文相关的评论文章,也被作者撤回了。
马库斯在推特上这样描述道:「又一个被炒得沸沸扬扬的人工智能成果要落空了?」
现在,相关的Nature评论文章前面,已经被贴上了大写的「retracted article(撤稿)」。
作者已撤回这篇文章,因为自文章发表以来,关于所报道论文所用方法,已出现了新信息,因此作者对于该论文贡献的结论发生了改变。而Nature也在对论文中的结论进行独立调查。
另外,马库斯还挖出了这样一则猛料:对于Jeff Dean团队的论文,前谷歌研究人员Satrajit Chatterjee早就提出了质疑。
他写出一篇反驳的论文,但谷歌表示这篇论文不会被发表,随后,43岁的Chatterjee被谷歌解雇。
针对谷歌的这篇Nature和相关代码,一组来自UCSD的学者进行了非常深入的研究。
他们将质疑写成论文,并于今年3月收录在国际顶尖的集成电路物理设计学术会议ISPD 2023中。
在GitHub上,谷歌和斯坦福的联合团队公开了代码,而就是在这段代码中,UCSD团队发现了「华点」。
UCSD团队以开源的方式实现了「Circuit Training」(简称CT)项目中的关键「黑盒」元素,然后发现,CT与Nature论文中存在差异,并不能被复现!
在Nature论文中,谷歌表示,不到六个小时,他们的方法就自动生成了芯片布局图,而该布局图在所有关键指标(包括功耗、性能和芯片面积)上都优于人类生成的布局图,或与之相当。
而UCSD团队发现,这篇论文中的数据和代码都不是完全可用的。在此期间,他们也得到了谷歌工程师就相关问题的回复。
UCSD团队使用了CT、CMP、SA、ReP1Ace和AutoDMP生成了宏布局解决方案,还包括由人类专家生成的宏布局解决方案。在谷歌工程师的指导下,他们使用了0.5作为密度权重,而不是1
文中,UCSD团队描述了CT关键「黑盒」元素的逆向工程一一强制定向放置和智能体成本计算。
另外,UCSD团队还实现了基于网格的模拟退火宏放置,用于比较Nature论文和更强的基线。
总的来说,UCSD团队发现,CT和Nature论文所述有几个显著的不匹配之处。
CT假设输入netlist中的所有实例都有(x,y)位置,也就是说,netlist在输入到CT之前,就已经被放置了。
然而,这些信息在review中并不明显,在Nature论文中也未被提及。
同样,解释CT的两个关键「黑盒」元素——强制定向放置和智能体成本计算,也都没有在Nature论文中明确记录,也在CT中也不可见。
这些示例代表了理解和重新实现方法所需的逆向工程,这些方法迄今为止只能通过某些API可见。
除了这篇论文外,UCSD团队还有一个更加详细的项目主页,全面记录了他们针对谷歌这篇Nature论文的研究。
「我们认为,这篇最近在ISPD上发表的特邀论文,对我们的工作进行了错误的描述。」
论文提出的RL方法已经用在了多代谷歌旗舰AI加速器(TPU)的生产上(包括最新的一代)。也就是说,基于该方法生成的芯片,已经被制造了出来,并正在谷歌数据中心运行。
ML生成的布局必须明显优于谷歌工程师生成的布局(即超越人类水平),否则不值得冒险。
Nature进行了长达7个月的同行评审,其中,审稿人包括2名物理设计专家和1名强化学习专家。
开发并开源这个高度优化的分布式RL框架是一个巨大的工程,其应用范围已经超出了芯片布局,甚至电子设计自动化领域(EDA)。
在团队的方法发布之后,有很多基于其工作的论文在ML和EDA会议上发表,此外,英伟达(NVIDIA)、新思科技(Synopsys)、Cadence和三星等公司也纷纷宣布,自己在芯片设计中使用了强化学习。
ISPD论文并没有为「电路训练」(Circuit Training,CT)进行任何预训练,这意味着RL智能体每次看到一个新的芯片时都会被重置。
训练CT的计算资源远远少于Nature论文中所用到的(GPU数量减半,RL环境减少一个数量级)。
ISPD论文附带的图表表明,CT没有得到正确的训练,RL智能体还在学习时就被中断了。
在发表Nature论文时,RePlAce是最先进的。此外,即使忽略上述所有问题,团队的方法不管是在当时还是在现在,表现都比它更加出色。
虽然这项研究标题是「对基于强化学习的宏布局的学习评估」,但它并没有与任何基于该工作的RL方法进行比较,甚至都没有承认这些方法。
ISPD论文将CT与AutoDMP(ISPD 2023)和CMP的最新版本(一款黑盒闭源商业工具)进行了比较。当团队在2020年发表论文时,这两种方法都还没有问世。
ISPD论文的重点是使用物理合成的初始位置来聚类标准单元,但这与实际情况无关。
物理合成必须在运行任何放置方法之前执行。这是芯片设计的标准做法,这也反映在ISPD论文的图2中。
作为预处理步骤,团队会重复使用物理合成的输出来对标准单元进行聚类。需要说明的是,团队的方法不会放置标准单元,因为之前的方法(如DREAMPlace)已经很好地对它们进行了处理。
在每个RL事件中,团队都会向RL智能提供一个未放置宏(内存组件)和未放置的标准单元簇(逻辑门),然后RL智能体会将这些宏逐一放置到空白画布上。
九个月前,团队在开源存储库中记录了这些细节,并提供了执行此预处理步骤的API。然而,这与论文中的实验结果或结论没有任何关系。
但这只是一个开始,基于学习的芯片设计方法必将对硬件和机器学习本身产生深远的影响。
回到Nature的这篇文章,2021年,由Jeff Dean领衔的谷歌大脑团队以及斯坦福大学的科学家们表示:
「一种基于深度强化学习(DL)的芯片布局规划方法,能够生成可行的芯片设计方案。」
在不到6小时的时间内,谷歌研究人员利用「基于深度强化学习的芯片布局规划方法」生成芯片平面图,且所有关键指标(包括功耗、性能和芯片面积等参数)都优于或与人类专家的设计图效果相当。
潜在问题设计高维contextual bandits problem,结合谷歌此前的研究,研究人员选择将其重新制定为一个顺序马可夫决策过程(MDP),这样就能更容易包含以下几个约束条件:
(1)状态编码关于部分放置的信息,包括netlist(邻接矩阵)、节点特征(宽度、高度、类型)、边缘特征(连接数)、当前节点(宏)以及netlist图的元数据(路由分配、线数、宏和标准单元簇)。
(2)动作是所有可能的位置(芯片画布的网格单元) ,当前宏可以放置在不违反任何硬约束的密度或拥塞。
(4)奖励:除最后一个动作外,所有动作的奖励为0,其中奖励是智能体线长、拥塞和密度的负加权。
研究人员训练了一个由神经网络建模的策略(RL智能体),通过重复的事件(状态、动作和奖励的顺序),学会采取将「累积奖励最大化」的动作。
然后,研究人员使用邻近策略优化(PPO)来更新策略网络的参数,给定每个放置的累积奖励。
如前所述,针对芯片布局规划问题开发领域自适应策略极具挑战性,因为这个问题类似于一个具有不同棋子、棋盘和赢条件的博弈,并且具有巨大的状态动作空间。
谷歌研究人员表示,我们的直觉是,能够处理芯片放置的一般任务的策略也应该能够在推理时将与新的未见芯片相关的状态编码为有意义的信号。
因此,研究人员训练了一个「神经网络架构」,能够预测新的netlist位置的奖励,最终目标是使用这个架构作为策略的编码层。
为了训练这个有监督的模型,就需要一个大型的芯片放置数据集以及相应的奖励标签。
因此,研究人员创建了一个包含10000个芯片位置的数据集,其中输入是与给定位置相关联的状态,标签是该位置的奖励。
为了准确地预测奖励标签并将其推广到未知数据,研究人员提出了一种基于边的图神经网络结构,称之为Edge-GNN(Edge-Based Graph Neural Network)。
在Edge-GNN中,研究人员通过连接每个节点的特征(包括节点类型、宽度、高度、x和y坐标以及它与其他节点的连通性)来创建每个节点的初始表示。
(2)每个节点通过传递所有的平均进出边到另一个完全连通的网络更新其表示。
Edge-GNN的作用是嵌入netlist,提取有关节点类型和连通性的信息到一个低维向量表示,可用于下游任务。
研究人员首先选择了5个不同的芯片净网表,并用AI算法为每个网表创建2000个不同的布局位置。
该系统花了48个小时在「英伟达Volta显卡」和10个CPU上「预训练」,每个CPU都有2GB的RAM。
左边,策略正在从头开始训练,右边,一个预训练的策略正在为这个芯片进行微调。每个矩形代表一个单独的宏放置
在一项测试中,研究人员将他们的系统建议与手动基线——谷歌TPU物理设计团队创建的上一代TPU芯片设计——进行比较。
结果显示,系统和人类专家均生成符合时间和阻塞要求的可行位置,而AI系统在面积、功率和电线长度方面优于或媲美手动布局,同时满足设计标准所需的时间要少得多。
但现在,这篇曾引起整个EDA和IC设计社区的轰动的论文,如今在被Nature重新调查,不知后续会如何发展。
本文由「新智元」原创出品, 转载或内容合作请点击转载说明;违规转载必究。
一年一度诺贝尔奖即将揭晓,今年谁会摘桂冠?先来看一波ChatGPT的终极预测吧!