登上Nature的AI晶片設計屢遭質疑,谷歌發文反擊,Jeff Dean:質疑者連預訓練都沒做

机器之心發表於2024-11-19
終於,面對近年來對自家自動 AI 晶片設計研究的質疑,谷歌坐不住了,發文回應!論文作者中包括了谷歌首席科學家 Jeff Dean。
圖片
  • 論文地址:https://arxiv.org/pdf/2411.10053

  • 論文標題:That Chip Has Sailed: A Critique of Unfounded Skepticism Around AI for Chip Design

我們先來回顧一下事情的來龍去脈:

2020 年,谷歌發表了預印本論文《Chip Placement with Deep Reinforcement Learning》,介紹了其設計晶片佈局的新型強化學習方法 AlphaChip。在 2021 年,這項研究發表在 Nature 上並開源了出來。

此後,AlphaChip 激發了 AI 晶片設計方面的大量工作,並在谷歌母公司 Alphabet 三代 TPU、資料中心 CPU 和其他晶片中部署,並由外部晶片製造商擴充套件。
圖片
然而,ISPD 2023 上的一篇論文對谷歌 AlphaChip 的效能提出了質疑(Cheng 等人),論文指出,儘管谷歌承諾會提供資料和程式碼,但實際上這些資源並不完全可用。
圖片
論文地址:https://arxiv.org/pdf/2302.11014

Cheng 等人還認為基於谷歌的 Circuit Training(CT)框架的 AlphaChip 和《Nature》論文存在幾項不一致:如輸入網表的預放置資訊、代理成本函式的權重設定、宏觀和標準單元群集的放置規則等。
圖片
根據他們的評估,相比模擬退火演算法(SA),在大多數情況下,AlphaChip 的代理成本更高、HPWL 也不如 SA 方法。
圖片
但谷歌方稱:「他們並沒有按照我們 Nature 論文中描述的方法執行。」

例如 Cheng 等人的論文中沒有預訓練 RL 方法(消除了從先驗中學習的能力)、使用的計算資源少得多(RL 經驗收集器減少 20 倍,GPU 數量減少一半)、沒有訓練到收斂(機器學習標準做法),並且用於評估的測試用例也是過時的。

在最近一期 CACM 上,Synopsys 的傑出架構師 Igor Markov 也發表了對三篇論文的元分析,包括登上《Nature》的 AlphaChip 原論文、Cheng 等人投稿到 ISPD 的論文以及 Markov 未發表的論文,總結了人們對 AlphaChip 的各種質疑。
圖片
文章地址:https://cacm.acm.org/research/reevaluating-googles-reinforcement-learning-for-ic-macro-placement/

谷歌還拉了一張時間線:
圖片
因此,面對以上質疑,谷歌透過本文進行了回應,確保沒有人因為錯誤的原因而放棄在這個有影響力的領域繼續創新。

Jeff Dean 發推表示,Cheng 等人的論文很大程度上並沒有遵循谷歌的方法,尤其是沒有進行預訓練,在算力、訓練收斂方面也都存在缺陷。
圖片
圖片
Jeff Dean 還認為,Igor Markov 的文章提出了含蓄的指控,完全沒有根據。他很驚訝 Synopsys 竟然想與此事扯上關係,也很驚訝 CACMmag 竟然認為發表這些指控是恰當的。除了兩篇有缺陷、未經同行評議的文章之外,沒有任何證據或技術資料。
圖片
Cheng 等人在復現谷歌方法時的錯誤

Cheng 等人並未按照谷歌在《Nature》中的描述復刻論文中方法,因此他們的結果不好,並不意外。

以下是谷歌指出的主要錯誤:

未對強化學習方法進行預訓練

AlphaChip 的核心優勢在於能夠從先驗中學習,即在正式測試前透過「練習」模組中進行預訓練。去除這一點,相當於評估一個完全不同且效果變差的方法。

下圖 2 中展示了:訓練資料集越大,AlphaChip 在新模組上的佈局效果越好。
圖片
AlphaChip 的原論文中也透過下表展示了對 20 個模組進行預訓練,模型可以掌握更有效的佈局策略的效果。
圖片
此外,AlphaChip 的原論文中多次強調預訓練的重要性。例如下圖所示,在開源的 Ariane RISC-V CPU 上,未預訓練的強化學習策略需要 48 小時才能接近預訓練模型 6 小時的效果。
圖片
AlphaChip 在主資料表中的實驗結果正是基於 48 小時的預訓練,但 Cheng 等人沒有進行任何預訓練。這意味著強化學習模型從未接觸過晶片,需要從零開始在每個測試案例上學習佈局。

這就像對未見過圍棋對局的 AlphaGo,卻得出了 AlphaGo 不擅長下圍棋的結論。

為此,Cheng 等人在論文中指出,谷歌開源的內容不支援復現預訓練。但預訓練僅需執行多個案例的訓練過程,開源的資料一直支援預訓練。
圖片
在 Cheng 等人的論文中稱,截至目前,對 AlphaChip《Nature》論文和 CT 框架的資料和程式碼都未完全公開,因此,評估遇到了阻礙

用的計算資源少了一個數量級

強化學習經驗收集器比 Nature 論文中少 20 倍 (26 個 VS 512 個),GPU 數量也少一半 (8 個 VS 16 個)。計算資源變少往往需要更長的訓練時間才能達到相同的效果。
圖片
根據另一篇復現 AlphaChip 的論文《Scalability and Generalization of Circuit Training for Chip Floorplanning》,使用更多 GPU 進行訓練可以加速收斂。

如果 Cheng 等人能夠按照 AlphaChip 原論文中的描述配置實驗,其結果可能會有所改善。

沒有訓練到收斂

眾所周知,沒訓練到收斂會顯著影響模型效能。

從 Cheng 等人的專案網站,可以找到四個模組的收斂曲線(Ariane-GF12、MemPool-NG45、BlackParrot-GF12 和 MemPool-GF12),但在這些模組的訓練中均未達到收斂狀態(他們還沒提供 BlackParrot-NG45 或 Ariane-NG45 的曲線)。
圖片
圖片
對於這四個模組,訓練均在相對較少的步數下被中斷。

在不具代表性且無法復現的基準上進行評估

Cheng 等人使用的基準 (45nm 和 12nm 的節點)與 AlphaChip(7nm 以下的節點)所用的相比,更老更舊,在物理設計上差異顯著。

對於 10nm 的技術節點,多重圖形化技術容易引釋出線擁塞問題。

因此,對於沒那麼先進的技術節點,可能需要調整 AlphaChip 的獎勵函式中的相關元件。

AlphaChip 的研究團隊稱:「我們主要為 7nm、5nm 以及更先進的工藝節點設計,對於前幾代節點,尚未深入研究。但我們歡迎社群在這方面的貢獻!」

此外,Cheng 等人未能或不願提供用於復現其主要資料表中結果的綜合網表。

對此,AlphaChip 的研究團隊稱:「Cheng 等人雖說對我們的方法進行了大規模重現,但是不是復現錯了?我們建議直接使用我們的開原始碼。」

除了在復現谷歌方法時存在錯誤,Cheng 等人還存在一些其他問題,包括如下:
  • 將 AlphaChip 與閉源商業自動佈局器做對比;

  • 在調整標準單元設計時,對初始佈局進行了人為「消融」;

  • 有缺陷的相關性研究;

  • 對谷歌工程師驗證的錯誤宣告。

Cheng 等人聲稱,谷歌的代理成本與最終指標沒有很好的相關性,但他們自己的相關性研究實際上表明,總體代理成本與除標準單元面積之外的所有最終指標之間存在微弱但正相關的相關性。具體如下圖 6 所示。
圖片
最後,谷歌表示 AlphaChip 完全開源,他們開源了一個軟體儲存庫,以完全復現《Nature》論文中描述的方法。RL 方法的每一行都可以免費檢查、執行或修改,並且提供原始碼或二進位制檔案來執行所有預處理和後處理步驟。
圖片
GitHub 地址:https://github.com/google-research/circuit_training

更多回應細節請參閱原論文。

相關文章