新智元報道
編輯:好困
【新智元導讀】英偉達:大語言模型或將全面加持芯片設計全流程!
在剛剛開幕的芯片型ICCAD 2023大會上,英偉達團隊展示了用AI模型測試芯片,設計pg電子·(中國)娛樂官方網站引發了業界關注。英偉言模
眾所周知,達推大語半導體設計是出定一項極具挑戰性的工作。
在顯微鏡下,專攻制版諸如英偉達H100這樣的芯片型頂級芯片,看起來就像是設計一個精心規劃的大都市,這其中的英偉言模數百億個晶體管則連接在比頭發絲還要細一萬倍的街道上。
為了建造這樣一座數字巨城,需要多個工程團隊長達兩年時間的出定合作。
其中,專攻制版一些小組負責確定芯片的芯片型整體架構,一些小組負責制作和放置各種超小型電路,設計還有一些小組負責進行測試。每項工作都需要專門的方法、軟件程序和計算機語言。
ChipNeMo:英偉達版「芯片設計」大模型
最近,來自英偉達的pg電子·(中國)娛樂官方網站研究團隊開發了一種名為ChipNeMo的定制LLM,以公司內部數據為基礎進行訓練,用于生成和優化軟件,并為人類設計師提供幫助。
論文地址:https://research.nvidia.com/publication/2023-10_chipnemo-domain-adapted-llms-chip-design
研究人員并沒有直接部署現成的商業或開源LLM,而是采用了以下領域適應技術:自定義分詞器、領域自適應持續預訓練(DAPT)、具有特定領域指令的監督微調(SFT),以及適應領域的檢索模型。
結果表明,與通用基礎模型相比(如擁有700億個參數的Llama 2),這些領域適應技術能夠顯著提高LLM的性能——
不僅在一系列設計任務中實現了類似或更好的性能,而且還使模型的規??s小了5倍之多(定制的ChipNeMo模型只有130億個參數)。
具體來說,研究人員在三種芯片設計應用中進行了評估:工程助理聊天機器人、EDA腳本生成,以及錯誤總結和分析。
其中,聊天機器人可以回答各類關于GPU架構和設計的問題,并且幫助不少工程師快速找到了技術文檔。
代碼生成器已經可以用芯片設計常用的兩種專業語言,創建大約10-20行的代碼片段了。
代碼生成器
而最受歡迎分析工具,可以自動完成維護更新錯誤描述這一非常耗時的任務。
對此,英偉達首席科學家Bill Dally表示,即使我們只將生產力提高了5%,也是一個巨大的勝利。
而ChipNeMo,便是LLM在復雜的半導體設計領域,邁出的重要的第一步。
這也意味著,對于高度專業化的領域,完全可以利用其內部數據來訓練有用的生成式AI模型。
數據
為了構建領域自適應預訓練(DAPT)所需的數據,研究人員同時結合了英偉達自己的芯片設計數據,以及其他公開可用的數據。
經過采集、清洗、過濾,內部數據訓練語料庫共擁有231億個token,涵蓋設計、驗證、基礎設施,以及相關的內部文檔。
就公共數據而言,研究人員重用了Llama2中使用的預訓練數據,目的是在DAPT期間保留一般知識和自然語言能力。
在代碼部分,則重點關注了GitHub中與芯片設計相關的編程語言,如C++、Python和Verilog。
在監督微調 (SFT) 過程中,研究人員選取了可商用的通用聊天SFT指令數據集,并制作了的特定領域指令數據集。
為了快速、定量地評估各種模型的準確性,研究人員還構建了專門的評估標準——AutoEval,形式類似于MMLU所采用的多選題。
訓練
ChipNeMo采用了多種領域適應技術,包括用于芯片設計數據的自定義分詞器、使用大量領域數據進行領域自適應預訓練、使用特定領域任務進行監督微調,以及使用微調檢索模型進行檢索增強。
首先,預訓練分詞器可以提高特定領域數據的分詞效率,保持通用數據集的效率和語言模型性能,并最大限度地減少重新訓練/微調的工作量。
其次,研究人員采用了標準的自回歸語言建模目標,并對特定領域的數據進行了更深入的預訓練。
在DAPT之后,則進一步利用監督微調(SFT)來實現模型的對齊。
針對大模型的幻覺問題,研究人員選擇了檢索增強生成(RAG)的方法。
研究人員發現,在RAG中使用與領域相適應的語言模型可以顯著提高特定領域問題的答案質量。
此外,使用適量的特定領域訓練數據對現成的無監督預訓練稠密檢索模型進行微調,可顯著提高檢索準確率。
結果
首先,自適應的分詞器可以在各種芯片設計數據集中,將分詞效率提高1.6%至3.3%。
其次, ChipNeMo模型在芯片設計領域基準AutoEval和開放領域學術基準上的測試結果顯示:
1. DAPT模型在開放領域學術基準上的準確性略有下降。
2. DAPT對領域本身的任務產生了積極的影響。其中,模型對于內部設計和電路設計的知識水平顯著提高。
3. 使用規模更大、性能更強的基礎模型,可以在特定領域任務中獲得更好的結果。
4. DAPT對域內任務的改進與模型大小呈正相關,較大的模型在DAPT后對特定領域任務性能的提升更為明顯。
所有模型均使用128個A100 GPU進行訓練。研究人員估算了與ChipNeMo領域自適應預訓練相關的成本,如下表所示。
值得注意的是,DAPT占從頭開始預訓練基礎模型總成本的不到1.5%。
RAG和工程助理聊天機器人
研究人員對使用和不使用RAG的多個ChipNeMo模型和Llama 2模型進行了評估,結果如圖8所示:
- RAG可以大幅提升模型的得分,即便RAG未命中,分數通常也會更高。
- ChipNeMo-13B-Chat獲得的分數比類似規模的Llama2-13B-Chat更高。
- 使用RAG的ChipNeMo-13B-Chat與使用RAG的Llama2-70B-Chat獲得了相同的分數(7.4)。當RAG命中時,Llama2-70B-Chat得分更高;但RAG未命中時,具有領域適應的ChipNeMo表現更好。
- 領域SFT使ChipNeMo-13B-Chat的性能提高了0.28(有 RAG)和0.33(無 RAG)。
EDA腳本生成
從圖9中可以看出,DAPT補足了模型對底層API的知識,而領域域SFT進一步改善了結果。
一個有趣的結果是,LLaMA2-70B似乎可以借助卓越的通用Python編碼能力,來解決尚未接受過訓練的新問題。但由于它幾乎沒有接觸過Tcl代碼,因此在該工具上的表現較差。
而這也凸顯了DAPT在小眾或專有編程語言方面的優勢。
Bug總結與分析
結果如圖10所示,ChipNeMo-13B-Chat模型在所有三項任務上均優于基本LLaMA2-13B-Chat模型,分別將技術總結、管理總結和任務推薦的分數提高了0.82、1.09和0.61。
此外,領域SFT也顯著提高了模型在管理總結和任務分配方面的性能。
不過,Llama2-70B-Chat模型在所有任務上表現都要比ChipNeMo-13B更加出色。
雖然較大的Llama2 70B有時也可以達到與ChipNeMo相似的精度,如圖8、9和10所示。但考慮較小規模的模型所帶來的成本效益,也同樣重要。
比如,與Llama2 70B不同,英偉達的ChipNeMo 13B可以直接加載到單個A100 GPU的顯存中,且無需任何量化。這使得模型的推理速度可以得到大幅提升。與此同時,相關研究也表明,8B模型的推理成本就要比62B模型低8-12倍。
因此,在生產環境中決定使用較大的通用模型還是較小的專用模型時,必須考慮以下標準:
- 訓練和推理權衡:
較小的領域適應模型可以媲美更大的通用模型。雖然領域適應會產生額外的前期成本,但使用較小的模型可以顯著降低運營成本。
- 用例獨特性:
從圖6、9和10中可以看出,領域適應模型模型在很少出現在公共領域的任務中表現極佳,如用專有語言或庫編寫代碼。而對于通用大模型來說,即使提供了精心挑選的上下文,也很難在這種情況下與領域適應模型的準確性相媲美。
- 領域數據可用性:
當存在大量訓練數據(數十億訓練token)時,領域適應效果最好。對于積累了大量內部文檔和代碼的公司和項目來說,情況通常如此,但對于較小的企業或項目則不一定。
- 用例多樣性:
雖然可以針對特定任務微調通用模型,但領域適應模型可以適用于領域中的各種任務。
總的來說,領域自適應預訓練模型(如ChipNeMo-13B-Chat)通??梢匀〉帽绕浠A模型更好的結果,并且可以縮小與規模更大的模型(如Llama2 70B)之間的差距。
參考資料:
https://blogs.nvidia.com/blog/2023/10/30/llm-semiconductors-chip-nemo/
https://spectrum.ieee.org/ai-for-engineering
下一篇:媒體人:蓉城坐五探四望三想亞冠 想創歷史最好成績必須贏梅州
上一篇:大將之風!生涯前6場命中13+三分并有13+蓋帽 霍姆格倫成歷史首人