首頁 > AI資訊 > 行業(yè)動態(tài) > 三年前的AI設計芯片造假?谷歌深陷學術(shù)不端丑聞,吹哨人被開除并已起訴

三年前的AI設計芯片造假?谷歌深陷學術(shù)不端丑聞,吹哨人被開除并已起訴

新火種    2024-11-15

2021 年,谷歌在 Nature 發(fā)表了一篇頗具爭議的論文《A graph placement methodology for fast chip design》。(作者包括 Jeff Dean 和 Quoc V. Le 等著名研究者),其中提出了一種基于強化學習的芯片設計方法。據(jù)介紹,該芯片設計方法可在不到六小時的時間內(nèi)自動生成芯片布局,并且設計結(jié)果在功耗、性能和芯片面積等所有關(guān)鍵指標上都優(yōu)于或媲美人類工程師,而后者需要耗費數(shù)月的艱苦努力才能達到類似效果。

圖片

事實上,谷歌在更早之前就已經(jīng)發(fā)布了該論文的預印本,我們也曾做過報道,詳情可參閱《6 小時完成芯片布局,谷歌用強化學習助力芯片設計》。

谷歌當時表示,這項基于強化學習的快速芯片設計方法對于資金緊張的初創(chuàng)企業(yè)大有裨益,可幫助初創(chuàng)企業(yè)開發(fā)自己的 AI 和其他專用芯片。并且,這種方法有助于縮短芯片設計周期,從而使得硬件可以更好地適應快速發(fā)展的技術(shù)研究。

論文雖然看起來大有前景,但三年來人們一直質(zhì)疑不斷。近日,最近一期 CACM 上,Synopsys 的杰出架構(gòu)師 Igor Markov 總結(jié)了人們對這篇論文的各種質(zhì)疑。

圖片

杜克大學陳怡然教授在微博上分享這篇文章

機器之心簡要翻譯整理了這篇文章。

本文關(guān)鍵見解

谷歌在 Nature 雜志上發(fā)表了一篇關(guān)于 AI 芯片設計的革命性論文。大眾媒體贊譽其是一項重大突破,但它遭到了領(lǐng)域?qū)<业馁|(zhì)疑,他們認為這篇論文好得令人難以置信,而且缺乏可復現(xiàn)的證據(jù)。現(xiàn)在,交叉檢驗的數(shù)據(jù)表明,由于行為、分析和報告中的錯誤,Nature 的這篇論文的可信度受到了嚴重損害。對谷歌這篇論文中的欺詐和研究不當行為的詳細指控已在加利福尼亞州提交。Nature 在執(zhí)行自己的政策方面進展緩慢。推遲撤回有問題的出版物正在扭曲科研過程。為了維護科學研究的誠實可信,必須迅速果斷地采取行動。

導語

Mirhoseini et al. 在 2021 年在 Nature 發(fā)表了一篇論文,其中使用了強化學習(RL)來設計硅芯片。這篇論文得到了人們的巨大關(guān)注,也因證據(jù)不足而引發(fā)了爭議。這篇來自谷歌的論文隱瞞了關(guān)鍵的方法步驟和重現(xiàn)其結(jié)果所需的大部分輸入。

本文的元分析(meta-analysis)表明,有兩項獨立評估填補了這一空白。它們表明谷歌的這個強化學習方法趕不上人類工程師,也趕不上一種已知的算法(模擬退火)和普遍可用的商業(yè)軟件,同時速度也更慢。通過對數(shù)據(jù)進行交叉檢驗后,Igor Markov 表示,由于行為、分析和報告中的錯誤,Nature 的這篇論文的可信度受到了嚴重損害。在本文發(fā)表之前,谷歌反駁了其內(nèi)部仍然存在的欺詐指控。

由于 AI 應用需要更大的算力,因此可以通過更好的芯片設計來提高效率。發(fā)表于 Nature 雜志的這篇論文聲稱實現(xiàn)了 AI 芯片設計的突破。它解決了優(yōu)化芯片上電路元件位置的難題,并描述了對五個張量處理單元(TPU)芯片塊的應用。其還表示這個方法是當時學術(shù)界或工業(yè)界最好的。

該論文還將這些說法推廣到芯片設計之外,表示強化學習在組合優(yōu)化方面的表現(xiàn)優(yōu)于最先進的技術(shù)。「非凡的主張需要非凡的證據(jù)」(卡爾?薩根),但該論文缺乏公開測試示例的結(jié)果,也沒有分享所使用的專有 TPU 芯片塊。源代碼 —— 在論文發(fā)表后七個月發(fā)布,以在最初的爭議之后支持該論文的發(fā)現(xiàn) —— 缺少重現(xiàn)方法和結(jié)果所需的關(guān)鍵部分。

圖片

項目代碼庫已經(jīng)停止公開或刪除,https://github.com/googleresearch/circuit_training

來自谷歌和學術(shù)界的十多位研究人員對 Mirhoseini et al. 的實驗提出過質(zhì)疑,并對所報告的研究結(jié)果提出了擔憂。此后,谷歌工程師多次更新他們的開源代碼,填補了一些缺失的部分,但依然不是全部。谷歌這個軟件庫中的開源芯片設計示例并未清楚地顯示谷歌 RL 代碼的強大性能。

顯然,唯一公開聲稱獨立復現(xiàn) Mirhoseini et al. 的技術(shù)是由加州大學圣地亞哥分校(UCSD)的研究人員于 2022 年秋季開發(fā)的。他們對谷歌開源代碼中缺少的關(guān)鍵組件進行了逆向工程,并完全重新實現(xiàn)了代碼中缺失的模擬退火 (SA) 基線。谷歌沒有發(fā)布 Mirhoseini et al. 使用的專有 TPU 芯片設計模塊,排除了完全外部復現(xiàn)結(jié)果的可能性。因此,UCSD 團隊分享了他們在現(xiàn)代公共芯片設計上的實驗:SA 和商業(yè)電子設計自動化 EDA 工具的表現(xiàn)均優(yōu)于谷歌的強化學習代碼。

《紐約時報》和路透社的記者在 2022 年報道了這場爭議,并發(fā)現(xiàn)早在 Nature 雜志提交之前,一些谷歌的研究人員(見表 1)就對他們負責檢查的聲明提出了異議。

該論文的兩位主要作者抱怨說,他們的研究一直存在欺詐指控。

2022 年,谷歌解雇了內(nèi)部吹哨人,并拒絕批準發(fā)表一篇批評 Mirhoseini et al. 研究的文章。這位吹哨人依據(jù)吹哨人保護法,對谷歌提起了錯誤解雇的訴訟:法庭文件詳細列出了與 Mirhoseini et al. 研究相關(guān)的欺詐和科學不端行為的指控。

2021 年 Nature 雜志在同一期上刊登了一篇介紹該論文的新聞觀點文章,敦促復現(xiàn)該論文的結(jié)果??紤]到復現(xiàn)的障礙和復現(xiàn)嘗試的結(jié)果,文章的作者撤回了該文章。2023 年 9 月 20 日,Nature 雜志為該論文添加了在線編者注。

圖片

一年后(2024 年 9 月晚些時候),隨著這篇文章的發(fā)表,Nature 雜志的編者注已被移除,但出現(xiàn)了一份作者的附錄。這份附錄重復了早先聲明中討論的作者對批評的回應部分的論點。

但關(guān)于 Nature 論文的主要關(guān)切點還未得到解決。特別是,論文結(jié)果中關(guān)于一個額外的專有 TPU 塊的未公開統(tǒng)計數(shù)據(jù),并未支持任何實質(zhì)性的結(jié)論。這只會加劇對選擇性報告和誤報的擔憂。發(fā)布一個未說明預訓練數(shù)據(jù)的預訓練模型,也加劇了關(guān)于數(shù)據(jù)污染的擔憂。

接下來,本文列出了對該論文的初步懷疑,并表明其中許多懷疑后來得到了證實。然后,本文檢查了 Mirhoseini et al. 是否改進了現(xiàn)有技術(shù),概述了作者的回應,并討論了該工作在實踐中的可能用途。最后,本文得出結(jié)論并指出了政策含義。

這里我們略過 Igor Markov 這篇文章中對原論文的介紹,詳情可參閱機器之心的報道《6 小時完成芯片布局,谷歌用強化學習助力芯片設計》。我們重點來看對該研究的懷疑和指控。

最初的懷疑

盡管登上 Nature 的這項研究復雜而又令人印象深刻,但研究有著明顯的不足。

舉例來說,文中提出的強化學習(RL)被描述為能夠處理更廣泛的組合優(yōu)化問題(如旅行商問題)。但是,該研究并沒有通過對關(guān)鍵問題的公式化和易于配置的測試示例來展示這一點,而是解決了一個專業(yè)任務(芯片設計的宏布局),僅針對谷歌專有的 TPU 電路設計塊提供了五個塊的結(jié)果,而可用的塊遠不止這些。

此外,RL 公式只是優(yōu)化了一個包含 HPWL 的簡化函數(shù),但并未針對開放電路示例進行純 HPWL 優(yōu)化的評估,而這在其他文獻中是常規(guī)操作。

可以說,這篇論文隱瞞了實驗的關(guān)鍵方面,存在嚴重的遺漏,主要表現(xiàn)在以下幾點:

第一點:標題中提到「快速芯片設計(fast chip design)」, 然而作者只描述了設計過程時間從幾天或幾周到幾小時的改善,但并沒有提供針對每個設計的具體時間,也沒有將設計過程細分為不同階段。文章中并沒說明白,幾天或幾周的基線設計過程是否包括了功能設計變更的時間、閑置時間、使用較低效的 EDA 工具的時間等。這種描述缺乏詳細信息,使得讀者難以理解設計時間實際縮短到了何種程度,以及這種改進的具體影響。

第二點:文章聲稱強化學習(RL)在每個測試用例中的運行時間不超過六小時(針對五個 TPU 設計塊中的每一個),但這并沒有包括全部的 20 個塊。此外,RL 的運行時間僅涵蓋了宏布局,而 RePlAce 和行業(yè)工具會放置所有電路組件。

第三點:Mirhoseini et al. 專注于宏布局,但卻沒有提供每個 TPU 芯片塊中宏的數(shù)量、大小和形狀,以及面積利用率等關(guān)鍵設計參數(shù)。

第四點:Mirhoseini et al. 只給出了五個 TPU 塊的結(jié)果,其統(tǒng)計明顯不足,而且高方差指標會產(chǎn)生噪聲結(jié)果(見表 2)。通常情況下,使用更多的樣本是常見的做法(見上表 1)。

圖片

第五點:Mirhoseini et al. 沒有說明被強化學習(RL)超越的人類芯片設計師的資質(zhì)水平。撇開可復現(xiàn)性不談,這些結(jié)果后來在 Cheng et al. 的研究中被證明是可以輕易改進的。

第六點:Mirhoseini et al. 聲稱改善了面積,但芯片面積和宏面積在布局過程中并未改變,標準單元面積也沒有變化(參見表 2)。

第七點:對于結(jié)果隨時間推移而優(yōu)化的迭代算法,應該公平地比較每個測試用例在相同運行時間下哪個具有更好的質(zhì)量指標,或在相同質(zhì)量下哪個具有更好的運行時間,或兩者都有所改進。Mirhoseini et al. 沒有提供這樣的證據(jù)。特別是,如果基于機器學習的優(yōu)化使用了非凡的計算資源,那么在其最有競爭力的形式中,模擬退火(SA)優(yōu)化也應當使用同等的計算資源。這意味著在評估和比較這兩種方法的效果時,應確保它們在資源使用上處于同一水平,以保證比較的公正性。

對于專家來說,Mirhoseini et al. 提出的方法似乎存在缺陷,主要表現(xiàn)在:

H1. 與 SOTA 相比,提出的 RL 使用了過多的 CPU/GPU 資源。因此快速芯片設計的說法需要仔細證實。

H2. 逐個放置宏是最簡單的方法之一。然而即使在深度 RL 的驅(qū)動下,逐個放置看起來也很不方便。

H3. Mirhoseini et al. 使用了與 20 多年前類似的電路分區(qū)(聚類)方法。眾所周知,這些技術(shù)與互連優(yōu)化目標有所不同。

H4. Mirhoseini et al. 將宏的位置限制在一個粗粒度的網(wǎng)格上,而最新的方法則避免了這種限制。在圖 1(左)中,宏被自由放置,但谷歌的強化學習傾向于將宏分散開來,并且不允許在如圖 1(左)中心這樣的大區(qū)域內(nèi)放置單元。圖 2 展示了這種差異。這表明,雖然強化學習技術(shù)在處理某些設計任務上具有潛力,但其在處理大規(guī)模電路設計時可能需要依賴于簡化的網(wǎng)格系統(tǒng),這可能限制了其優(yōu)化效果和應用范圍。

圖片

圖片

H5.Mirhoseini et al. 使用的力導向放置技術(shù),仍有很大的改進空間。

除了上述內(nèi)容,還有值得懷疑的基準。Nature 雜志使用了多個基準來宣稱所提技術(shù)的優(yōu)越性。然而人類基準沒有記錄,并且不可復現(xiàn)。

B1. Mirhoseini et al. 和表 1 中的關(guān)鍵結(jié)果給出了五個 TPU 設計模塊的芯片指標。但與 SA 的比較并沒有報告這些芯片指標。

B2. Mirhoseini et al. 提到,強化學習(RL)的結(jié)果經(jīng)過了模擬退火(SA)的后處理,但缺乏消融研究來評估 SA 對芯片指標的影響。

B3. 在 Mirhoseini et al. 的研究中,RePlAce 被用作基準,但這種使用方式與其預期用途不一致。

B4. Mirhoseini et al. 沒有描述在模擬退火(SA)中如何初始化宏位置,這表明作者可能采用了一種可以改進的簡單方法。后來,Bae et al. 確定了 SA 基線中的更多缺點,而 Cheng et al. 也證實了這些問題。

更多證據(jù)

那篇 Nature 論文發(fā)表幾個月后,那是在最初階段的爭議之后,Bae et al.、谷歌的文檔和開源代碼、Nature 同行評議、Yue et al. 給出了更多數(shù)據(jù)。

Nature 給出了對 Mirhoseini et al. 的同行評議文件以及作者的反駁。在漫長的來回溝通中,作者向?qū)徃迦吮WC,宏的位置在 RL 放置后沒有被修改,證實了宏是粗粒度網(wǎng)格放置的。在幾份投稿中,Bae et al. 實現(xiàn)了 Nature 審稿人的要求,并在 17 個公開芯片設計示例上對谷歌的技術(shù)進行了基準測試,結(jié)果表明:先前的方法明顯優(yōu)于谷歌 RL。

美國和德國的一些教授公開表達了對這篇 Nature 論文的質(zhì)疑。當研究人員注意到谷歌開源版本中的缺陷時,例如分組(聚類)流程,谷歌工程師發(fā)布了更多代碼(但不是全部),這反倒引發(fā)了更多問題。

又過了一年,最初的懷疑變大了,因為結(jié)果表明,當宏布局不局限于網(wǎng)格時,人類設計師和商用 EDA 工具的表現(xiàn)均優(yōu)于谷歌這個方法。在 Cheng et al. 的表 2 中,作者估計了通過 RL 優(yōu)化的代理成本函數(shù)與 Nature 論文表 1 中使用的芯片指標的秩相關(guān)性。Cheng et al. 在表 3 中估計了基于 RL 的優(yōu)化之后,芯片指標的平均值和標準差。

本文的表 2 給出了一些總結(jié),可以看到所有芯片指標的秩相關(guān)性都很低,而 TNS 和 WNS 的噪聲程度很高。

因此,Mirhoseini et al. 對 TNS 和 WNS 的優(yōu)化依賴于有缺陷的代理,并產(chǎn)生了統(tǒng)計意義可疑的結(jié)果??梢宰⒁獾?,在 Ariane-NG45 以及 BlackParrot-NG45 上的 TNS 的 σ/|μ | > 0.5。除了媒體的批評,Mirhoseini et al. 也受到了三位美國教授的質(zhì)疑。

圖片

未公開使用商業(yè)工具的 (x, y) 位置

UCSD 的那篇論文中給出了強有力的證據(jù)和谷歌工程師的確認,表明作者隱瞞了一個關(guān)鍵細節(jié):在對輸入網(wǎng)表進行聚類時,谷歌代碼中的 CT merge 會讀取一個位置以根據(jù)位置重組集群。為了生成宏的 (x, y) 位置,論文的作者使用了 Synopsys 的商業(yè) EDA 工具生成的所有電路元件(包括宏)的初始 (x, y) 位置。

Mirhoseini et al. 的主要作者確認使用了這一步驟,并聲稱這并不重要。但在 Cheng et al. 的論文中,該步驟可將關(guān)鍵指標提高 7-10%。因此,Mirhoseini et al. 的結(jié)果需要未被明確說明的算法步驟,例如從商業(yè)軟件中獲取 (x, y) 數(shù)據(jù)。

Cheng et al. 的論文中還列舉了更多未在論文中說明的技術(shù),其中還提到了 Nature 論文、其源代碼與谷歌芯片設計實際使用的代碼之間的差異。這些差異包括代理成本函數(shù)中項的特定權(quán)重、與電路不同的鄰接矩陣構(gòu)造,以及 Mirhoseini et al. 的論文中沒有源代碼或完整描述的幾個「黑箱」元素。Bae et al.、Cheng et al.、Macro Placement Repo 提供了缺失的描述。此外,Mirhoseini et al. 的結(jié)果與所用方法不符,因為論文中沒有提到一些關(guān)鍵組件。僅憑描述無法復現(xiàn)其結(jié)果和方法。

訓練數(shù)據(jù)和測試數(shù)據(jù)之間存在數(shù)據(jù)泄漏

根據(jù) Mirhoseini et al. 的說法,「當我們將策略網(wǎng)絡暴露給更多種類的芯片設計時,它就不太容易過度擬合?!?/p>

但谷歌 Team 1 后來在 Yue et al. 中表明,對「多樣化 TPU 塊」進行預訓練并沒有提高結(jié)果質(zhì)量。對「以前的網(wǎng)表版本」進行預訓練會稍微提高質(zhì)量。對 RL 進行預訓練并在類似設計上對其進行評估可能是 Mirhoseini et al. 方法論中的一個嚴重缺陷。由于谷歌沒有發(fā)布專有的 TPU 設計或每個設計的統(tǒng)計數(shù)據(jù),所以無法比較訓練和測試數(shù)據(jù)。

可能的局限性

Mirhoseini et al. 沒有透露其方法的主要局限性,但卻表示其可在更廣泛的組合優(yōu)化中取得成功。Mirhoseini et al. 中的 Ariane 設計顯示了相同大小的宏模塊:這是一個潛在的限制,因為商用芯片設計通常會使用多種不同的宏尺寸。然而,他們沒有報告每個 TPU 塊的基本統(tǒng)計數(shù)據(jù):宏的數(shù)量及其形狀、設計面積利用率以及宏占用的面積分數(shù)。根據(jù)同行評議和谷歌工程師對 Cheng et al. 作者的指導,TPU 塊的面積利用率似乎低于典型的商用芯片設計。

谷歌 RL 在 Bae et al. 和 Cheng et al. 中使用的 Adya 和 Markov 的具有挑戰(zhàn)性的公共基準測試上表現(xiàn)不佳(如圖 2 所示),這表明存在未公開的局限性。

另一個可能的限制是對預置(固定)宏的處理不當,這在行業(yè)布局中很常見,但 Mirhoseini et al. 沒有討論過。通過干擾預置宏,網(wǎng)格化可能會影響實踐中的可用性。

在公共基準測試上的表現(xiàn)不佳的原因也可能是由于對專有 TPU 設計的過度擬合。

使用中等的模擬退火基線

谷歌 Team 2 的更強基準論文《Stronger baselines for evaluating deep reinforcement learning in chip placement》通過在 swap、shift 和 mirror 操作中添加 move 和 shuffle 操作,改進了谷歌 Team 1 在 Mirhoseini et al. 中使用的并行 SA。在優(yōu)化相同的目標函數(shù)時,這種改進的 SA 通常會在更短的時間內(nèi)產(chǎn)生比 RL 更好的結(jié)果。

Cheng et al. 通過獨立實現(xiàn) SA 復現(xiàn)了 Bae et al. 的定性結(jié)論,發(fā)現(xiàn) SA 結(jié)果的方差小于 RL 結(jié)果。

此外,Bae et al. 為 SA 提出了一種簡單快速的宏初始化啟發(fā)式方法,并在比較 RL 與 SA 時可均衡計算時間。

鑒于 SA 在 1980 到 1990 年代被廣泛使用,與弱的 SA 基線相比,自然會導致新的 RL 技術(shù)被高估。

這篇 Nature 論文是否提高了現(xiàn)有技術(shù)水平?

Nature 雜志的社論在討論該論文時推測:「這是一項重要的成就,將對加速供應鏈產(chǎn)生巨大的幫助?!?/p>

但在多家芯片設計和 EDA 公司進行評估和復現(xiàn)嘗試后,可以肯定地得出結(jié)論,這篇 Nature 論文沒有取得任何重要成就,因為以前的芯片設計軟件,特別是來自 Cadence Design Systems 的軟件,可以更快地產(chǎn)生更好的布局。如果該論文的審稿人或公眾都知道這些事實,那么該論文關(guān)于改進 TPU 設計的主張將是荒謬的。

這篇 Nature 論文聲稱人類比商業(yè) EDA 工具產(chǎn)生了更好的結(jié)果,但沒有給出證實。

谷歌 Team 2 和 UCSD 團隊采用不同的方法將 Mirhoseini et al. 中的方法與基線方法進行比較,累積報告了與商業(yè) EDA 工具、人類設計師、學術(shù)軟件以及 SA 的兩個獨立自定義實現(xiàn)的比較結(jié)果。

谷歌 Team 2 遵循 Mirhoseini et al. 中的描述,沒有提供初始布局信息。UCSD 團隊試圖復現(xiàn)谷歌實際所做的事情以產(chǎn)生結(jié)果(缺乏 Mirhoseini et al. 的詳細信息)。

谷歌 Team 2 可以訪問 TPU 設計模塊,并證明預訓練的影響實際上很小。

盡管 UCSD 團隊無法訪問谷歌的訓練數(shù)據(jù)和代碼,但還是獲得了與 Mirhoseini et al. 類似的結(jié)果,無需預訓練。他們還按照谷歌 Team 2 的指令重新實現(xiàn)了 SA,并引入了幾個新的芯片設計示例(表 1)。

Nature 論文中 RePlAce 的使用方式與其預期用途不一致。Bae et al.、Cheng et al. 通過正確使用 RePlAce, 在 ICCAD 2004 基準測試中為 RePlAce 取得了出色的結(jié)果。

Nature 論文中使用的模擬退火的實現(xiàn)存在障礙,消除障礙(在同一源代碼庫中)改進了結(jié)果。如果正確實現(xiàn),SA 會使用更少的運行時間產(chǎn)生比谷歌 CT/RL 更好的解決方案,并且兩者都被賦予相同的代理成本函數(shù)。Bae et al.、Cheng et al. 證明了這一點。

與谷歌 CT/RL 相比,SA 持續(xù)改進了線長和功率指標。對于電路時序指標 TNS 和 WNS,SA 產(chǎn)生的噪聲較小,但與 RL 的結(jié)果相當?;叵胍幌拢琒A 和 RL 優(yōu)化的代理函數(shù)不包括時序指標,這使得 SA 或 RL 實現(xiàn)這些改進的斷言顯得很可疑。

谷歌 CT/RL 未能在人類基線、商業(yè) EDA 工具和 SA 的質(zhì)量上有所提高。它也沒有改進運行時 SOTA(表 3),并且作者沒有透露每個設計數(shù)據(jù)或設計過程的時間。如果配置 / 實現(xiàn)得當,RePlAce 和 SA 會提供更強的基線。

對這篇 Nature 論文批評的反駁

盡管媒體進行了批評并提出了技術(shù)問題,但作者未能消除 Mirhoseini et al. 的方法和結(jié)果的復現(xiàn)的剩余障礙。

UCSD 團隊的工程努力克服了這些障礙,他們跟進了谷歌 Team 2 批評 Nature 論文的工作,然后分析了其中的許多問題。在 CT 代碼庫出現(xiàn)之前,谷歌 Team 2 就可以訪問谷歌 TPU 設計和論文中使用的源代碼。Cheng et al. 和 Macro Placement Repo 的 UCSD 作者可以訪問 CT 并受益于谷歌 Team 1 工程師的長期參與,但無法訪問 Bae et al. 或 Mirhoseini et al. 中使用的 SA 代碼或 CT 框架中缺失的其他關(guān)鍵代碼片段。

然而,Bae et al.、Cheng et al. 的結(jié)果與 Macro Placement Repo 相互印證,并且他們的定性結(jié)論是一致的。UCSD 的 Ariane-NG45 結(jié)果與 Google Team 1 工程師的結(jié)果非常匹配,Cheng et al. 中表明 UCSD 生成的 Ariane-NG45 的 CT 訓練曲線與 Google Team 1 工程師生成的結(jié)果相匹配。谷歌 Team 1 工程師仔細審查了該論文以及 2022 年秋季和 2023 年冬季的研究結(jié)果,沒有提出異議。

Nature 論文的兩位主要作者于 2022 年 8 月離開谷歌,但在 2023 年 3 月,他們對 Cheng et al. 的結(jié)果提出了反對。沒有彌補原工作的缺陷。這些反對意見立即在宏布局代碼庫的 FAQ 部分得到解決。其中一個問題是 Cheng et al. 的實驗中缺乏預訓練。

預訓練

Cheng et al. 使用谷歌 Circuit CT 庫中的代碼和指令進行訓練,其中指出(2023 年 6 月):「以下結(jié)果是從頭開始訓練的結(jié)果,因為目前無法共享預訓練模型?!?/p>

根據(jù) Macro Placement Repo 中的 MacroPlacement FAQ,Cheng et al. 沒有使用預訓練,因為根據(jù)谷歌的 CT FAQ,不需要預訓練來重現(xiàn) Mirhoseini et al. 的結(jié)果。此外,谷歌沒有公布預訓練數(shù)據(jù)。

谷歌 Team 2 使用谷歌內(nèi)部的代碼評估預訓練,發(fā)現(xiàn)對與 SA 或 RePlAce 的比較沒有影響。

谷歌 Team 1 表明「不同 TPU 塊」的預訓練并沒有改善結(jié)果,只改善了運行時間?!敢郧暗木W(wǎng)表版本」的預訓練略有改善。CT 文檔或論文本身沒有討論、披露或發(fā)布此類先前版本。

換句話說,Nature 論文的主要作者希望其他人使用預訓練,但他們沒有足夠詳細地描述它以進行復現(xiàn),沒有發(fā)布它的代碼或數(shù)據(jù),并且已經(jīng)表明它不會改善預訓練的結(jié)果。

2024 年 9 月(發(fā)表幾年后),作者宣布發(fā)布預訓練模型,但未發(fā)布預訓練數(shù)據(jù)。因此,我們無法確保用于測試的特定示例未在預訓練中使用。

基準老舊

另一個反對意見是 Bae et al. 和 Cheng et al. 使用的公共電路基準測試據(jù)稱使用了過時的基礎(chǔ)設施。

事實上,這些基準已經(jīng)使用 HPWL 目標進行了評估,該目標可以在芯片設計的幾何 2D 縮放下準確縮放,并且仍然適用于所有技術(shù)節(jié)點(第 2 節(jié))。ICCAD 基準是由那篇論文的同行評審員 #3 要求的。當 Bae et al. 和 Cheng et al. 實現(xiàn)了這個要求,在路由變得相關(guān)之前,谷歌 RL 遇到了麻煩:在 HPWL 優(yōu)化中,RL 差了 20% 左右(HPWL 是 CT/RL 優(yōu)化的代理成本中最簡單但最重要的項)。

Cheng et al. 的實驗中,沒有訓練到收斂

Macro Placement Repo 中的 FAQ #15 立即解決了這一問題:「CT GitHub 存儲庫提供的任何指南中都沒有描述『訓練到收斂』。」

后來,他們的額外實驗表明,「訓練直到收斂會惡化一些關(guān)鍵芯片指標,同時改善其他指標,凸顯了代理成本和芯片指標之間的不良相關(guān)性??傮w而言,與 ISPD 2023 論文中報告的模擬退火和人類宏放置的結(jié)果相比,直到收斂的訓練不會發(fā)生質(zhì)的變化?!笲ae et al. 的 RL-vs-SA 實驗早于 CT 框架,也早于 Mirhoseini et al. 聲稱的訓練不到 6 小時就收斂的方法。

Nature 論文使用的計算資源非常昂貴且難以復現(xiàn)。由于 RL 和 SA 算法都會在早期產(chǎn)生可行的解決方案,然后逐漸改進代理函數(shù),因此 Cheng et al. 的盡力而為的比較使用的計算資源比 Mirhoseini et al. 的計算資源要少,并且 RL 和 SA 之間具有同等性。結(jié)果:SA 擊敗 RL。

Bae et al. 使用與 Mirhoseini 相同的計算資源對 RL 和 SA 進行了比較。Cheng et al. 的結(jié)果與 Bae et al. 的結(jié)果一致。如果給予更多資源,SA 和 RL 不太可能進一步改善芯片指標,因為其與 Mirhoseini 的代理函數(shù)相關(guān)性較差。

該論文的主要作者在 Goldie 和 Mirhoseini 在聲明《Statement on reinforcement learning for chip design》中提到,該論文被大量引用,但他們沒有引用谷歌之外的任何積極的復現(xiàn)結(jié)果來清除所有已知的障礙。Bae et al. 和 Cheng et al. 沒有討論在 IC 設計中使用 RL 的其他方法,因此這里不再進行一般性結(jié)論。

谷歌這篇論文中的成果可用嗎?

發(fā)表于 Nature 的這篇谷歌論文聲稱這些方法可應用于最近的谷歌 TPU 芯片,這似乎佐證了他們聲稱的東西:即這些方法改進了最新技術(shù)水平。但除了含糊的一般性聲明外,沒有報告明確說明對生產(chǎn)級芯片的芯片指標改進。

前文已經(jīng)表明,該論文和框架中的方法落后于 SOTA,例如 1980 年代的模擬退火(SA)。此外,谷歌的 Bae et al. 內(nèi)部實現(xiàn)的 SA 足以替代那篇 Nature 論文中提出的強化學習方法。谷歌既聲稱在 TPU 設計中使用了這個 RL 方法,但實際上這個方法又落后于 SOTA,為什么會這樣?這篇文章試圖給出一些解釋。

鑒于芯片時序指標 TNS 和 WNS 在強化學習結(jié)果中的方差較大,所以使用遠遠更長的運行時間,嘗試使用不同的代理成本函數(shù)和超參數(shù)設置進行多次獨立隨機嘗試可能會改善最佳結(jié)果,但 SA 也能做到這一點。使用內(nèi)部方法(即使是較差的方法)是行業(yè)實踐中稱為 dogfooding(吃自己的狗糧)的常見方法。在大多數(shù)芯片中,一些塊并不重要(不會影響芯片速度),是很好的 dogfooding 候選。這可以解釋谷歌為什么選擇性地公布生產(chǎn)級使用」和報告。(注:在芯片設計領(lǐng)域,dogfooding 是指芯片設計公司內(nèi)部的工程團隊會使用自己設計的芯片進行測試和驗證,以確保芯片滿足預期的性能、功能和質(zhì)量。這種方法可以幫助團隊發(fā)現(xiàn)潛在的設計缺陷、優(yōu)化用戶體驗,并提前解決問題,而不是等到產(chǎn)品發(fā)布后才被客戶發(fā)現(xiàn)。)強化學習的結(jié)果由 SA30 進行過后處理,但 CT FAQ 否認了這種后處理 ——TPU 設計流程中使用了后處理,但在將 RL 與 SA 進行比較時未使用。但由于成熟的 SA 始終勝過強化學習,因此 SA 完全可以替代強化學習(可以使用 SA 中的自適應溫度調(diào)度來適應初始位置)。

谷歌 Team 1 的后續(xù)研究表明(如圖 7 所示),僅在對基本相同的設計進行預訓練時,預訓練才能改善結(jié)果。也許,谷歌在對 IC 設計進行多次修訂時利用了強化學習 —— 這是一個有效的背景,但這篇 Nature 論文中沒有描述這一點。此外,從頭開始運行時,商用 EDA 工具的速度比強化學習快幾個數(shù)量級,因此預訓練 RL 并不能縮小差距。

圖片

谷歌 CT/RL 代碼可以得到改進嗎?

RL 和 SA 比 SOTA 慢幾個數(shù)量級(表 3),但預訓練(CT 中沒有)僅能將 RL 的速度提高幾倍。CT 代碼庫現(xiàn)在包含嘗試過的改進措施,但我們尚未看到芯片指標的重大提升。改進版 CT 庫和論文仍然存在四個主要障礙:

RL 優(yōu)化的代理成本并不能反映電路時序,因此改進 RL 可能無助于改進 TNS 和 WNS。在優(yōu)化給定的代理函數(shù)時,SA 優(yōu)于 RL。因此,即使使用更好的代理,RL 也可能會失敗。RL 在粗粒度網(wǎng)格上放置宏會限制它們的位置(圖 2)。當人類忽略粗網(wǎng)格時,他們會找到更好的宏位置。商用 EDA 工具也避免了這種限制,并且優(yōu)于谷歌的 CT/RL。作為預處理步驟的聚類會導致放置和網(wǎng)表分區(qū)目標之間不匹配。

總結(jié)

這篇元分析討論了對 Mirhoseini et al. 那篇 Nature 論文的結(jié)果的復現(xiàn)和評估,以及其中方法、結(jié)果和聲明的有效性。他們發(fā)現(xiàn),那篇論文中包含機器學習中的多種可疑做法,包括不可重復的研究實踐、挑選好結(jié)果、誤報和可能的數(shù)據(jù)污染。

基于交叉檢驗的新數(shù)據(jù),本文得出了具有足夠冗余度的結(jié)論:由于研究中實現(xiàn)、分析和報告中的錯誤,該論文的可信度嚴重不足。遺漏、不一致、錯誤和失實陳述影響了他們的方法、數(shù)據(jù)、結(jié)果和解釋。

關(guān)于那篇 Nature 論文的結(jié)論

谷歌 Team 2 可以訪問谷歌的內(nèi)部代碼,而 Cheng et al. 對缺失的組件進行了逆向工程和 / 或重新實現(xiàn)。谷歌 Team 2 和 UCSD 團隊從類似的實驗中得出了一致的結(jié)論,并且每個團隊都進行了額外的觀察。

這里交叉檢查了谷歌 Team 2 和 UCSD Team 報告的結(jié)果,并考慮了 CT 框架、Nature 同行評議和 Yue et al. ,然后總結(jié)了這些工作得出的結(jié)論。這證實了對這些聲明的許多初步懷疑,并發(fā)現(xiàn)了其他缺陷。

因此,很明顯,Mirhoseini et al. 的 Nature 論文在多個方面具有誤導性,以至于讀者無法相信其最重要的聲明和結(jié)論。Mirhoseini et al. 沒有改進 SOTA,而原始論文的方法和結(jié)果無法從提供的描述中重現(xiàn),這違反了 Nature 的既定編輯政策。依賴專有的 TPU 設計進行評估,以及實驗報告不足,繼續(xù)阻礙著方法和結(jié)果的可復現(xiàn)性。

這篇 Nature 論文作者試圖駁斥批評,但未能成功。

令人驚訝的是,自 Cheng et al. 發(fā)表論文以來,Mirhoseini et al. 的作者在一年半內(nèi)沒有提供新的令人信服的實證結(jié)果。

對芯片設計的影響

這里僅強調(diào)了那篇 Nature 論文方法中的不足之處。但 2024 年來自中國的一項研究成果《Benchmarking end-to-end performance of AI-based chip placement algorithms》使用他們新的獨立評估框架比較了七種混合尺寸布局技術(shù),其中有 20 個電路(其中七個帶有宏)。

他們在芯片指標上的端到端研究結(jié)果表明,基于 ML 的技術(shù)落后于 RePlAce(嵌入在 OpenROAD 中)和其他基于優(yōu)化的技術(shù):DREAMPlace(基于 GPU 的 RePlAce 算法變體)和 AutoDMP(圍繞 DREAMPlace 的貝葉斯優(yōu)化 wrapper)。盡管復現(xiàn) Mirhoseini et al. 的方法具有明顯的必要性,但 Wang et al. 的作者無法提供這樣的結(jié)果。

政策影響

理論論證和實證證據(jù)表明,各個領(lǐng)域發(fā)表的大量論文無法復現(xiàn),而且可能不正確。比如 Nature 雜志這篇論文就加劇了復現(xiàn)危機,破壞了人們對已發(fā)表研究的信任。

Retraction Watch 每年能追蹤到 5000 起撤稿事件,包括突出的研究不端行為案例。其表示,「研究不端行為是一個嚴重的問題,而且(可能)越來越嚴重」,這使得我們更有必要將誠實的錯誤與故意夸大和不端行為區(qū)分開來。機構(gòu)需要給出回應,包括在 Nature 撤稿通知中進行明確說明。

Nature 的編輯政策應被廣泛而嚴格地遵守。引自《Nature Portfolio》:

「出版的固有原則是,其他人應該能夠復現(xiàn)和借鑒作者發(fā)表的主張。在 Nature Portfolio 期刊上發(fā)表論文的條件是,作者必須及時向讀者提供材料、數(shù)據(jù)、代碼和相關(guān)協(xié)議,而無需要求資格…… 出版后,如果讀者遇到作者拒絕遵守這些政策的情況,應聯(lián)系期刊的主編。」

具體到 Mirhoseini et al. 這篇論文,雜志社論堅稱「技術(shù)專長必須廣泛分享」。但是,當稿件作者忽視公開基準測試的要求并阻礙復現(xiàn)時,他們的技術(shù)主張應該受到懷疑(尤其是如果他們后來不同意與他們的工作進行比較)。

根據(jù)同行評議文件,這篇論文的接收取決于代碼和數(shù)據(jù)的發(fā)布,但在 Mirhoseini et al. 發(fā)表時或之后,這都沒有發(fā)生。

這些作者還對那篇 Nature 論文進行了修改,聲稱代碼已經(jīng)可用。但發(fā)布的代碼中仍然存在嚴重遺漏。這尤其令人擔憂,因為該論文省略了關(guān)鍵的比較和細節(jié),并且負責評估該項目的谷歌吹哨人在加州法院宣誓指控存在欺詐行為。這使得復現(xiàn)變得更加關(guān)鍵。

對于已發(fā)表的科學主張,得出明確無誤的結(jié)論符合每個人的利益。作者、Nature 雜志的編輯和審稿人以及研究界都應承擔責任。尋求真相是大家共同的義務。

參考鏈接:

https://cacm.acm.org/research/reevaluating-googles-reinforcement-learning-for-ic-macro-placement/

https://weibo.com/2199733231/OErfamQry

相關(guān)推薦
免責聲明
本文所包含的觀點僅代表作者個人看法,不代表新火種的觀點。在新火種上獲取的所有信息均不應被視為投資建議。新火種對本文可能提及或鏈接的任何項目不表示認可。 交易和投資涉及高風險,讀者在采取與本文內(nèi)容相關(guān)的任何行動之前,請務必進行充分的盡職調(diào)查。最終的決策應該基于您自己的獨立判斷。新火種不對因依賴本文觀點而產(chǎn)生的任何金錢損失負任何責任。

熱門文章