一文看懂地平線如何再造"摩爾定律" ?
3月 25 日,地平線 BPU 算法負(fù)責(zé)人羅恒以《地平線如何追求極致效能?》為題展開(kāi)了一場(chǎng)別開(kāi)生面的線上分享。作為「地平線核心技術(shù)系列公開(kāi)課」的“奠基之課”,羅恒從當(dāng)前 AI 芯片的最大挑戰(zhàn),到 MLperf 的理想性與局限性,再到地平線 BPU(Brain Processing Unit,地平線自研人工智能專用處理器架構(gòu))的演進(jìn)之路娓娓而談,結(jié)合人工智能的發(fā)展趨勢(shì)深度剖析了地平線通過(guò)軟硬結(jié)合挑戰(zhàn)極致效能,再造“摩爾定律”的技術(shù)歷程。
以下為經(jīng)整理后的分享——
01 AI 芯片最大的挑戰(zhàn)自 2015 年起,AI 芯片逐漸成為人們所關(guān)注的趨勢(shì)。產(chǎn)業(yè)參與者們都希望能夠做出極具競(jìng)爭(zhēng)力的芯片,種種挑戰(zhàn)中最大的莫過(guò)于算法發(fā)展快和芯片迭代慢之間的矛盾。以 2016 年 DeepMind 提出的人工神經(jīng)網(wǎng)絡(luò) WaveNet 為例,它能夠模仿出讓真假難辨的人類聲音,但其計(jì)算量之大甚至無(wú)法在當(dāng)時(shí)最強(qiáng)大的 GPU 上實(shí)時(shí)處理,接近一分鐘的延遲讓這項(xiàng)革命性突破始終無(wú)法真正的得到應(yīng)用。2017 年,算法優(yōu)化后的 Paralle WaveNet 讓計(jì)算效率提升了 1000 倍,谷歌將其成功應(yīng)用到谷歌助手。假如某公司在此時(shí)(2017年)準(zhǔn)備推出一款用于嵌入式系統(tǒng)的芯片,使得手機(jī)等移動(dòng)場(chǎng)景也可以應(yīng)用這項(xiàng) AI 成果,是非常合理的選擇。但到了 2018 年,算法又發(fā)生了優(yōu)化,核心計(jì)算方式歷經(jīng) RNN、DalitedCNN 已升級(jí)到了 Spares RNN,讓手機(jī) CPU 也可以運(yùn)行。而 2017 年研發(fā)的芯片,在 2019 年才能面世,這是一個(gè)悲傷的故事,反映了算法快速發(fā)展與芯片迭代較慢之間的矛盾。
呈現(xiàn)快速演進(jìn)的 AI 算法趨勢(shì)
回到地平線的主航道視覺(jué)感知上。2012 年的 AlexNet 在 ImageNet 上的突破, 拉開(kāi)了這一波的 AI 浪潮的序幕,2012 年到 2016 年,各種網(wǎng)絡(luò)出現(xiàn),起初致力于提升 ImageNet,VGG 模型擴(kuò)充過(guò)快受限于 GPU,接下來(lái)的模型開(kāi)始適度的考慮精度和算力的折中,ResNet 開(kāi)始給出擴(kuò)充網(wǎng)絡(luò)算力獲得不同精度的方案。2016 年之后,ImageNet 精度逐漸飽和,計(jì)算效率優(yōu)化得到重視,算法實(shí)現(xiàn)開(kāi)始追求用更少的計(jì)算得到更高的精度,SpueezeNet、MobileNet、ShuffleNet就是這一時(shí)期的“新”卷積神經(jīng)網(wǎng)絡(luò)代表。同時(shí)也開(kāi)始了使用機(jī)器學(xué)習(xí)方法自動(dòng)化搜索網(wǎng)絡(luò),以 NASNet 為代表,但主要還是在搜索網(wǎng)絡(luò)子結(jié)構(gòu)。到了 2019 年,卷積神經(jīng)網(wǎng)絡(luò)架構(gòu)演進(jìn)逐步收斂,子結(jié)構(gòu)收斂于 MobileNet v2 的子結(jié)構(gòu),模型擴(kuò)充方法則來(lái)自于 EfficientNet 的 Compound scaling method。以上 AI 算法的演進(jìn)趨勢(shì)對(duì) AI 芯片廠商之間的競(jìng)爭(zhēng)產(chǎn)生了極為重要的影響:固然芯片架構(gòu)設(shè)計(jì)能力,芯片SOC 的能力非常重要,但是由于算法在不斷的變化,如何能夠使得設(shè)計(jì)出來(lái)的芯片在面世的時(shí)候還能夠符合算法的最新的進(jìn)展,在現(xiàn)在乃至可預(yù)見(jiàn)的未來(lái)都將是 AI 芯片競(jìng)爭(zhēng)的關(guān)鍵點(diǎn)。
2什么是更好的 AI 芯片?算法演進(jìn)與芯片迭代的脫節(jié)是擺在面前的挑戰(zhàn),那么,如何為 AI 芯片賽道上的玩家設(shè)立清晰的目標(biāo)?如何拉通研究與市場(chǎng),拉通工程與開(kāi)發(fā),并通過(guò)最優(yōu)代表性的任務(wù)在實(shí)際場(chǎng)景中的測(cè)試反映機(jī)器學(xué)習(xí)算法的演進(jìn)呢?目前通用的基準(zhǔn)測(cè)試是 MLPerf。但事實(shí)上,2019 年 MLPerf Inference V0.5 使用的分類模型仍是 ResNet50 和 MobileNet V1,檢測(cè)模型則是 MobileNet V1和RerNet34。從這一點(diǎn)來(lái)看,MLPerf Inference 盡管是剛剛出現(xiàn)的,但由于采用相對(duì)較老的模型其已經(jīng)落后于算法進(jìn)展兩年了。此外,由于量化模型的普及型,MLPerf 希望設(shè)計(jì)統(tǒng)一的標(biāo)準(zhǔn),但卻因?yàn)榫葐?wèn)題最終選擇降低標(biāo)準(zhǔn)(MobileNet)。提交者和標(biāo)準(zhǔn)設(shè)計(jì)方之間的博弈,使得任務(wù)往往沒(méi)有辦法像預(yù)期那樣更新模型。但地平線始終認(rèn)為,評(píng)估 AI 芯片的真實(shí)效能需要與時(shí)俱進(jìn)的標(biāo)準(zhǔn)。因此為了更嚴(yán)格的測(cè)試真實(shí)效能,選用了目前如前所述的視覺(jué)領(lǐng)域最高效的 MobileNet V2 結(jié)構(gòu)(EfficientNet 并不改變計(jì)算方式,其中的 SE 結(jié)構(gòu)也被 EfficientNetTPU 證明并不是關(guān)鍵因素)。實(shí)測(cè)表明,工藝領(lǐng)先兩代的兩款競(jìng)品,在 MobileNet V2 的幀率上顯著落后于地平線征程二代芯片。
在當(dāng)前視覺(jué)領(lǐng)域最高效的 MobileNet V2 結(jié)構(gòu)上,地平線與征程二代與兩款競(jìng)品的測(cè)試結(jié)果
除此之外,想要實(shí)現(xiàn)極致能效還需要考慮到其他因素。對(duì)于芯片來(lái)說(shuō),功耗最大的地方并不在于計(jì)算,還在于數(shù)據(jù)的搬運(yùn),如何能夠減少 DDR (Double Data Rate SDRAM,雙倍速率同步動(dòng)態(tài)隨機(jī)存儲(chǔ)器)的吞吐,其實(shí)是降低功耗的一個(gè)關(guān)鍵的地方。這方面地平線也做了針對(duì)性的優(yōu)化,在幀率超過(guò)競(jìng)品芯片的情況下只有競(jìng)品 1/4 DDR 吞吐率。從而,一方面用戶可以使用更低成本的DDR,另一方面則是我們不可能假設(shè)用戶加速模型的時(shí)候是 DDR 獨(dú)占,一定需要和 ISP、Codec 以及各種應(yīng)用一起使用帶寬,征程二代的低 DDR 吞吐率使得用戶可以充分使用算力而不受限于 DDR 帶寬。
3.BPU 軟硬結(jié)合打造極致效能回到設(shè)計(jì)征程二代 BPU 的2017年,我們觀察到學(xué)術(shù)界的兩個(gè)信號(hào),Xeception和MobileNet 分別使用了 Depthwise ConvoluTIon 在 ImageNet 高精度和中低精度都取得了很好的效率。
2017年,學(xué)術(shù)界的特殊信號(hào)——Depthwise ConvoluTIon
我們迅速在地平線關(guān)心的視覺(jué)任務(wù)、自由數(shù)據(jù)上做了驗(yàn)證。證明了 Depthwise ConvoluTIon 帶來(lái)的效率提升。進(jìn)而我們做了初步的優(yōu)化,8bit 量化了 Depthwise ConvoluTIon 模型,量化模型精度》浮點(diǎn)模型精度*0.99(半年后Google量化論文發(fā)表,但精度并不理想);嘗試了使用1x1 擴(kuò)大 Depthwise Convolution 的 kernel 數(shù)目同時(shí)減少1x1 convolution引入的計(jì)算量(與一年后發(fā)表的MobileNet v2相似);嘗試了不同kernel size,發(fā)現(xiàn)擴(kuò)大 kernel size 到 7 可以提升精度在只付出很小的計(jì)算代價(jià)下(與兩年后的 Mixconv 論文一致)。在完成初步驗(yàn)證和優(yōu)化之后,我們做了 BPU 的 FPGA 版本,演化成為后來(lái)的 Matrix(曾獲 2019 年 CES 創(chuàng)新獎(jiǎng),這也是車輛智能和自動(dòng)駕駛技術(shù)分類獎(jiǎng)項(xiàng)下唯一獲此殊榮的中國(guó)產(chǎn)品),實(shí)車測(cè)試了我們的所有方案。
軟硬結(jié)合,挑戰(zhàn)極致效能
以上的驗(yàn)證、優(yōu)化、實(shí)際應(yīng)用場(chǎng)景打磨,為我們的架構(gòu)設(shè)計(jì)提供了參考,使得我們從一開(kāi)始就面向未來(lái)的算法趨勢(shì)進(jìn)行優(yōu)化,在今天也得到了證明。
地平線 BPU 研發(fā)路線圖
可以說(shuō),地平線的最大特點(diǎn),就是對(duì)關(guān)鍵算法的發(fā)展趨勢(shì)進(jìn)行預(yù)判、在最重要的場(chǎng)景中垂直打穿,前瞻性地將其計(jì)算特點(diǎn)融入到架構(gòu)設(shè)計(jì)當(dāng)中,使得 AI 處理器經(jīng)過(guò)兩年的研發(fā),在推出的時(shí)候,仍然能夠很好地適應(yīng)最新的主流算法,同時(shí)保證滿足最關(guān)鍵應(yīng)用的需求。因此,和其他典型的 AI 處理器相比,地平線的 AI 處理器,隨著算法的演進(jìn)趨勢(shì),始終能夠保持相當(dāng)高的有效利用率,從而真正意義上受益于算法創(chuàng)新帶來(lái)的優(yōu)勢(shì)。技術(shù)先發(fā)優(yōu)勢(shì)推動(dòng)商業(yè)化進(jìn)程,領(lǐng)先的商業(yè)落地探索又反哺技術(shù)進(jìn)步。在 AI 芯片這條硬科技創(chuàng)新道路上,地平線將繼續(xù)堅(jiān)持深耕“算法+芯片+工具鏈”基礎(chǔ)技術(shù)平臺(tái)。預(yù)計(jì)今年內(nèi),地平線將會(huì)推出新一代車規(guī)級(jí) AI 芯片,以人工智能賦能萬(wàn)物,讓每個(gè)人的生活更安全、更美好!
近期,地平線推出了「地平線核心技術(shù)系列公開(kāi)課」,希望通過(guò)在線分享的形式讓更多的人了解 AI 芯片的前沿知識(shí),傳播技術(shù)的力量!下一期技術(shù)公開(kāi)課,地平線將進(jìn)一步解讀“天工開(kāi)物”AI開(kāi)發(fā)平臺(tái)如何開(kāi)放賦能,歡迎掃碼報(bào)名。