英特爾ARM英偉達力推規範草案,想統一AI數據交換格式
芯片公司英特爾、ARM和英偉達共同發布了一項所謂人工智能通用交換格式的規範草案,目的是使機器處理人工智能的過程速度更快、更高效。英特爾、ARM和英偉達在草案中推薦人工智能係統使用8位的FP8浮點處理格式。他們表示,FP8浮點處理格式有可能優化硬件內存使用率,從而加速人工智能的發展。這種格式同時適用於人工智能訓練和推理,有助於開發速度更快、更高效的人工智能係統。
圖1 – 語言模型AI 訓練(來自:NVIDIA)
在開發人工智能係統時,數據科學家面臨的關鍵問題不僅是收集大量數據來訓練系統。此外還需要選擇一種格式來表達系統權重,權重是人工智能從訓練數據中學習到影響系統預測效果的重要因素。權重使得GPT-3這樣的人工智能係統能夠從一個長句子提示自動生成整個段落,還能讓DALL-E 2人工智能基於某個特定標題生成逼真的肖像畫。
人工智能係統權重常用的格式有半精度浮點數FP16和單精度浮點數FP32,前者使用16位數據表示系統權重,後者則使用32位。半精度浮點數以及更低精度浮點數能減少了訓練和運行人工智能係統所需的內存空間,同時還加快計算速度,甚至減少佔用的帶寬資源和耗電量。但因為位數較單精度浮點數更少,準確性會有所降低。
然而,包括英特爾、ARM和英偉達在內的許多行內公司都將8位的FP8浮點處理格式作為最佳選擇。英偉達產品營銷總監薩沙·納拉西姆漢(Shar Narasimhan)在一篇博客文章中指出,FP8浮點處理格式在計算機視覺和圖像生成系統等用例中的精度與半精度浮點數相當,同時有“明顯”加速。
圖2 – 語言模型AI 推理
英偉達、ARM和英特爾表示,他們將讓FP8浮點處理格式成為一種開放標準,其他公司無需許可證即可使用。三家公司在一份白皮書對FP8進行了詳細描述。納拉西姆漢表示,這些規範都將提交給技術標準化組織IEEE,看FP8格式能否成為人工智能行業的通用標準。
納拉西姆漢說:“我們相信,一個通用的交換格式將帶來硬件和軟件平台的快速進步,提高互操作性,從而推進人工智能計算的進步。”
當然,三家公司之所以不遺餘力推動FP8格式成為通用交換格式也是出於自身研究的考慮。英偉達的GH100 Hopper架構已經實現對FP8格式的支持,英特爾的Gaudi2人工智能訓練芯片組也支持FP8格式。
但通用的FP8格式也會使SambaNova、AMD、Groq、IBM、Graphcore和Cerebras等競爭對手受益,這些公司都曾在開發人工智能係統時試驗或採用FP8格式。人工智能係統開發商Graphcore聯合創始人兼首席技術官西蒙·諾爾斯(Simon Knowles)在今年7月份的一篇博客文章中寫道,“8位浮點數的出現在處理性能和效率方面為人工智能計算帶來了巨大優勢”。諾爾斯還稱,這是行業確定“單一開放標準”的“一個機會”,比採取多種格式相互競爭要好得多。