最近,以ChatGPT為首的生成類模型已經(jīng)成為了人工智能的新熱點,硅谷的微軟、谷歌等都紛紛大舉投資此類技術(微軟100億美元入股ChatGPT背后的OpenAI,谷歌也于近日發(fā)布了自研的BARD模型),而在中國以百度等為代表的互聯(lián)網(wǎng)科技公司也紛紛表示正在研發(fā)此類技術并且將于近期上線。
以ChatGPT為代表的生成類模型有一個共同的特點,就是使用了海量數(shù)據(jù)做預訓練,并且往往會搭配一個較為強大的語言模型。語言模型主要的功能是從海量的現(xiàn)有語料庫中進行學習,在經(jīng)過學習之后可以理解用戶的語言指令,或者更進一步根據(jù)用戶的指令去生成相關的文字輸出。
生成類模型大致可以分成兩大類,一類是語言類生成模型,另一類是圖像類生成模型。語言類生成模型以ChatGPT為代表,如前所述其語言模型不僅可以學習理解用戶指令的意義(例如,“寫一首詩,李白風格的”),而且在經(jīng)過海量數(shù)據(jù)訓練之后,還能夠根據(jù)用戶的指令生成相關的文字(在上例中就是寫一首李白風格的詩)。這意味著ChatGPT需要有一個足夠大的語言模型(Large Language Model,LLM)來理解用戶的語言,并且能有高質(zhì)量的語言輸出——例如該模型必須能理解如何生成詩歌,如何生成李白風格的詩歌等等。這也意味著語言類生成式人工智能中的大語言模型需要非常多的參數(shù),才能完成這類復雜的學習并且記住如此多的信息。以ChatGPT為例,其參數(shù)量高達1750億(使用標準浮點數(shù)的話會占用700GB的存儲空間),其語言模型之“大”可見一斑。
另一類生成類模型是以擴散模型(Diffusion)為代表的圖像類生成模型,典型的模型包括來自OpenAI的Dalle,谷歌的ImaGen,以及目前最熱門的來自Runway AI的Stable Diffusion。這類圖像類生成模型同樣會使用一個語言模型來理解用戶的語言指令,之后根據(jù)這個指令來生成高質(zhì)量的圖像。與語言類生成模型不同的是,這里使用到的語言模型主要用語理解用戶輸入,而無需生成語言輸出,因此參數(shù)量可以小不少(在幾億數(shù)量級),而圖像的擴散模型的參數(shù)量相對而言也不大,總體而言參數(shù)量大約在幾十億數(shù)量級,但是其計算量并不小,因為生成的圖像或者視頻的分辨率可以很高。
生成類模型通過海量數(shù)據(jù)訓練,可以產(chǎn)生前所未有的高質(zhì)量輸出,目前已經(jīng)有了不少明確的應用市場,包括搜索、對話機器人、圖像生成和編輯等等,未來可望會得到更多的應用,這也對于相關的芯片提出了需求。
生成類模型對于芯片的需求
如前所述,以ChatGPT為代表生成類模型需要在海量的訓練數(shù)據(jù)中進行學習,才能實現(xiàn)高質(zhì)量的生成輸出。為了支持高效率訓練和推理,生成類模型對于相關芯片也有自己的需求。
首先就是對于分布式計算的需求。ChatGPT這類語言類生成模型的參數(shù)量高達千億,幾乎不可能使用單機訓練和推理,而必須大量使用分布式計算。在進行分布式計算時,對于機器之間的數(shù)據(jù)互聯(lián)帶寬,以及計算芯片對于這類分布式計算(例如RDMA)就有了很大的需求,因為很多時候任務的瓶頸可能并不在計算,而是在數(shù)據(jù)互聯(lián)上面,尤其是在此類大規(guī)模分布式計算中,芯片對于分布式計算的高效率支持更加成為了關鍵。
其次是內(nèi)存容量和帶寬。雖然對于語言類生成模型分布式訓練和推理不可避免,但是每個芯片的本地內(nèi)存和帶寬也將很大程度上決定單個芯片的執(zhí)行效率(因為每個芯片的內(nèi)存都被使用到了極限)。對于圖像類生成模型來說,可以把模型(20GB左右)都放在芯片的內(nèi)存中,但是隨著未來圖像生成類模型的進一步演進,它對于內(nèi)存的需求可能也會進一步提升。在這個角度來看,以HBM為代表的超高帶寬內(nèi)存技術將會成為相關加速芯片的必然選擇,同時生成類模型也會加速HBM內(nèi)存進一步增大容量和增大帶寬。除了HBM之外,CXL等新的存儲技術加上軟件的優(yōu)化也有將在這類應用中增加本地存儲的容量和性能,估計會從生成類模型的崛起中獲得更多的工業(yè)界采用。
最后是計算,無論是語言類還是圖像類生成類模型的計算需求都很大,而圖像類生成模型隨著生成分辨率越來越高以及走向視頻應用,對于算力的需求可能會大大提升——目前的主流圖像生成模型的計算量在20 TFlops左右,而隨著走向高分辨率和圖像,100-1000 TFLOPS的算力需求很有可能會是標準。
綜上所述,我們認為生成類模型對于芯片的需求包括了分布式計算,存儲以及計算,可謂是涉及了芯片設計的方方面面,而更重要的是如何把這些需求都以合理的方法結(jié)合到一起來確保某一個單獨的方面不會成為瓶頸,這也將會成為一個芯片設計系統(tǒng)工程的問題。
GPU和新AI芯片,誰更有機會
生成式模型對于芯片有了新的需求,對于GPU(以Nvidia和AMD為代表)和新AI芯片(以Habana,GraphCore為代表),誰更有機會能抓住這個新的需求和市場?
首先,從語言類生成模型來看,由于參數(shù)量巨大,需要很好的分布式計算支持,因此目前在這類生態(tài)上已經(jīng)有完整布局的GPU廠商更有優(yōu)勢。這是一個系統(tǒng)工程問題,需要完整的軟件和硬件解決方案,而在這個方面,Nvidia已經(jīng)結(jié)合其GPU推出了Triton解決方案。Triton支持分布式訓練和分布式推理,可以把一個模型分成多個部分到不同的GPU上去處理,從而解決參數(shù)量過大一個GPU的主存無法容納的問題。未來無論是直接使用Triton,還是在Triton的基礎上做進一步開發(fā),都是擁有完整生態(tài)的GPU更加方便一點。從計算上來看,由于語言類生成模型的主要計算就是矩陣計算,而矩陣計算本身就是GPU的強項,因此從這一點來看新的AI芯片相比GPU的優(yōu)勢并不明顯。
從圖像類生成模型來看,這類模型的參數(shù)量雖然也很大但是比語言類生成模型要小一到兩個數(shù)量級,此外其計算中還是會大量用到卷積計算,因此在推理應用中,如果能做非常好的優(yōu)化的話,AI芯片可能有一定機會。這里的優(yōu)化包括大量的片上存儲來容納參數(shù)和中間計算結(jié)果,對于卷積以及矩陣運算的高效支持等。
總體來說,目前這一代AI芯片在設計的時候主要針對的是更小的模型(參數(shù)量在億級別,計算量在1TOPS級別),而生成模型的需求相對而言還是比原來的設計目標要大不少。GPU在設計時以效率為代價換取了更高的靈活度,而AI芯片設計則是反其道而行之,追求目標應用的效率,因此我們認為在未來一兩年內(nèi),GPU仍將會在此類生成式模型加速中獨占鰲頭,但是隨著生成式模型設計更加穩(wěn)定,AI芯片設計有時間能追趕上生成式模型的迭代后,AI芯片有機會從效率的角度在生成式模型領域超越GPU。
敬請關注電子技術應用2023年2月22日==>>商業(yè)航天研討會<<