實(shí)驗(yàn)環(huán)境搭建
模塊?:軟件包下載及環(huán)境搭建
步驟一:搭建docker、mappper環(huán)境:
①Linux下通過Docker直接下載,獲取指令:
docker pull witin/toolchain:v001.000.034
②Window環(huán)境,可以通過docker desktop來使用docker:
下載安裝Docker desktop(win10或以上):
通常需要更新WSL,下載鏈接如下,更新后需要重啟生效
舊版 WSL 的手動(dòng)安裝步驟 | Microsoft Learn
3.Docker desktop 基本使用教程:
Docker-desktop(Docker桌面版)——入門篇_dockerdesktop干嘛用的-CSDN博客
4.Docker desktop通常默認(rèn)安裝在c:Program Filedocker,可以通過軟連接的形式修改Docker安裝路徑:
如何將Docker(Windows桌面版)自定義安裝目錄_自定義docker安裝路徑-CSDN博客
5.在Docker desktop里,可以通過搜索獲得witin_toolchain,我們需要的是034版本(ps:Hub反應(yīng)慢可以開VPN獲取,或者使用鏡像路徑,具體操作方式見3鏈接)
6.測(cè)試:
①:管理員模式下打開命令行窗口
docker run -it --name XXXX witin/toolchain:v001.000.034
②:默認(rèn)進(jìn)入workspace目錄下,可以進(jìn)入witin_mapper下執(zhí)行測(cè)試腳本:
cd witin_mapper
tests/python/frontend/onnx/witin/wtm2101/precision/XXXX.py
③:使用exit退出,再次進(jìn)入可按如下操作:
④:通過docker ps -a獲取容器id,然后打開進(jìn)入容器
步驟二:搭建IDE環(huán)境
①預(yù)先下載安裝包,下載安裝
②默認(rèn)安裝路徑,直接點(diǎn)擊安裝
③從主菜單的File->Open…菜單,或者點(diǎn)擊工具欄的按鈕,打開選擇文件對(duì)話框,選擇要打開的項(xiàng)目文件,即***.wmproject文件即可,點(diǎn)擊【打開】按鈕即可打開工程。如下圖所示。
步驟三:其他需要安裝的軟件
① 請(qǐng)確保安裝以下環(huán)境:python, git, pytorch
步驟四:下載訓(xùn)練數(shù)據(jù)
① 最新數(shù)據(jù)集在軟件安裝包中
工程軟件安裝包:https://download.csdn.net/download/m0_58966968/88602575
實(shí)驗(yàn)環(huán)境安裝包:https://download.csdn.net/download/m0_58966968/88602555
動(dòng)?實(shí)驗(yàn): 簡(jiǎn)單語音識(shí)別系統(tǒng)開發(fā)
模塊?:簡(jiǎn)介
WTMDK2101-X3介紹
WTMDK2101-X3是針對(duì)WTM2101 AI SOC設(shè)計(jì)的評(píng)估板,包含:
(1)WTM2101核心板,即我們的存算芯片。
(2)和I/O 板:WTM2101運(yùn)行需要的電源、以及應(yīng)用I/O接口等.
核心板示意圖
WTMDK2101-X3 I/O 板示意圖
2, AISHELL-WakeUp-1數(shù)據(jù)集介紹
AISHELL-WakeUp-1數(shù)據(jù)集是中英文喚醒詞語音數(shù)據(jù)庫,命令詞為“你好,米雅” “hi, mia”,語音數(shù)據(jù)庫中喚醒詞語音3936003條,1561.12小時(shí),邀請(qǐng)254名發(fā)言人參與錄制。錄制過程在真實(shí)家居環(huán)境中,設(shè)置7個(gè)錄音位,使用6個(gè)圓形16路PDM麥克風(fēng)陣列錄音板做遠(yuǎn)講拾音(16kHz,16bit)、1個(gè)高保真麥克風(fēng)做近講拾音(44.1kHz,16bit)。此數(shù)據(jù)庫可用于聲紋識(shí)別、語音喚醒識(shí)別等研究使用。
本demo以該數(shù)據(jù)集為例,用不同網(wǎng)絡(luò)結(jié)構(gòu)展示模型訓(xùn)練及移植過程。
模塊?:搭建算法訓(xùn)練工程,完成算法訓(xùn)練與量化
模型訓(xùn)練工程搭建:
本demo提供DNN和DNN_DEEP兩種網(wǎng)絡(luò)結(jié)構(gòu)的示例,網(wǎng)絡(luò)結(jié)構(gòu)如下,本教程以DNN為例。
DNN
步驟一:配置python/config.py,參數(shù)釋義見代碼注釋。
步驟二:運(yùn)行python/train.py,模型訓(xùn)練完畢后,在models/net_type文件夾下生成bestModel.pth,此即我們的模型權(quán)重。
步驟三:運(yùn)行python/onnx_converter.py,在models/net_type文件夾下生成bestModel.onnx。此步驟即完成原始模型到知存onnx格式模型的轉(zhuǎn)換。
模塊三:算法模型轉(zhuǎn)換
1,Dcoker下Mapper轉(zhuǎn)換流程
步驟一:拷貝至指定文件夾
我們將mapper/input 拷貝至witin/toolchain:v001.000.034的指定文件夾下(通常為/home,需與gen_mapper.py文件里描述一致)
步驟二:在workplacewitin_mapper下執(zhí)行g(shù)en_mapper.py
docker start id
docker attach id
cd witin_mapper
python3 /home/mapper/input/gen_mapper.py
步驟三:在對(duì)應(yīng)的output文件下獲得輸出
模塊四:算法模型燒寫
步驟一:系統(tǒng)連接:
進(jìn)行模型燒錄和開發(fā)時(shí),我們需要將JTAG,核心板,NPU燒寫板連接好,并打開開關(guān),如系統(tǒng)連接示意圖所示。
步驟二:
系統(tǒng)連接示意圖
步驟三:跳線帽連接:
如跳線帽連接示意圖所示,按照紅框標(biāo)注進(jìn)行跳線連接。含義解釋:
跳線帽連接示意圖
步驟四:
使用project/ WitinProgramTool_WTM2101下的WitinProgramTool.exe進(jìn)行模型權(quán)重?zé)龑?。燒寫時(shí)的開發(fā)板接線請(qǐng)參考其他文檔。
步驟五:燒寫指令:
.WitinProgramTool.exe -m init
.WitinProgramTool.exe -m program -i XXXXmap.csv -k 2
其中XXXX為步驟2.(3)中生成的mapper/output/map
示例:
模塊五:算法模型在芯片運(yùn)行推理
步驟一:
從官網(wǎng)下載知存IDE Witmem Studio。
步驟二:
生成的mapper/output/register.c放在project/Model,使用Witmem Studio打開project/Project/SES-RISCV/Demo.wmproject。
步驟三:Target->Download下載工程:
注:本demo所用為x3開發(fā)板,所用串口GPIO為16,17。若是其他開發(fā)板,請(qǐng)根據(jù)情況修改串口。
步驟四:
打開tools中的串口工具,設(shè)置波特率115200,查看準(zhǔn)確率輸出
至此,我們完成了基于存內(nèi)計(jì)算X3開發(fā)板的語音識(shí)別從訓(xùn)練到部署全流程,本教程結(jié)束。
審核編輯 黃宇
-
芯片
+關(guān)注
關(guān)注
452文章
50216瀏覽量
420956 -
語音識(shí)別
+關(guān)注
關(guān)注
38文章
1711瀏覽量
112493 -
開發(fā)板
+關(guān)注
關(guān)注
25文章
4898瀏覽量
97063 -
算法模型
+關(guān)注
關(guān)注
0文章
7瀏覽量
6729 -
存內(nèi)計(jì)算
+關(guān)注
關(guān)注
0文章
28瀏覽量
1364
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論