<strike id="0k9r3"><p id="0k9r3"></p></strike>
  • <form id="0k9r3"></form>
    <nav id="0k9r3"></nav>
    <em id="0k9r3"><p id="0k9r3"></p></em>
  • <tr id="0k9r3"><source id="0k9r3"></source></tr>
    <form id="0k9r3"></form>
    <sub id="0k9r3"></sub>

      <sub id="0k9r3"><address id="0k9r3"></address></sub>
      1. <form id="0k9r3"></form>

        24小時聯系電話:18217114652、13661815404

        中文

        您當前的位置:
        首頁>
        電子資訊>
        技術專題>
        針對嵌入式應用優化AI

        技術專題

        針對嵌入式應用優化AI


        基于AI的界面的需求-并且添加像face-id這樣的基于AI的界面來授權對機器的訪問乍看起來似乎是一個巨大的飛躍,但這并沒有就像您想的那樣困難。有大量可用的AI平臺,大量的培訓選項甚至是開源應用程序,例如face-id example。使用可以在PC上運行的原型,您可以快速啟動并進行測試。

        約束條件

        將訓練有素的網絡遷移到嵌入式應用程序似乎是另一個巨大的障礙。受PC或云訓練的網絡在內存使用或功耗方面沒有進行太多優化。他們可能會使用浮點數或雙字進行網絡計算,并且在處理圖像上的滑動窗口時會嚴重依賴片外內存訪問。對于在插入墻壁電源的高性能PC上運行的原型而言,這不是要擔心的問題,但是您需要在最終應用程序中更加節儉,并且不影響性能。

        優化的要點

        優化的一個關鍵步驟稱為量化。將權重從浮點切換到固定點并減小固定點大?。ɡ?,從32位浮點更改為8位整數)不僅會影響權重的大小,還會影響中間計算值。僅此一項就可以顯著減少內存占用,在大多數情況下,對識別質量的影響很小。

        第二種操作是在最小的精度影響下利用權重的稀疏性。這種做法將利用權重接近零的優勢,并將其舍入為零,同時密切關注準確性的影響。權重用于乘以部分和,當因素之一為零時,這是無意義的練習,因此無需執行該運算。

        在實際的實現中,圖像是增量處理的,因此當計算窗口在圖像上移動時,權重必須更新。那會帶來很多更新和大量流量。通過將大部分權重強制為零,可以壓縮權重數組,從而可以將所有或大部分數組存儲在片上SRAM中,以根據需要進行解壓縮。從而最大程度地減少了訪問主存儲器的需求,從而提高了性能并降低了功耗。加載砝碼時,它還附帶減少了片上流量。較少的流量爭用意味著較高的吞吐量。

        應該考慮另外一個因素。像大多數復雜的應用程序一樣,神經網絡依賴于復雜的庫。您需要使用一個設計用于微控制器環境的庫,并將其編譯到您選擇的平臺。一個很好的起點可能是一個開源庫,例如TensorFlow Lite,但是為了充分利用微控制器,將需要專用的定制解決方案。

        當然,知道您必須做什么并不容易?,F在,您需要找到一個平臺,以簡化這些操作并提供硬件優化的庫。

        如何使它易于使用?

        您需要的是一個流程,您可以在特定平臺(例如TensorFlow)上使用經過培訓的網絡,并將其直接編譯到嵌入式解決方案中,而無需輸入一些基本要求。當然,您還希望該選項能夠進一步手動優化,也許在不同平面中設置不同的量化級別。也許嘗試權重閾值與片上存儲器大小的比較。并且您想要針對硬件進行優化的庫以及針對庫進行優化的硬件。

        經過驗證的AI平臺(如CEVACDNN)旨在提供這種類型的流程。CDNN提供了用于量化和運行時任務生成的離線處理器工具集,以及為CEVA DSP和客戶用戶的硬件加速器量身定制的運行時庫。CEVA的解決方案支持所有流行的AI模型格式,包括TensorFlow Lite,ONNX,Caffe等。

         

        請輸入搜索關鍵字

        確定
        国产在线视频在线