草庐IT

AI设计芯片的能力超越人类?谷歌《自然》论文遭加州大学研究团队 “打脸”

极客君 2023-04-11 原文

谷歌员工在《自然》杂志发表的一篇研究论文指出,该公司开发的人工智能(AI)软件能够比人类更快更好地设计芯片。这一结论近日遭到加州大学圣地亚哥分校(UCSD)研究人员的质疑和批评。

早在2021年6月,谷歌宣称开发出基于强化学习的AI芯片设计系统,引发广泛关注。当时该公司声称,这一系统能够自动生成优化的微芯片平面布局图,已经用于谷歌自主研发的TPU芯片设计,并取得优异表现。

AI设计芯片比人工更快更好?谷歌《自然》杂志论文遭质疑

芯片的布局非常重要,因为它直接决定了性能。设计人员需要仔细地排列芯片中的电路块,例如使信号和数据以理想的速率在这些区域之间传输。工程师通常会花费数周或数月的时间来改进他们的设计,试图找到最佳配置,以开发出更加强大、节能、小巧的芯片。

此前,芯片布局通常由人工和自动化工具配合完成。谷歌的芯片团队试图证明,其AI系统能够做得比人类工程师更优更快。

谷歌员工在《自然》杂志论文中写道:“尽管进行了50年的研究,芯片布局仍然无法实现自动化设计,物理设计工程师需要数月的艰苦努力才能制作出可制造的布局……而在不到6小时的时间里,我们的AI系统自动生成的芯片布局在所有关键指标上都优于或可与人类绘制的设计图相媲美。”

这篇论文得到了电子设计自动化社区的关注,他们开始将机器学习算法整合到他们的软件套件中。但UCSD的一个研究团队对谷歌关于AI模型在芯片布局方面优于人类的说法提出了质疑。

在UCSD计算机科学与工程教授Andrew Kahng(在谷歌论文的同行评审过程中,Kahn曾担任《自然》杂志的审稿人)的带领下,这个团队花费几个月的时间对谷歌在《自然》杂志上描述的平面规划布局进行逆向工程。他们最终发现,通过对谷歌原始代码进行的重新创造(在他们的研究中被称为电路训练),谷歌的方法实际上比使用传统工业方法和工具的人类工程师表现得更差。

是什么导致了这种差异呢?该团队指出,谷歌使用了Synopsys公司的EDA套件,创建了芯片逻辑门的起始布局,然后由谷歌的强化学习系统进行优化。

谷歌在论文指出,在模型生成布局之后,使用了行业标准的软件工具和人工调整,主要是为了确保处理器能按预期工作,并最终完成制造。谷歌认为,无论平面图是由机器学习算法创建的,还是由人类工程师使用标准工具创建的,这都是必要的一步,因此这一AI模型值得称赞,因为其优化了最终产品。

然而,UCSD的研究团队表示,《自然》杂志的论文中并没有提到EDA工具是事先用来准备模型布局进行改进的。换句话说,Synopsys的这些工具可能给了AI模型一个足够好的开端,以至于AI系统的真实能力受到质疑。

该大学团队在谈到使用Synopsys的套件来为模型构建布局时写道,“这一点在论文评审过程中并不明显,《自然》杂志也没有提到。我们进行的实验表明,拥有初始位置信息可以显著提高电路训练(CT)的结果。”

《自然》杂志对谷歌论文展开调查,谷歌回应UCSD质疑

此后,一些学者敦促《自然》杂志根据UCSD的研究来审查谷歌的论文。在他们发给该杂志的电子邮件中,研究人员强调了Kahng教授及其同事提出的担忧,并质疑谷歌的论文是否具有误导性。

德克萨斯大学达拉斯分校电气工程高级讲师Bill Swartz表示,《自然》杂志的论文让很多研究人员蒙在鼓里,因为其研究结果采用了谷歌的专有TPU,因此无法验证。

他说,“需要对使用Synopsy的软件为谷歌的软件进行优化这一合作进行调查。我们都只想知道实际的算法,这样就可以复制它。如果谷歌的说法是正确的,那么我们希望能够实现。如果谷歌这一结论是科学而客观和话,那么其结果一定是真实和有效的。”

《自然》杂志表示,正在调查谷歌的这篇论文。该杂志一位发言人称,“出于保密原因,我们不能评论个别案例的细节。然而,当有人对杂志上发表的任何论文提出质疑时,我们都会按照既定的流程仔细调查。这一过程包括与作者协商,并在适当的情况下寻求审稿人和其他外部专家的建议。一旦我们掌握了足够的信息,我们就会做出最合适的回应,让读者清楚地了解我们的调查结果。”

信息显示,这并不是该杂志对谷歌这篇研究论文进行的第一次调查。2022年3月,改论文更正了作者,还增加了谷歌一些开源CT代码的链接,以供那些试图遵循该研究方法的人员使用。

谷歌这篇论文的主要作者Azalia Mirhoseini和Anna Goldie说,UCSD研究团队的实验并没有准确实现他们的方法。他们指出,Kahng教授的团队得到的结果并不理想,是因为他们根本没有在任何数据上预先训练他们的模型。

两人在一份声明中说,“如果没有从以前的经验中学习,基于学习的方法当然会表现得更差。我们在测试用例之前采用20个电路块进行了预训练。”

他们还指出,Kahng教授的研究团队也没有使用与谷歌相同的计算能力来训练他们的系统,这也可能削弱了其模型的性能。

Mirhosini和Goldie还表示,他们在《自然》杂志的论文中没有明确描述使用EDA工具是因为无关大局不值得一提。他们说,“我们的研究主要关注从物理合成到集群电路块的初始放置。在使用任何放置方法之前,必须进行物理合成,这是芯片设计的标准做法。”

然而,UCSD的研究团队表示,他们没有预先训练其模型,是因为他们无法访问谷歌的专有数据。同时他们声称,他们为此开发的软件已经得到了谷歌的另外两名工程师的验证,这两名工程师也是《自然》杂志论文的共同作者。

谷歌论文在内部引发争议,被解雇员工称其为了拿下合同

值得一提的是,谷歌在《自然》杂志上发表的这篇论文在该公司内部也引发了争议。

去年5月,谷歌AI研究员Satrajit Chatterjee自称被公司无故解雇,原因是他批评了这篇研究论文,并对其结论提出了质疑。解雇发生前,Chatterjee被谷歌告知不要发表批评这篇论文的文章。

谷歌的一些员工对他进行了指责,声称他的批评行为太过分,例如他将这篇论文的严重性描述为“火车失事”。他也由于这种批评行为接受了谷歌人力资源部的调查。

Chatterjee随后在加州圣克拉拉高级法院起诉谷歌,称其被非法解雇。在Chatterjee被解雇之后,Mirhoseini和Goldie也在2022年年中离职。

Chatterjee上个月修改了对谷歌的诉状,他的律师声称,谷歌正在考虑与“S公司”将其基于AI的平面图生成软件实现商业化,同时正与S公司谈判一项据称价值1.2亿美元的云交易。Chatterjee声称,谷歌支持这篇论文主要是为了帮助说服S公司签署这一重要的商业协议。

Chatterjee在给谷歌高层的一封电子邮件中写道:“这篇论文在一定程度上是谷歌为了与S公司达成合作迈出的第一步。由于这项研究是在一笔潜在的大型云交易的背景下进行的,当我们的测试表明情况并非如此时,这表明谷歌拥有这一革命性的技术是不道德的。”这封电子邮件作为诉讼的一部分已被披露。

他在法庭文件中指控谷歌夸大其研究结果,并故意向S公司隐瞒重要信息,以诱导其签署云交易,实际上是通过这个存在问题的技术吸引S公司开展合作。

S公司在法庭文件中被描述为一家“电子设计自动化公司”。知情人士表示,S公司其实指的就是Synopsys。但Synopsys和谷歌均拒绝为此置评。

有关AI设计芯片的能力超越人类?谷歌《自然》论文遭加州大学研究团队 “打脸”的更多相关文章

  1. ruby-on-rails - Rails - 子类化模型的设计模式是什么? - 2

    我有一个模型:classItem项目有一个属性“商店”基于存储的值,我希望Item对象对特定方法具有不同的行为。Rails中是否有针对此的通用设计模式?如果方法中没有大的if-else语句,这是如何干净利落地完成的? 最佳答案 通常通过Single-TableInheritance. 关于ruby-on-rails-Rails-子类化模型的设计模式是什么?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.co

  2. ruby-on-rails - 使用 rails 4 设计而不更新用户 - 2

    我将应用程序升级到Rails4,一切正常。我可以登录并转到我的编辑页面。也更新了观点。使用标准View时,用户会更新。但是当我添加例如字段:name时,它​​不会在表单中更新。使用devise3.1.1和gem'protected_attributes'我需要在设备或数据库上运行某种更新命令吗?我也搜索过这个地方,找到了许多不同的解决方案,但没有一个会更新我的用户字段。我没有添加任何自定义字段。 最佳答案 如果您想允许额外的参数,您可以在ApplicationController中使用beforefilter,因为Rails4将参数

  3. 程序员如何提高代码能力? - 2

    前言作为一名程序员,自己的本质工作就是做程序开发,那么程序开发的时候最直接的体现就是代码,检验一个程序员技术水平的一个核心环节就是开发时候的代码能力。众所周知,程序开发的水平提升是一个循序渐进的过程,每一位程序员都是从“菜鸟”变成“大神”的,所以程序员在程序开发过程中的代码能力也是根据平时开发中的业务实践来积累和提升的。提高代码能力核心要素程序员要想提高自身代码能力,尤其是新晋程序员的代码能力有很大的提升空间的时候,需要针对性的去提高自己的代码能力。提高代码能力其实有几个比较关键的点,只要把握住这些方面,就能很好的、快速的提高自己的一部分代码能力。1、多去阅读开源项目,如有机会可以亲自参与开源

  4. LC滤波器设计学习笔记(一)滤波电路入门 - 2

    目录前言滤波电路科普主要分类实际情况单位的概念常用评价参数函数型滤波器简单分析滤波电路构成低通滤波器RC低通滤波器RL低通滤波器高通滤波器RC高通滤波器RL高通滤波器部分摘自《LC滤波器设计与制作》,侵权删。前言最近需要学习放大电路和滤波电路,但是由于只在之前做音乐频谱分析仪的时候简单了解过一点点运放,所以也是相当从零开始学习了。滤波电路科普主要分类滤波器:主要是从不同频率的成分中提取出特定频率的信号。有源滤波器:由RC元件与运算放大器组成的滤波器。可滤除某一次或多次谐波,最普通易于采用的无源滤波器结构是将电感与电容串联,可对主要次谐波(3、5、7)构成低阻抗旁路。无源滤波器:无源滤波器,又称

  5. 计算机毕业设计ssm+vue基本微信小程序的小学生兴趣延时班预约小程序 - 2

    项目介绍随着我国经济迅速发展,人们对手机的需求越来越大,各种手机软件也都在被广泛应用,但是对于手机进行数据信息管理,对于手机的各种软件也是备受用户的喜爱小学生兴趣延时班预约小程序的设计与开发被用户普遍使用,为方便用户能够可以随时进行小学生兴趣延时班预约小程序的设计与开发的数据信息管理,特开发了小程序的设计与开发的管理系统。小学生兴趣延时班预约小程序的设计与开发的开发利用现有的成熟技术参考,以源代码为模板,分析功能调整与小学生兴趣延时班预约小程序的设计与开发的实际需求相结合,讨论了小学生兴趣延时班预约小程序的设计与开发的使用。开发环境开发说明:前端使用微信微信小程序开发工具:后端使用ssm:VU

  6. ruby-on-rails - 设计注册确认 - 2

    我在我的项目中有一个用户和一个管理员角色。我使用Devise创建了身份验证。在我的管理员角色中,我没有任何确认。在我的用户模型中,我有以下内容:devise:database_authenticatable,:confirmable,:recoverable,:rememberable,:trackable,:validatable,:timeoutable,:registerable#Setupaccessible(orprotected)attributesforyourmodelattr_accessible:email,:username,:prename,:surname,:

  7. ruby-on-rails - 设计通过 reset_password_token 获取用户 - 2

    我正在尝试创建密码规则来设计可恢复的密码更改。我通过passwords_controller.rb做了一个父类(superclass),但我需要在应用规则之前检查用户角色,但我所拥有的只是reset_password_token。 最佳答案 假设您的模型是用户:User.with_reset_password_token(your_token_here)Source 关于ruby-on-rails-设计通过reset_password_token获取用户,我们在StackOverflow

  8. ruby-on-rails - Rails 5,公寓和设计 : sign in with subdomains are not working - 2

    我已经使用Apartment设置了一个Rails5应用程序(1.2.0)和Devise(4.2.0)。由于某些DDNS问题,应用只能在app.myapp.com下访问(请注意子域app)。myapp.com重定向到app.myapp.com。我的用例是每个注册该应用的用户(租户)都应该通过他们的子域(例如tenant.myapp.com)访问他们的特定数据。用户不应限定在其子域内。基本上应该可以从任何子域登录。重定向到租户的正确子域由ApplicationController处理。根据Devise标准,登录页面位于app.myapp.com/users/sign_in。这就是问题开始的

  9. ruby-on-rails - 设计中的 ArgumentError::RegistrationsController#new 错误的参数数量(2 代表 0..1) - 2

    我在关注RyanbatesRailsCast的devise和omniauth(第235集-devise-and-omniauth-revised)。当我尝试使用Twitter登录时,标题中不断出现错误。defself.new_with_session(params,session)ifsession["devise.user_attributes"]new(session["devise.user_attributes"],without_protection:true)do|user|user.attributes=paramsuser.valid?end完整跟踪:C:/Ruby20

  10. ruby-on-rails - 使用用户或管理员模型和 Basecamp 样式子域设计登录 - 2

    我为Devise用户和管理员提供了不同的模型。我也在使用Basecamp风格的子域。除了我需要能够以用户或管理员身份进行身份验证的一些Controller和操作外,一切都运行良好。目前我有authenticate_user!在我的application_controller.rb中设置,对于那些只有管理员才能访问的Controller和操作,我使用skip_before_filter跳过它。不幸的是,我不能简单地指定每个Controller的身份验证要求,因为我仍然需要一些Controller和操作才能被用户或管理员访问。我尝试了一些方法都无济于事。看来,如果我移动authentica

随机推荐