【基于存内计算芯片开发板验证语音识别】训练手册

这篇具有很好参考价值的文章主要介绍了【基于存内计算芯片开发板验证语音识别】训练手册。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

实验环境搭建

模块⼀:软件包下载及环境搭建

步骤一:搭建docker、mappper环境:

①Linux下通过Docker直接下载,获取指令:

docker pull witin/toolchain:v001.000.034

②Window环境,可以通过docker desktop来使用docker:

  1. 下载安装Docker desktop(win10或以上):
  2. 通常需要更新WSL,下载链接如下,更新后需要重启生效

旧版 WSL 的手动安装步骤 | Microsoft Learn

     3.Docker desktop 基本使用教程:

Docker-desktop(Docker桌面版)——入门篇_dockerdesktop干嘛用的-CSDN博客

     4.Docker desktop通常默认安装在c:\Program File\docker,可以通过软连接的形式修改Docker安装路径:

如何将Docker(Windows桌面版)自定义安装目录_自定义docker安装路径-CSDN博客

     5.在Docker desktop里,可以通过搜索获得witin_toolchain,我们需要的是034版本(ps:Hub反应慢可以开VPN获取,或者使用镜像路径,具体操作方式见3链接)

【基于存内计算芯片开发板验证语音识别】训练手册,语音识别,人工智能,架构,语言模型,AIGC,智能音箱,神经网络

       6.测试:

①:管理员模式下打开命令行窗口

docker run -it --name XXXX witin/toolchain:v001.000.034

②:默认进入workspace目录下,可以进入witin_mapper下执行测试脚本:

cd witin_mapper

            python3

            tests/python/frontend/onnx/witin/wtm2101/precision/XXXX.py

【基于存内计算芯片开发板验证语音识别】训练手册,语音识别,人工智能,架构,语言模型,AIGC,智能音箱,神经网络

③:使用exit退出,再次进入可按如下操作:

④:通过docker ps -a获取容器id,然后打开进入容器

【基于存内计算芯片开发板验证语音识别】训练手册,语音识别,人工智能,架构,语言模型,AIGC,智能音箱,神经网络

步骤二:搭建IDE环境

①预先下载安装包,下载安装

②默认安装路径,直接点击安装

③从主菜单的File->Open…菜单,或者点击工具栏的按钮,打开选择文件对话框,选择要打开的项目文件,即***.wmproject文件即可,点击【打开】按钮即可打开工程。如下图所示。

【基于存内计算芯片开发板验证语音识别】训练手册,语音识别,人工智能,架构,语言模型,AIGC,智能音箱,神经网络

步骤三:其他需要安装的软件

请确保安装以下环境:python, git, pytorch

步骤四:下载训练数据

① 最新数据集在软件安装包中

工程软件安装包:https://download.csdn.net/download/m0_58966968/88602575

实验环境安装包:https://download.csdn.net/download/m0_58966968/88602555

动⼿实验: 简单语音识别系统开发

模块⼀:简介

  1. WTMDK2101-X3介绍

WTMDK2101-X3是针对WTM2101 AI SOC设计的评估板,包含:

(1)WTM2101核心板,即我们的存算芯片。

(2)和I/O 板:WTM2101运行需要的电源、以及应用I/O接口等.

  1. 【基于存内计算芯片开发板验证语音识别】训练手册,语音识别,人工智能,架构,语言模型,AIGC,智能音箱,神经网络

核心板示意图

【基于存内计算芯片开发板验证语音识别】训练手册,语音识别,人工智能,架构,语言模型,AIGC,智能音箱,神经网络

 WTMDK2101-X3 I/O 板示意图

2, AISHELL-WakeUp-1数据集介绍

AISHELL-WakeUp-1数据集是中英文唤醒词语音数据库,命令词为“你好,米雅” “hi, mia”,语音数据库中唤醒词语音3936003条,1561.12小时,邀请254名发言人参与录制。录制过程在真实家居环境中,设置7个录音位,使用6个圆形16路PDM麦克风阵列录音板做远讲拾音(16kHz,16bit)、1个高保真麦克风做近讲拾音(44.1kHz,16bit)。此数据库可用于声纹识别、语音唤醒识别等研究使用。

本demo以该数据集为例,用不同网络结构展示模型训练及移植过程。

模块⼆:搭建算法训练工程,完成算法训练与量化

  1. 模型训练工程搭建:  

本demo提供DNN和DNN_DEEP两种网络结构的示例,网络结构如下,本教程以DNN为例。

   

【基于存内计算芯片开发板验证语音识别】训练手册,语音识别,人工智能,架构,语言模型,AIGC,智能音箱,神经网络

 DNN

步骤一:配置python/config.py,参数释义见代码注释。

步骤二:运行python/train.py,模型训练完毕后,在models/net_type文件夹下生成bestModel.pth,此即我们的模型权重。

步骤三:运行python/onnx_converter.py,在models/net_type文件夹下生成bestModel.onnx。此步骤即完成原始模型到知存onnx格式模型的转换。

模块三:算法模型转换

1,Dcoker下Mapper转换流程

步骤一:拷贝至指定文件夹

我们将mapper/input 拷贝至witin/toolchain:v001.000.034的指定文件夹下(通常为/home,需与gen_mapper.py文件里描述一致)

【基于存内计算芯片开发板验证语音识别】训练手册,语音识别,人工智能,架构,语言模型,AIGC,智能音箱,神经网络

步骤二:在workplace\witin_mapper下执行gen_mapper.py

docker start id

docker attach id

cd witin_mapper

python3 /home/mapper/input/gen_mapper.py

【基于存内计算芯片开发板验证语音识别】训练手册,语音识别,人工智能,架构,语言模型,AIGC,智能音箱,神经网络

步骤三:在对应的output文件下获得输出

【基于存内计算芯片开发板验证语音识别】训练手册,语音识别,人工智能,架构,语言模型,AIGC,智能音箱,神经网络

模块四:算法模型烧写

步骤一:系统连接:

进行模型烧录和开发时,我们需要将JTAG,核心板,NPU烧写板连接好,并打开开关,如系统连接示意图所示。

步骤二:

【基于存内计算芯片开发板验证语音识别】训练手册,语音识别,人工智能,架构,语言模型,AIGC,智能音箱,神经网络

系统连接示意图

步骤三:跳线帽连接:

如跳线帽连接示意图所示,按照红框标注进行跳线连接。含义解释: 

跳线

编号

跳帽连接

含义

1

VIN

VSPK

Audio DAC 芯片供电,5V

2

3.3V

AVDD

WTM2101芯片模拟供电,3.3V

3

3.3V

IOVDD

WTM2101芯片I/O供电,3.3V

4

0.9/1.2V

DVDD

用 WTM2101BC 芯片时需接跳帽

5

GND

BOOT0

启动模式,SRAM启动

6

32K

XTAL

晶振

7

RXD

P17

串口

8

TXD

P16

9

PERIV

3.3V

QSPI Flash、数字麦克风、晶振供电,与 IOVDD 选择一致,即3.3V

10

P13

WS

I2S 功放的WS

11

P12

CK

I2S 功放的CK

12

P10

SDO

I2S 功放的SDO

13

P05

DMDIN

数字麦克风的Din

14

P06

DMCK

数字麦克风的CK

     【基于存内计算芯片开发板验证语音识别】训练手册,语音识别,人工智能,架构,语言模型,AIGC,智能音箱,神经网络

跳线帽连接示意图

步骤四

使用project/ WitinProgramTool_WTM2101下的WitinProgramTool.exe进行模型权重烧写。烧写时的开发板接线请参考其他文档。

步骤五:烧写指令:

.\WitinProgramTool.exe -m init

.\WitinProgramTool.exe -m program -i XXXX\map.csv -k 2

其中XXXX为步骤2.(3)中生成的mapper/output/map

示例:

【基于存内计算芯片开发板验证语音识别】训练手册,语音识别,人工智能,架构,语言模型,AIGC,智能音箱,神经网络

模块五:算法模型在芯片运行推理

步骤一:

从官网下载知存IDE Witmem Studio。

步骤二:

生成的mapper/output/register.c放在project/Model使用Witmem Studioproject/Project/SES-RISCV/Demo.wmproject。

【基于存内计算芯片开发板验证语音识别】训练手册,语音识别,人工智能,架构,语言模型,AIGC,智能音箱,神经网络

步骤三:Target->Download下载工程:

【基于存内计算芯片开发板验证语音识别】训练手册,语音识别,人工智能,架构,语言模型,AIGC,智能音箱,神经网络

注:本demo所用为x3开发板,所用串口GPIO为16,17。若是其他开发板,请根据情况修改串口。

步骤四

打开tools中的串口工具,设置波特率115200,查看准确率输出

【基于存内计算芯片开发板验证语音识别】训练手册,语音识别,人工智能,架构,语言模型,AIGC,智能音箱,神经网络

至此,我们完成了基于存内计算X3开发板的语音识别从训练到部署全流程,本教程结束。

实践存内计算X3开发板咨询📫:cheng.chen@witintech.com文章来源地址https://www.toymoban.com/news/detail-765732.html

到了这里,关于【基于存内计算芯片开发板验证语音识别】训练手册的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • RK3399驱动开发 | 15 - RTC实时时钟芯片HYM8563S调试(基于linux5.4.32内核)

    Linux内核中使用RTC设备来提供硬件时间,为了兼容各种各样的RTC硬件,Linux内核提供了R

    2024年02月09日
    浏览(34)
  • 基于MM32SPIN360C芯片的低压无刷电机设计 电机开发板驱动有感 BLDC 的操作方法

    近年来,无刷直流电动机在众多领域中得到广泛应用。无论是电动汽车、家用电器,还是工业控制和医疗器械都有它的身影。无刷直流电动机之所以如此广受青睐,除了保持了有刷直流电动机优越的启动性能和调速性能外,其最大的特点就是没有换向器和电刷组成的机械接触

    2023年04月09日
    浏览(28)
  • RK3399驱动开发 | 21 -Marvell交换机芯片88E6390X调试(基于linux主线5.4.32内核)

    88E6390X芯片是Marvell的一款11端口交换器芯片,有1个CPU端口、8个10/100/1000Mbsp以太网端口、两个XAUI/RXAUI/2500光口。 RK3399只有一个MAC控制器,所以只能外接一个PHY芯片作为网口,但有了外部的交换机芯片后,连接架构如下:

    2024年02月13日
    浏览(32)
  • 【网络BSP开发经验】交换芯片驱动开发1(RTL8306MB交换芯片驱动开发)

    SMI 是MMI管理总线具有 MDIO和MDC两根线,它允许带有smi的外部设备控制PHY的状态以及内部寄存器。 MII(Media Independent interface)即介质无关接口,它是IEEE-802.3定义的行业标准,是MAC与PHY之间的接口。MII数据接口包含16个信号和2个管理接口信号,如下图所示: RMII接口有12个信号线

    2024年02月08日
    浏览(56)
  • 人工智能芯片开发板介绍

    人工智能芯片开发板是专为开发和实现人工智能应用而设计的硬件平台。它们集成了高性能的人工智能芯片、多种传感器、丰富的接口和开发工具,为开发人员提供了便捷的环境来构建、训练和部署人工智能模型。 这些开发板具备强大的处理能力,采用GPU、FPGA或专用的AI加速

    2024年02月07日
    浏览(39)
  • 嵌入式音频开发:Codec芯片ES8311的驱动开发

    嵌入式音频开发:Codec芯片ES8311的驱动开发 随着物联网和嵌入式系统的快速发展,嵌入式音频设备的需求也越来越高。Codec芯片作为嵌入式音频处理的核心组件之一,能够实现音频采集、编码、解码等功能。本文将重点介绍如何进行Codec芯片ES8311的驱动开发,以满足嵌入式音频

    2024年02月04日
    浏览(35)
  • STM32外设芯片驱动学习记录 —— (二) PCA9555 IO扩展芯片驱动开发

    一、芯片介绍 二、Datasheet解读 1.硬件说明 2.寄存器说明 3.通信过程 三、驱动代码编写 1.软件I2C驱动 2. PCA9555芯片驱动函数 总结         PCA9555可设置16路输入或输出口,I2C接口,用于IO扩展,3个硬件地址引脚寻址,工作电压:VCC(2.3V 至 5.5V)。 1)框图   INT:中断输出 A0,

    2024年02月11日
    浏览(36)
  • ESP32-C2开发板 ESP8684芯片 兼容ESP32-C3开发

    C2是一个芯片采用4毫米x 4毫米封装,与272 kB内存。它运行框架,例如ESP-Jumpstart和ESP造雨者,同时它也运行ESP-IDF。ESP-IDF是Espressif面向嵌入式物联网设备的开源实时操作系统,受到了全球用户的信赖。它由支持Espressif以及所有ESP32芯片的社区。ESP32-C2的ROM代码经过优化,减少了对

    2024年02月14日
    浏览(28)
  • STM32开发(15)----芯片内部温度传感器

    本章介绍STM32芯片温度传感器的使用方法和获取方法。 STM32 有一个内部的温度传感器,可以用来测量 CPU 及周围的温度( 内部温度传感器更适合于检测温度的变化,需要测量精确温度的情况下,应使用外置传感器 )。对于 STM32F103来说,该温度传感器在内部和 ADC1_IN16 输入通道相

    2024年02月05日
    浏览(30)
  • S-35390A计时芯片介绍及开发方案

    S-35390A芯片是计时芯片,一般用来计算时间。低功耗,宽电压,受温度影响小,适用于很多电路。它有一个问题,不阻止用户设置不存在的时间,设置进去之后计时或者闹钟定时会出错。 首先我们先读懂这个芯片是怎么用的。 基本上一看这个引脚表就知道大概,1号和5号引脚

    2024年02月22日
    浏览(29)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包