99精品伊人亚洲|最近国产中文炮友|九草在线视频支援|AV网站大全最新|美女黄片免费观看|国产精品资源视频|精彩无码视频一区|91大神在线后入|伊人终合在线播放|久草综合久久中文

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

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

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

fireflyNCC S1--PLAI神經(jīng)網(wǎng)絡量化工具介紹

firefly ? 來源:firefly ? 作者:firefly ? 2019-11-18 14:13 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

PLAI

PLAI是一個基于PyTorch的神經(jīng)網(wǎng)絡量化工具 - 用于將浮點神經(jīng)網(wǎng)絡轉換為定點 神經(jīng)網(wǎng)絡實現(xiàn)(給GTI 2801s使用), 或從頭開始訓練定點模型。 PLAI使用主機的CPUGPU進行訓練,使用GTI NPU USB Dongle進行推理驗證。

PLAI現(xiàn)支持GNet1、GNet18和GNetfc三種基于VGG-16的模型。

運行要求及建議

PLAI運行硬件要求如下:

  • Intel i5 3.0 GHz及以上主頻或者更高性能CPU (Intel i7為較佳選擇)
  • 8 GB及以上內(nèi)存
  • 獨立顯卡6GB及以上顯存,推薦使用GTX 1060及以上顯卡,AMD顯卡不適用。(此項為可選,但強烈推薦,可大大縮短訓練時間)

PLAI最終會使用USB Dongle進行推理測試,如果有則可以進行配置使用。

PLAI現(xiàn)支持以下系統(tǒng):

運行環(huán)境配置
環(huán)境依賴
  • Python3
  • PyTorch
  • OpenCV
  • CUDA 9.0及以上版本(可選)
Ubuntu

這里以使用Miniconda進行環(huán)境配置為例。

安裝過程如下:

ubunut16.04:~$ sudo chmod +x Downloads/Miniconda3-latest-Linux-x86_64.sh ubunut16.04:~$ ./Downloads/Miniconda3-latest-Linux-x86_64.sh Welcome to Miniconda3 4.5.11 In order to continue the installation process, please review the license agreement. Please, press ENTER to continue >>> (回車) ... Do you accept the license terms? [yes|no] [no] >>> yes(回車) ... - Press CTRL-C to abort the installation - Or specify a different location below [/home/firefly/miniconda3] >>> (回車) ... (安裝過程) Do you wish the installer to prepend the Miniconda3 install location to PATH in your /home/firefly/.bashrc ? [yes|no] [no] >>> yes(回車)

以上將Miniconda安裝在用戶根目錄miniconda3下,同時設置默認使用Miniconda的程序。

可以通過以下操作使Miniconda生效并測試:

ubunut16.04:~$ source ~/.bashrc ubunut16.04:~$ conda -V conda 4.5.11

接著,如果有英偉達獨立顯卡加速,可以通過以下操作安裝PyTorch和OpenCV:

ubunut16.04:~$ conda install pytorch torchvision -c pytorch ubunut16.04:~$ pip install opencv-contrib-python

否則,請執(zhí)行以下操作:

ubunut16.04:~$ conda install pytorch-cpu torchvision-cpu -c pytorch ubunut16.04:~$ pip install opencv-contrib-python

如果有顯卡加速可參考此頁面進行安裝配置,否則可跳過此步驟。

cuda安裝操作摘抄如下:

ubunut16.04:~$ wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu1604/x86_64/cuda-repo-ubuntu1604_10.0.130-1_amd64.deb ubunut16.04:~$ sudo dpkg -i cuda-repo-ubuntu1604_10.0.130-1_amd64.deb ubunut16.04:~$ sudo apt-key adv --fetch-keys https://developer.download.nvidia.com/compute/cuda/repos/ubuntu1604/x86_64/7fa2af80.pub ubunut16.04:~$ sudo apt-get update ubunut16.04:~$ sudo apt-get install cuda

最后,進行USB Dongle配置(可選),可在PLAI目錄下執(zhí)行以下操作配置并驗證:

ubunut16.04:~/PLAI$ sudo cp lib/python/gtilib/*.rules /etc/udev/rules.d/ ubunut16.04:~/PLAI$ ls /dev/sg* -l crw-rw-rw- 1 root disk 21, 0 11月 20 10:28 /dev/sg0 crw-rw-rw- 1 root disk 21, 1 11月 20 10:28 /dev/sg1

如果出現(xiàn)未找到設備的情況請參考常見問題進行排查。

Windows 10

待完善…(可部分參考Ubuntu的配置過程)

環(huán)境測試

以下操作可測試環(huán)境完整性,如無錯誤,則配置完成。

ubunut16.04:~$ python Python 3.7.0 (default, Jun 28 2018, 13:15:42) [GCC 7.2.0] :: Anaconda, Inc. on linux Type "help", "copyright", "credits" or "license" for more information. >>> import torch,cv2 >>> torch.cuda.is_available() True >>>
參數(shù)設置
training.json文件
  • num_classes - 數(shù)據(jù)集分類個數(shù),即data/train和data/val中的文件夾(分類)數(shù)
  • max_epoch - 所有訓練向量一次用于更新權重的次數(shù)
  • learning_rate - 確定權重變化的速度
  • train_batch_size - 根據(jù)GPU內(nèi)存設置
  • test_batch_size - 根據(jù)GPU內(nèi)存設置
  • mask_bits - 表示每個主層(卷積層)的掩碼
  • act_bits - 表示每個主層(卷積層)的激活參數(shù)
  • resume - 設置是否從一個已知的checkpoint中開始訓練
  • finetune - 可選項, 啟用此項通常能得到更高的精度
  • full - 設置是否訓練一個全精度模型

mask_bits和act_bits參數(shù)參考如下:

  1. GNetfc
    • mask_bits: 3,3,1,1,1,1
    • act_bits: 5,5,5,5,5,5
  2. GNet18
    • mask_bits: 3,3,3,3,1
    • act_bits: 5,5,5,5,5
  3. GNet1
    • mask_bits: 3,3,1,1,1
    • act_bits: 5,5,5,5,5
PLAI.py參數(shù)

PLAI.py暫不支持命令行參數(shù),需要修改PLAI.py源碼。

通常修改源碼位置大約在142行,原始內(nèi)容如下:

gtiPLAI = PLAI(num_classes=2, data_dir=data_dir, checkpoint_dir=checkpoint_dir, model_type=0, module_type=1, device_type=1)
  • num_classes - 可在training.json中設置
  • data_dir - 默認為data目錄
  • checkpoint_dir - 默認為checkpoint目錄
  • model_type - 設置訓練的模型,0: GNetfc, 1: GNet18, 2:GNet1
  • module_type - 0: Conv(w/o bias) + bn + bias,1: Conv(w/ bias) + bn
  • device_type - 用于推理的GTI設備類型,ftdi: 0, emmc: 1
模型訓練

將訓練圖片數(shù)據(jù)按類型存放到PLAI data目錄下以類型名命名的文件夾中,然后調(diào)整training.json和修改PLAI.py(默認網(wǎng)絡模型為GNetfc)在PLAI根目錄下執(zhí)行以下操作即可。

ubunut16.04:~$ python PLAI.py
模型使用

訓練結束會生成coefDat_2801.dat、coefBin_2801.bin(GNetfc沒有此文件)和data/pic_label.txt,如果是GNet1可用到AI資料U盤中的sample中測試。 其中userinput.txt可在PLAI nets目錄下找到,如netConfig_2801_gnet1.txt。使用示例如下:

liteSample -c coefDat_2801.dat -u netConfig_2801_gnet1.txt -f coefBin_2801.bin -l pic_label.txt

測試時請注意userinput.txt即-u參數(shù)文件中的設備節(jié)點是否正確。


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

    關注

    4

    文章

    3613

    瀏覽量

    91394
  • 嵌入式主板
    +關注

    關注

    7

    文章

    6101

    瀏覽量

    36300
  • Firefly
    +關注

    關注

    2

    文章

    542

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    MATLAB神經(jīng)網(wǎng)絡工具箱函數(shù)

    MATLAB神經(jīng)網(wǎng)絡工具箱函數(shù)說明:本文檔中所列出的函數(shù)適用于MATLAB5.3以上版本,為了簡明起見,只列出了函數(shù)名,若需要進一步的說明,請參閱MATLAB的幫助文檔。1. 網(wǎng)絡創(chuàng)建函數(shù)newp
    發(fā)表于 09-22 16:10

    labview BP神經(jīng)網(wǎng)絡的實現(xiàn)

    請問:我在用labview做BP神經(jīng)網(wǎng)絡實現(xiàn)故障診斷,在NI官網(wǎng)找到了機器學習工具包(MLT),但是里面沒有關于這部分VI的幫助文檔,對于”BP神經(jīng)網(wǎng)絡分類“這個范例有很多不懂的地方,比如
    發(fā)表于 02-22 16:08

    神經(jīng)網(wǎng)絡基本介紹

    神經(jīng)網(wǎng)絡基本介紹
    發(fā)表于 01-04 13:41

    【PYNQ-Z2試用體驗】神經(jīng)網(wǎng)絡基礎知識

    能在外界信息的基礎上改變內(nèi)部結構,是一種自適應系統(tǒng),通俗的講就是具備學習功能。現(xiàn)代神經(jīng)網(wǎng)絡是一種非線性統(tǒng)計性數(shù)據(jù)建模工具。簡單來說,就是給定輸入,神經(jīng)網(wǎng)絡經(jīng)過一系列計算之后,輸出最終結果。這好比人的大腦
    發(fā)表于 03-03 22:10

    如何構建神經(jīng)網(wǎng)絡

    原文鏈接:http://tecdat.cn/?p=5725 神經(jīng)網(wǎng)絡是一種基于現(xiàn)有數(shù)據(jù)創(chuàng)建預測的計算系統(tǒng)。如何構建神經(jīng)網(wǎng)絡?神經(jīng)網(wǎng)絡包括:輸入層:根據(jù)現(xiàn)有數(shù)據(jù)獲取輸入的層隱藏層:使用反向傳播優(yōu)化輸入變量權重的層,以提高模型的預測
    發(fā)表于 07-12 08:02

    量化神經(jīng)網(wǎng)絡的相關資料下載

    原文鏈接:【嵌入式AI部署&基礎網(wǎng)絡篇】輕量化神經(jīng)網(wǎng)絡精述--MobileNet V1-3、ShuffleNet V1-2、NasNet深度
    發(fā)表于 12-14 07:35

    卷積神經(jīng)網(wǎng)絡一維卷積的處理過程

    inference在設備端上做。嵌入式設備的特點是算力不強、memory小??梢酝ㄟ^對神經(jīng)網(wǎng)絡量化來降load和省memory,但有時可能memory還吃緊,就需要對神經(jīng)網(wǎng)絡在memory使用上做進一步優(yōu)化
    發(fā)表于 12-23 06:16

    神經(jīng)網(wǎng)絡基本介紹

    神經(jīng)網(wǎng)絡基本介紹,人工神經(jīng)網(wǎng)絡(簡稱神經(jīng)網(wǎng)絡,Neural Network)是模擬人腦思維方式的數(shù)學模型。 神經(jīng)網(wǎng)絡是在現(xiàn)代生物
    發(fā)表于 12-06 15:07 ?0次下載

    fireflyNCC S1 神經(jīng)網(wǎng)絡計算卡簡介

    基于AI專用的APiM架構,無需外部緩存的模塊化深度神經(jīng)網(wǎng)絡學習加速器,用于高性能邊緣計算領域,可作為基于視覺的深度學習運算和AI算法加速。外形小巧,極低功耗,擁有著強勁算力,配套完整易用的模型訓練工具網(wǎng)絡訓練模型實例,搭配專
    的頭像 發(fā)表于 11-11 11:04 ?1526次閱讀
    <b class='flag-5'>fireflyNCC</b> <b class='flag-5'>S1</b> <b class='flag-5'>神經(jīng)網(wǎng)絡</b>計算卡簡介

    fireflyNCC S1神經(jīng)網(wǎng)絡計算卡介紹

    Firefly神經(jīng)網(wǎng)絡計算卡是Firefly推出的,配合Firefly開發(fā)板使用的NPU(Neural Processing Unit)模塊。模塊搭載GTI(全稱Gyrfalcon
    的頭像 發(fā)表于 11-18 14:36 ?2237次閱讀
    <b class='flag-5'>fireflyNCC</b> <b class='flag-5'>S1</b><b class='flag-5'>神經(jīng)網(wǎng)絡</b>計算卡<b class='flag-5'>介紹</b>

    12個將神經(jīng)網(wǎng)絡畫地更好看的工具

    本文介紹了了12個將神經(jīng)網(wǎng)絡畫地更好看的工具。一個用于畫卷積神經(jīng)網(wǎng)絡的Python腳本
    的頭像 發(fā)表于 06-13 14:10 ?3963次閱讀
    12個將<b class='flag-5'>神經(jīng)網(wǎng)絡</b>畫地更好看的<b class='flag-5'>工具</b>

    神經(jīng)網(wǎng)絡量化:它是什么,它與TinyML有什么關系?

    本文將基本了解機器學習背景下的量化,特別是微型機器學習(tinyML)。 主要挑戰(zhàn)tinyML就是怎么拿一個比較大的 神經(jīng)網(wǎng)絡,有時約為數(shù)百兆字節(jié),使其適合并在資源受限的微控制器上運行,同時保持最小
    的頭像 發(fā)表于 01-27 16:43 ?3346次閱讀
    <b class='flag-5'>神經(jīng)網(wǎng)絡</b><b class='flag-5'>量化</b>:它是什么,它與TinyML有什么關系?

    什么是神經(jīng)網(wǎng)絡?什么是卷積神經(jīng)網(wǎng)絡?

    介紹卷積神經(jīng)網(wǎng)絡之前,我們先回顧一下神經(jīng)網(wǎng)絡的基本知識。就目前而言,神經(jīng)網(wǎng)絡是深度學習算法的核心,我們所熟知的很多深度學習算法的背后其實都是神經(jīng)網(wǎng)
    的頭像 發(fā)表于 02-23 09:14 ?4340次閱讀

    matlab神經(jīng)網(wǎng)絡工具箱結果分析

    神經(jīng)網(wǎng)絡是一種強大的機器學習技術,廣泛應用于各種領域,如圖像識別、語音識別、自然語言處理等。MATLAB提供了一個功能強大的神經(jīng)網(wǎng)絡工具箱,可以幫助用戶快速構建和訓練神經(jīng)網(wǎng)絡模型。本文將介紹
    的頭像 發(fā)表于 07-03 10:32 ?1229次閱讀

    如何使用MATLAB神經(jīng)網(wǎng)絡工具

    和訓練神經(jīng)網(wǎng)絡。本文將介紹如何使用MATLAB神經(jīng)網(wǎng)絡工具箱,以及如何解讀神經(jīng)網(wǎng)絡的結果圖。 MATLAB神經(jīng)網(wǎng)絡工具箱簡介 MATLAB
    的頭像 發(fā)表于 07-03 10:34 ?4036次閱讀