揭秘高通AI的軟硬件殺手锏。編輯 | GACS
9月14日-15日,2023全球AI芯片峰會(huì)(GACS 2023)在深圳市南山區(qū)圓滿舉行。在首日主題演講開(kāi)幕式上,高通AI產(chǎn)品技術(shù)中國(guó)區(qū)負(fù)責(zé)人萬(wàn)衛(wèi)星分享了主題為《終端側(cè)AI是AI的未來(lái)》的主題演講。萬(wàn)衛(wèi)星著重分享了高通對(duì)生成式AI未來(lái)發(fā)展趨勢(shì)的觀察:隨著云端處理生成式AI的成本不斷提升,未來(lái)云經(jīng)濟(jì)將難以支撐生成式AI的規(guī)?;l(fā)展。此外,基礎(chǔ)模型正在向多模態(tài)擴(kuò)展,模型能力越來(lái)越強(qiáng)大,而垂直領(lǐng)域模型的參數(shù)量也正在變得越來(lái)越小。未來(lái),豐富的生成式AI模型將在終端側(cè)運(yùn)行,讓大眾享受到生成式AI帶給生活、工作、娛樂(lè)上的變革。以下為萬(wàn)衛(wèi)星的演講實(shí)錄:尊敬的各位嘉賓,各位同行,大家上午好!很榮幸作為高通中國(guó)的代表參加這次峰會(huì)并進(jìn)行演講,我非常期待能跟各位一起共同推動(dòng)AI產(chǎn)業(yè)在中國(guó)的繁榮發(fā)展。今天我給大家?guī)?lái)的演講主題是終端AI是AI的未來(lái)。
01.終端側(cè)AI加速落地高通已深耕端側(cè)AI多年
隨著去年Stable Diffusion、Midjourney和GPT的火爆,生成式AI的概念在以指數(shù)速度在我們普通大眾中普及。前面有嘉賓也分享了,ChatGPT是有史以來(lái)最快的,只花了兩個(gè)月的時(shí)間就擁有了1億使用者的應(yīng)用。回到這張膠片,雖然我在這里列舉的多數(shù)是圖片相關(guān)的生成式AI應(yīng)用,但是我們也知道生成式AI應(yīng)用不僅僅是局限于圖像,還包括文字生成文字、圖片生成圖片,甚至包括文字生成代碼、音樂(lè),圖片生成視頻,等等。我們看到現(xiàn)在的基礎(chǔ)大模型都在朝多模態(tài)模型轉(zhuǎn)變,我們認(rèn)為這將深刻影響到我們的生活、工作和娛樂(lè)方式。為了讓普通大眾能夠更方便地享受到生成式AI,生成式AI需要在終端側(cè)運(yùn)行,這也是高通公司努力推動(dòng)的一個(gè)方向。我們認(rèn)為數(shù)據(jù)在哪里,AI的推理就應(yīng)該在哪里。這個(gè)正確的地方,就是在終端側(cè)。跟云端相比,端側(cè)的優(yōu)勢(shì)包括成本、能耗、可靠性、時(shí)延和性能,還有非常重要的隱私和安全,因?yàn)樗袛?shù)據(jù)都保留在終端,不會(huì)上傳到任何云端。除此之外,我們還可以根據(jù)端側(cè)的信息為不同的用戶提供定制化、個(gè)性化的服務(wù),所有的這些服務(wù)都不依賴于任何網(wǎng)絡(luò)連接。對(duì)于一些有著上千億參數(shù),只能在云端運(yùn)行的大模型,高通的5G技術(shù)也能夠幫助我們充分利用云端的算力,提高我們?cè)诙藗?cè)的AI體驗(yàn)。在今年2月份的世界移動(dòng)通信大會(huì)上,我們基于第二代驍龍8的終端演示了全球首個(gè)在安卓手機(jī)上運(yùn)行Stable Diffusion的終端側(cè)演示,通過(guò)高通全棧式AI對(duì)Stable Diffusion這樣一個(gè)超過(guò)10億參數(shù)的文生圖大模型的優(yōu)化,我們可以15秒內(nèi)完成20步推理,輸出一張512*512的圖片。今年6月份,同樣也是基于第二代驍龍8,我們完成了全球最快的手機(jī)上運(yùn)行ControlNet終端側(cè)演示,ControlNet是一個(gè)參數(shù)量比Stable Diffusion更大的圖生圖大語(yǔ)言模型,用戶可以輸入一些文本,同時(shí)選擇輸入你日常拍攝的一張普通照片。比如說(shuō)現(xiàn)在展示的拍了一張花瓶的照片,通過(guò)ControlNet得到一張具有文藝復(fù)興時(shí)期作品風(fēng)格的輸出照片。當(dāng)然,你也可以用它做其他的事情,比如對(duì)旅游照片做背景切換或者構(gòu)圖等等。
02.生成式AI發(fā)展三大趨勢(shì)終端側(cè)AI勢(shì)不可擋
下面我想談一談我們觀察到的,生成式AI當(dāng)前的發(fā)展趨勢(shì)。第一個(gè)趨勢(shì),生成式AI的成本。我們這里舉了一個(gè)例子,單就網(wǎng)絡(luò)搜索為例,使用生成式AI的新技術(shù)跟傳統(tǒng)的辦法相比,每次搜索的成本提升10倍??紤]到還有各種各樣的生成式AI應(yīng)用正在涌現(xiàn),以及全球數(shù)十億的用戶,顯而易見(jiàn),云經(jīng)濟(jì)將難以支撐生成式AI的規(guī)?;l(fā)展。第二個(gè)趨勢(shì),我前面也提到,現(xiàn)在數(shù)據(jù)的模態(tài)非常多,有文本、圖像,音樂(lè)、語(yǔ)音等等,基礎(chǔ)模型正在向多模態(tài)擴(kuò)展,也就是說(shuō)用戶可以隨意輸入任意模態(tài)的數(shù)據(jù),可以得到與之對(duì)應(yīng)的任意模態(tài)的輸出數(shù)據(jù),也就是所謂的“X to X”。第三個(gè)趨勢(shì),我們能看到現(xiàn)在的基礎(chǔ)模型變得越來(lái)越強(qiáng)大,但同時(shí)垂直領(lǐng)域模型的參數(shù)量變得越來(lái)越小,比如說(shuō)GPT-3總的參數(shù)量在1750億,但是Meta發(fā)布的Llama,包括國(guó)內(nèi)的百川等模型,他們的參數(shù)量要小很多,可能只有70億或者130億。跟大參數(shù)量基礎(chǔ)模型相比,這些相對(duì)較小參數(shù)量的大模型在某些垂直領(lǐng)域,性能依然十分強(qiáng)大,這也是為什么我們認(rèn)為在未來(lái),我們非常有機(jī)會(huì)將這些模型在終端側(cè)部署,讓更廣泛大眾能夠享受到生成式AI給我們的生活、工作、娛樂(lè)帶來(lái)的各種變革。如果我們仔細(xì)看一下不同的這些生成式AI的用例,包括文字生成圖像或?qū)υ挕LP(自然語(yǔ)言處理)、編程、推理甚至包括圖像、視頻理解等等,所有支撐這些AI用例的大模型,它的參數(shù)量在10億-150億之間,這也是為什么我們認(rèn)為在終端側(cè)完全有可能讓這些模型跑起來(lái)。當(dāng)前我們可以支持10億包括15億參數(shù)的大模型在驍龍平臺(tái)支持的終端側(cè)運(yùn)行。未來(lái)幾個(gè)月我們也非常有希望能看到,超過(guò)100億參數(shù)的大模型能夠完整地在驍龍平臺(tái)上跑起來(lái)。我們?cè)诮K端側(cè)通過(guò)不斷提升大模型支持的參數(shù)閾值,讓更多云端的生成式AI用例向邊緣側(cè)遷移。像手機(jī)這樣的終端,它有著相機(jī)、麥克風(fēng)、傳感器、藍(lán)牙、Wi-Fi、調(diào)制解調(diào)器等等能夠提供感知信息的模塊,而這些感知信息可以作為生成式AI輸入提示,讓終端可以提供更個(gè)性化的服務(wù),而不需要通過(guò)任何網(wǎng)絡(luò)連接。但同時(shí)人們可能擔(dān)心,所有的個(gè)性化隱私數(shù)據(jù)當(dāng)作生成式AI的輸入,會(huì)不會(huì)有隱私安全泄露的問(wèn)題?針對(duì)這方面的擔(dān)心,我們認(rèn)為一個(gè)比較好的解決方案,是讓整個(gè)模型完全閉環(huán)跑在終端側(cè),讓所有感知信息、隱私數(shù)據(jù)全部保留在終端側(cè),沒(méi)有任何數(shù)據(jù)可以上云。
03.高通AI引擎成硬件殺手锏多項(xiàng)黑科技實(shí)現(xiàn)能效翻倍
高通之所以能夠支撐這些超過(guò)10億參數(shù),甚至未來(lái)超過(guò)100億參數(shù)量的大模型在終端部署,所依賴的是高通強(qiáng)大的高通AI引擎和統(tǒng)一的技術(shù)路線圖。下面,我會(huì)從硬件和軟件兩個(gè)角度分別跟大家展開(kāi)介紹。第一就是我們的硬件高通AI引擎??梢钥吹?,高通AI引擎既有通用的CPU、GPU硬件加速單元,還有一顆專門(mén)為大算力AI工作負(fù)載而設(shè)計(jì)的高性能AI硬件加速單元Hexagon處理器。在此之上我們還有另外一塊單獨(dú)的超低功耗處理器,高通傳感器中樞,適用于一些始終開(kāi)啟功能,比如相機(jī)、屏幕和語(yǔ)音喚醒等等。這些模塊共同構(gòu)成了一整套異構(gòu)計(jì)算系統(tǒng),同時(shí)結(jié)合我們的異構(gòu)軟件系統(tǒng),能夠充分釋放高通AI引擎的AI加速能力。高通的AI硬件優(yōu)勢(shì)在哪里?我覺(jué)得第一是性能,我們不僅能提供領(lǐng)先的峰值性能,也能提供非常好的能效。我們?cè)诩榷ü南碌男阅茴I(lǐng)先于手機(jī)和PC領(lǐng)域的競(jìng)爭(zhēng)對(duì)手。第二點(diǎn),前面有嘉賓提到,目前大語(yǔ)言模型70%都是基于Transformer,高通在硬件上,也針對(duì)Transformer網(wǎng)絡(luò)架構(gòu)做了專門(mén)的硬件優(yōu)化,重塑了神經(jīng)網(wǎng)絡(luò)架構(gòu),減少算子數(shù)量,引入了先進(jìn)的量化、微切片推理等技術(shù)。微切片推理技術(shù)可以把一個(gè)比較大的模型切成更細(xì)粒度的切片,在更細(xì)粒度的層面上對(duì)整個(gè)算子融合,包括邊緣計(jì)算等做加速,充分利用較大的配套內(nèi)存,提高配套內(nèi)存的使用率,盡量去降低跟DDR的交互。因?yàn)榇蠹抑?,其?shí)在數(shù)據(jù)讀取上,讀取配套內(nèi)存跟讀取DDR,性能大概有1-2個(gè)數(shù)量級(jí)的差異。除此之外,我們還專門(mén)針對(duì)Transformer里面的激活函數(shù)和分組卷積做了專門(mén)的加速。大家都知道神經(jīng)網(wǎng)絡(luò)里面有不同的數(shù)據(jù)類型,這顆Hexagon處理器上有標(biāo)量、向量和張量加速器。尤其是張量加速器,跟上一代產(chǎn)品相比,算力翻倍。另外是量化技術(shù),功耗對(duì)于終端設(shè)備是一個(gè)非常關(guān)鍵的問(wèn)題,所以我們?cè)谧瞿P屯评淼臅r(shí)候,對(duì)模型做量化是一個(gè)非常好的手段。高通此前就提供了對(duì)INT8和INT16的支持,甚至我們支持它們之間的混合量化。有些神經(jīng)網(wǎng)絡(luò)架構(gòu)對(duì)首尾層精度要求比較高,但在中間層對(duì)精度要求沒(méi)那么高,所以我們提出的混合量化,可以針對(duì)某些層用INT16去做量化,對(duì)于精度要求不那么高的,用INT8去做量化。這樣既可以享受到INT8量化帶來(lái)的性能優(yōu)勢(shì),也可以享受到INT16帶來(lái)的精度優(yōu)勢(shì)。在去年年底的驍龍峰會(huì)上,第二代驍龍8宣布首次支持INT4精度量化。INT4量化跟INT8量化相比,可以帶來(lái)60%的功耗節(jié)省或者90%的性能提升。
04.一次開(kāi)發(fā)多端部署打通軟件底層加速生態(tài)擴(kuò)展
前面講的大多數(shù)跟硬件相關(guān),在軟件方面我們推出了高通AI軟件棧(Qualcomm AI Stack),這是一個(gè)跨平臺(tái)、跨終端、跨OS的統(tǒng)一軟件棧,它貫徹了我們的每一條產(chǎn)品線,包括手機(jī),汽車(chē)、PC,還有各種IoT設(shè)備、機(jī)器人等。這張圖就是我們高通AI軟件棧的整體框架。從上往下看,最上面是我們的框架層,我們支持目前主流的框架,包括TensorFlow、PyTorch、ONNX、Keras等等。再往下是Runtimes層,高通有自己的Runtimes,叫高通神經(jīng)網(wǎng)絡(luò)處理SDK,我們的合作伙伴或者開(kāi)發(fā)者可以直接調(diào)用我們的Runtimes。當(dāng)然,我們也支持開(kāi)源的Runtimes,包括像ONNX、Direct ML、TF Lite等等。我們還有更底層的模塊去支持第三方的Runtimes,叫高通AI引擎Direct。第三方Runtimes可以調(diào)用高通AI引擎Direct的接口,充分利用高通AI引擎的AI硬件加速單元來(lái)做推理加速。再往下就是開(kāi)發(fā)者庫(kù)和服務(wù)層,我們提供豐富的加速庫(kù)給到開(kāi)發(fā)者去做調(diào)用。同時(shí),我們還提供編譯器,讓開(kāi)發(fā)者在做模型轉(zhuǎn)化時(shí)對(duì)高通底層的硬件更友好。同時(shí)我們的編譯器也可以支持用戶通過(guò)我們給定的引導(dǎo)去寫(xiě)自己定義的算子。除了編譯器之外,我們還提供比較豐富強(qiáng)大的分析器和調(diào)試器。開(kāi)發(fā)者在做推理部署的時(shí)候會(huì)發(fā)現(xiàn),很多時(shí)候推理性能或者精度不如人意,我們的工具可以告訴開(kāi)發(fā)者整個(gè)推理性能在哪里;網(wǎng)絡(luò)結(jié)構(gòu)、推理結(jié)構(gòu)對(duì)高通硬件是否友好;或者是哪一層引起的精度問(wèn)題,是因?yàn)榱炕粚挷粔颍€是本身的算子在高通HTP實(shí)現(xiàn)的效率不夠好等等。再往下就是我們的系統(tǒng)層。系統(tǒng)層提供了豐富的系統(tǒng)接口,也提供了各種各樣底層的Kernel驅(qū)動(dòng)器。當(dāng)然,我們還提供了一個(gè)仿真支持。如果開(kāi)發(fā)者沒(méi)有拿到高通的平臺(tái)或者開(kāi)發(fā)板,但又想知道整體算法在驍龍平臺(tái)上部署的表現(xiàn)情況或者精度怎么樣,可以用我們的仿真支持,我們有一個(gè)模擬器會(huì)給到大家。再往下就是OS層,高通的產(chǎn)品線非常豐富,OS層支持安卓手機(jī)、平板、PC的Windows系統(tǒng),還有各種IoT設(shè)備采用的Linux或者是CentOS等等,還有我們的QNX。我們把所有的OS都集成在高通AI軟件棧里面,能夠支持高通所有的產(chǎn)品形態(tài)。除此之外,我們還有高通AI模型增效工具包(AIMET),AIMET最主要有兩個(gè)功能,一個(gè)是幫助大家做量化,我們支持PTQ(量化感知訓(xùn)練)和QAT(訓(xùn)練后量化);另外是模型壓縮。總結(jié)一下,高通AI軟件棧是一個(gè)跨平臺(tái)、跨終端、跨OS的統(tǒng)一軟件棧。高通AI軟件棧旨在幫助合作伙伴及開(kāi)發(fā)者在驍龍平臺(tái)上更高效地完成軟件部署,提高它的擴(kuò)展性,也就是所謂的一次開(kāi)發(fā)、多次部署。以上就是我今天演講的全部?jī)?nèi)容,謝謝大家!以上是萬(wàn)衛(wèi)星演講內(nèi)容的完整整理。
*博客內(nèi)容為網(wǎng)友個(gè)人發(fā)布,僅代表博主個(gè)人觀點(diǎn),如有侵權(quán)請(qǐng)聯(lián)系工作人員刪除。