一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內(nèi)不再提示

高效打包邊緣人工智能神經(jīng)網(wǎng)絡模型

CEVA ? 來源:未知 ? 2023-11-09 10:15 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

嵌入式設計中常常需要將應用程序打包到有限的片上內(nèi)存中,現(xiàn)在,將人工智能神經(jīng)網(wǎng)絡模型壓縮到有限的存儲器中也是如此。對于傳統(tǒng)軟件,就某些方面而言,做到這一點可謂更具挑戰(zhàn),因為基于神經(jīng)網(wǎng)絡的系統(tǒng)中的工作內(nèi)存都是“內(nèi)部循環(huán)”的,要求換出到DDR內(nèi)存,可能會降低性能。另外,在推理過程中重復訪問DDR也會增加邊緣設備的典型低功耗預算,這一點也同樣很難令人滿意。更大的片上存儲器是解決問題方法之一,但是會增加產(chǎn)品成本。綜上所述,最佳解決方案是盡可能高效地將模型打包到可用內(nèi)存中。

眾所周知,在編譯人工智能神經(jīng)網(wǎng)絡模型以便在邊緣設備上運行時,有一些量化技術可以縮小此模型的大小,如將浮點數(shù)據(jù)和權重值轉換為定點,然后進一步縮小為INT8或更小的值。想象一下,如果還能更進一步會怎樣。在本文中,我將介紹幾種圖優(yōu)化技術,助您在2MB的二級緩存中安裝更多量化模型,但僅僅量化是無法完成安裝的。

優(yōu)化人工智能神經(jīng)網(wǎng)絡圖中的緩沖區(qū)分配

wKgaomVMQdOAfJPPAACmlCKXd8g725.png

▲圖1.一個簡單的人工智能圖

(Op代表運算符;E代表外部輸入;

C代表常數(shù)(權重);V代表變量;T代表張量)

人工智能神經(jīng)網(wǎng)絡模型表示為圖形并作為圖形來管理,其中的運算是通過緩沖區(qū)相互連接的節(jié)點進行的。這些緩沖區(qū)固定分配在內(nèi)存中,大小在編譯圖時確定,用于保存圖中的中間計算結果或輸入和輸出。在所有圖中,流水關系圖是最基本的一種,但更典型的簡單圖如圖1所示。

我們的目標是讓編譯器優(yōu)化緩沖區(qū)內(nèi)存總需求。想想簡單的人工智能神經(jīng)網(wǎng)絡圖中可能的分配序列(圖2中的左圖)。首先要明白,圖中的不同運算需要不同大小的緩沖區(qū),并且在進行下一波處理之前,將不再需要已完成運算的輸入緩沖區(qū)。讀取緩沖區(qū)A(此處分配有800K字節(jié)),就可以在后續(xù)運算中重復使用了,緩沖區(qū)B也是如此,依此類推。在左圖出現(xiàn)分支時,先將緩沖區(qū)A和B分配給了右側分支,之后則必須為左側分支分配一個新的緩沖區(qū)C。

wKgaomVMQdOAMcq5AABxXZ4kfzw357.jpg

▲圖2.說明緩沖區(qū)分配的簡單圖

(右圖在左圖的基礎上,將緩沖區(qū)B和C互換

并增加了緩沖區(qū)B的大小,得到了改善)

從這個例子中不難看出,一開始就將緩沖區(qū)B的大小增加到1000K,稍后再在左側分支中重復使用B的全部大小,右側分支中緩沖區(qū)C就只需要額外10K內(nèi)存,如右圖所示。左/右內(nèi)存需求差異明顯。左圖需要2.5MB (800K+700K+1000K),而修改順序后的右圖只需要 1.81MB(800K+1000K+10K)。

在一般人工智能神經(jīng)網(wǎng)絡圖中找出最優(yōu)排序就是眾所周知的0-1背包問題。我們展開了初步測試,研究這種優(yōu)化如何改善打包到固定大小L2緩存的效果。即使是當下初步階段,結果也相當不錯。我們測試了幾種常見網(wǎng)絡在2MB和4MB L2緩存中的安裝效果。優(yōu)化前,只有13%的模型可以安裝在2MB內(nèi)存中,38%的模型可以安裝在4MB內(nèi)存中。優(yōu)化后,66%的模型可以安裝在2MB內(nèi)存中,83%的模型可以安裝在4MB內(nèi)存中。僅這一項優(yōu)化就值得我們努力,我們的目標是確保更多模型可以完全在片上內(nèi)存中運行。

通過合并緩沖區(qū)優(yōu)化人工智能神經(jīng)網(wǎng)絡模型

在卷積人工智能神經(jīng)網(wǎng)絡模型中,經(jīng)過前幾層處理后,緩沖區(qū)大小通常會縮小。這種結果表明,一開始分配的大緩沖區(qū)可以通過與稍后需要的較小緩沖區(qū)共享空間得到更高效的利用。圖3說明了這種可能性。

wKgaomVMQdSAckvDAABjXjMxhDI560.jpg

▲圖3.不同的簡單圖

(最初為緩沖區(qū)A分配的大小可以稍后由左右分支共享,

此處的C緩沖區(qū)源自最初的A緩沖區(qū))

我們試著進行優(yōu)化,看看這種合并對內(nèi)存總需求有何影響。在一系列無比熟悉的網(wǎng)絡中,我們發(fā)現(xiàn)緩沖區(qū)總大小減小了15%到35%。再次重申一遍,這些改進非常具有吸引力。

?

要點

?

我們通過這些優(yōu)化,運行各種主流卷積人工智能神經(jīng)網(wǎng)絡模型,從檢測到分類到細分,再到RNN模型不一而足。大多數(shù)情況下,模型完全遷移至了4MB二級緩存,某些情況下,模型遷移至了二級緩存中,只有一部分還留在DDR內(nèi)存中。幾乎所有模型都在打包方面呈現(xiàn)出巨大改進。

即使你的人工智能神經(jīng)網(wǎng)絡模型無法安裝在片上內(nèi)存,也并非無法優(yōu)化。在人工智能編譯器階段可以對緩沖區(qū)進行優(yōu)化,大幅壓縮模型總大小。在CEVA,我們很樂意與你討論以上問題和其他想法,以便進一步優(yōu)化人工智能神經(jīng)網(wǎng)絡模型的內(nèi)存使用。

識別右側二維碼

立即了解CEVA

更多信息

wKgaomVMQdSAUrT4AAFqtfxSXaM346.png ?

本文作者:Rami Drucker, Machine Learning SW Architect, CEVA


聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • CEVA
    +關注

    關注

    1

    文章

    189

    瀏覽量

    76591

原文標題:高效打包邊緣人工智能神經(jīng)網(wǎng)絡模型

文章出處:【微信號:CEVA-IP,微信公眾號:CEVA】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    Nordic 收購 Neuton.AI # Neuton ML 模型解鎖 SoC 邊緣人工智能

    Nordic 業(yè)界領先的 nRF54L 系列超低功耗無線 SoC 與 Neuton 革命性的神經(jīng)網(wǎng)絡框架相結合,開啟邊緣機器學習的新紀元,即使是資源受限的設備也能擁有可擴展的高性能人工智能 (AI
    的頭像 發(fā)表于 07-01 17:32 ?1359次閱讀
    Nordic 收購 Neuton.AI # Neuton ML <b class='flag-5'>模型</b>解鎖 SoC <b class='flag-5'>邊緣人工智能</b>

    Nordic收購 Neuton.AI 關于產(chǎn)品技術的分析

    示例和支持,方便開發(fā)者在 Nordic 的各類芯片上實現(xiàn)高效邊緣 AI 應用; 如果對這個AI人工智能應用感興趣,請評論區(qū)聯(lián)系我們.
    發(fā)表于 06-28 14:18

    愛立信攜手超微加速邊緣人工智能部署

    愛立信與超微 Supermicro近日宣布有意開展戰(zhàn)略合作,加速邊緣人工智能部署。
    的頭像 發(fā)表于 06-17 09:42 ?2369次閱讀

    開售RK3576 高性能人工智能主板

    ZYSJ-2476B 高性能智能主板,采用瑞芯微 RK3576 高性能 AI 處理器、神經(jīng)網(wǎng)絡處理器 NPU, Android 14.0/debian11/ubuntu20.04 操作系統(tǒng)
    發(fā)表于 04-23 10:55

    如何訓練BP神經(jīng)網(wǎng)絡模型

    BP(Back Propagation)神經(jīng)網(wǎng)絡是一種經(jīng)典的人工神經(jīng)網(wǎng)絡模型,其訓練過程主要分為兩個階段:前向傳播和反向傳播。以下是訓練BP神經(jīng)網(wǎng)絡
    的頭像 發(fā)表于 02-12 15:10 ?927次閱讀

    用 ADI 的 MAX78002 MCU 開發(fā)邊緣人工智能應用

    應用能夠在物聯(lián)網(wǎng)設備上運行,而這些設備通常會受到內(nèi)存、帶寬和功耗的限制。 [Analog Devices, Inc.] 的一款微控制器 (MCU) 集成了低功耗卷積神經(jīng)網(wǎng)絡 (CNN) 加速器,可在電池供電型設備上處理人工智能推斷,從而突破
    的頭像 發(fā)表于 01-26 21:20 ?576次閱讀
    用 ADI 的 MAX78002 MCU 開發(fā)<b class='flag-5'>邊緣人工智能</b>應用

    人工神經(jīng)網(wǎng)絡的原理和多種神經(jīng)網(wǎng)絡架構方法

    在上一篇文章中,我們介紹了傳統(tǒng)機器學習的基礎知識和多種算法。在本文中,我們會介紹人工神經(jīng)網(wǎng)絡的原理和多種神經(jīng)網(wǎng)絡架構方法,供各位老師選擇。 01 人工
    的頭像 發(fā)表于 01-09 10:24 ?1205次閱讀
    <b class='flag-5'>人工</b><b class='flag-5'>神經(jīng)網(wǎng)絡</b>的原理和多種<b class='flag-5'>神經(jīng)網(wǎng)絡</b>架構方法

    邊緣設備上設計和部署深度神經(jīng)網(wǎng)絡的實用框架

    ,以及由強大而高效的軟件工具鏈補充的低成本邊緣設備的可用性。此外,需要避免通過網(wǎng)絡傳輸數(shù)據(jù)——無論是出于安全原因還是僅僅為了盡量減少通信成本。 邊緣人工智能涵蓋廣泛的設備、傳感器、微控
    的頭像 發(fā)表于 12-20 11:28 ?895次閱讀

    AI模型部署邊緣設備的奇妙之旅:如何實現(xiàn)手寫數(shù)字識別

    )是一種用于在各種深度學習框架之間轉換神經(jīng)網(wǎng)絡模型的開放格式。它允許用戶將訓練好的模型從深度學習框架轉換為其他框架,或者將模型從一種框架轉換為另一種框架。借助它支持不同的
    發(fā)表于 12-06 17:20

    19位國際頂尖學者聯(lián)袂撰寫《重新審視邊緣人工智能:機遇與挑戰(zhàn)》

    19位國際頂尖學者聯(lián)袂撰寫《重新審視邊緣人工智能:機遇與挑戰(zhàn)》
    的頭像 發(fā)表于 11-27 01:04 ?880次閱讀
    19位國際頂尖學者聯(lián)袂撰寫《重新審視<b class='flag-5'>邊緣人工智能</b>:機遇與挑戰(zhàn)》

    卷積神經(jīng)網(wǎng)絡與傳統(tǒng)神經(jīng)網(wǎng)絡的比較

    在深度學習領域,神經(jīng)網(wǎng)絡模型被廣泛應用于各種任務,如圖像識別、自然語言處理和游戲智能等。其中,卷積神經(jīng)網(wǎng)絡(CNNs)和傳統(tǒng)神經(jīng)網(wǎng)絡是兩種常
    的頭像 發(fā)表于 11-15 14:53 ?1878次閱讀

    RNN模型與傳統(tǒng)神經(jīng)網(wǎng)絡的區(qū)別

    傳統(tǒng)神經(jīng)網(wǎng)絡(前饋神經(jīng)網(wǎng)絡) 2.1 結構 傳統(tǒng)神經(jīng)網(wǎng)絡,通常指的是前饋神經(jīng)網(wǎng)絡(Feedforward Neural Networks, FNN),是一種最簡單的
    的頭像 發(fā)表于 11-15 09:42 ?1133次閱讀

    嵌入式和人工智能究竟是什么關系?

    人工智能的結合,無疑是科技發(fā)展中的一場革命。在人工智能硬件加速中,嵌入式系統(tǒng)以其獨特的優(yōu)勢和重要性,發(fā)揮著不可或缺的作用。通過深度學習和神經(jīng)網(wǎng)絡等算法,嵌入式系統(tǒng)能夠高效地處理大量數(shù)
    發(fā)表于 11-14 16:39

    Moku人工神經(jīng)網(wǎng)絡101

    不熟悉神經(jīng)網(wǎng)絡的基礎知識,或者想了解神經(jīng)網(wǎng)絡如何優(yōu)化加速實驗研究,請繼續(xù)閱讀,探索基于深度學習的現(xiàn)代智能化實驗的廣闊應用前景。什么是神經(jīng)網(wǎng)絡?“人工
    的頭像 發(fā)表于 11-01 08:06 ?667次閱讀
    Moku<b class='flag-5'>人工</b><b class='flag-5'>神經(jīng)網(wǎng)絡</b>101

    如何選擇神經(jīng)網(wǎng)絡種類

    人工智能和機器學習領域,選擇適合的神經(jīng)網(wǎng)絡種類是構建高效、準確模型的關鍵步驟。這一過程涉及對任務類型、數(shù)據(jù)特性、計算資源及模型性能要求等多
    的頭像 發(fā)表于 07-24 11:29 ?1200次閱讀