Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
ModelZoo
wenet_onnxruntime
Commits
af91d7d2
Commit
af91d7d2
authored
Oct 23, 2023
by
yangql
Browse files
Update README.md
parent
1fca7e1e
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
90 additions
and
89 deletions
+90
-89
README.md
README.md
+90
-89
No files found.
README.md
View file @
af91d7d2
# WeNet-Ort
## 论文
`WeNet: Production Oriented Streaming and Non-streaming End-to-End
Speech Recognition Toolkit`
-
https://arxiv.org/pdf/2102.01547.pdf
## 模型结构
WeNet是一种hybird连接主义时间分类(CTC)/注意力架构,以transformer或conformer作为编码器和注意力解码器来重新存储CTC假设。为了在统一的模型中实现流和非流,以及使用了一种基于动态块的注意力策略,该策略允许自注意力以随机长度集中在正确的上下文上。

## 算法原理
底层堆栈完全基于PyTorch及其生态系统。中间的堆栈由两部分组成。开发研究模型时,TorchScript用于开发模型,Torchaudio用于动态特征提取,分布式数据并行(DDP)用于分布式训练,torch实时(JIT)用于模型导出,PyTorch量化用于模型量化,LibTorch用于生产运行时。LibTorch产品用于托管生产模型,旨在支持各种硬件和平台,如CPU、GPU(CUDA)Linux、Android和iOS。顶部堆栈显示了对WeNet中生产管道的典型研究

## 环境配置
### Docker(方法一)
拉取镜像:
```
docker pull image.sourcefind.cn:5000/dcu/admin/base/custom:ort1.14.0_migraphx3.0.0-dtk22.10.1
docker run xxx
```
创建并启动容器,安装相关依赖:
```
docker run --shm-size 16g --network=host --name=wenet_ort --privileged --device=/dev/kfd --device=/dev/dri --group-add video --cap-add=SYS_PTRACE --security-opt seccomp=unconfined -v $PWD/wenet_onnxruntime:/home/wenet_onnxruntime -it <Your Image ID> /bin/bash
# 激活dtk
source /opt/dtk/env.sh
```
### Dockerfile(方法二)
此处提供dockerfile的使用方法
```
docker build --no-cache -t wenet_onnxruntime:2.0 .
docker run --shm-size 16g --network=host --name=wenet_ort --privileged --device=/dev/kfd --device=/dev/dri --group-add video --cap-add=SYS_PTRACE --security-opt seccomp=unconfined -v $PWD/wenet_onnxruntime:/home/wenet_onnxruntime -it <Your Image ID> /bin/bash
```
## 数据集
`此处填写公开数据集名称`
## 推理
### C++版本推理
本次采用经wenet模型完成问题语音识别任务,下面介绍如何运行C++代码示例,C++示例的详细说明见Doc目录下的Tutorial_Cpp.md。
#### 构建工程
```
export LD_LIBRARY_PATH=$PWD/openfst-1.7.6/src/lib:$LD_LIBRARY_PATH
mkdir build && cd build
cmake ..
make install
```
#### 设置环境变量
```
cd <path-to-wenet_onnxruntime>
export GLOG_logtostderr=1
export GLOG_v=2
wav_path=./Resource/BAC009S0764W0344.wav
onnx_dir=./Resource/models
units=./Resource/units.txt
```
#### 运行示例
```
# 进入wenet onnxruntime工程根目录
cd <path_to_wenet_onnxruntime>
# 执行示例程序
./build/Src/bin/decoder_main --onnx_dir $onnx_dir --wav_path $wav_path --unit_path $units 2>&1 | tee log.txt
```
## result
```
test Final result: 脚踝和小腿的能力变弱
Decoded 3091ms audio taken 466ms.
Total: decoded 3091ms audio taken 466ms.
RTF: 0.1508
```
### 精度
无
## 应用场景
### 算法类别
`语音识别`
### 热点应用行业
`制造`
,
`金融`
,
`交通`
,
`教育`
## 源码仓库及问题反馈
-
https://developer.hpccube.com/codes/modelzoo/wenet-ort
## 参考资料
-
https://github.com/wenet-e2e/wenet
-
https://wenet.org.cn/wenet/
# WeNet-Ort
## 论文
`WeNet: Production Oriented Streaming and Non-streaming End-to-End
Speech Recognition Toolkit`
-
https://arxiv.org/pdf/2102.01547.pdf
## 模型结构
WeNet是一种hybird连接主义时间分类(CTC)/注意力架构,以transformer或conformer作为编码器和注意力解码器来重新存储CTC假设。为了在统一的模型中实现流和非流,以及使用了一种基于动态块的注意力策略,该策略允许自注意力以随机长度集中在正确的上下文上。

## 算法原理
底层堆栈完全基于PyTorch及其生态系统。中间的堆栈由两部分组成。开发研究模型时,TorchScript用于开发模型,Torchaudio用于动态特征提取,分布式数据并行(DDP)用于分布式训练,torch实时(JIT)用于模型导出,PyTorch量化用于模型量化,LibTorch用于生产运行时。LibTorch产品用于托管生产模型,旨在支持各种硬件和平台,如CPU、GPU(CUDA)Linux、Android和iOS。顶部堆栈显示了对WeNet中生产管道的典型研究

## 环境配置
### Docker(方法一)
拉取镜像:
```
docker pull image.sourcefind.cn:5000/dcu/admin/base/custom:ort1.14.0_migraphx3.0.0-dtk22.10.1
docker run xxx
```
创建并启动容器,安装相关依赖:
```
docker run --shm-size 16g --network=host --name=wenet_ort --privileged --device=/dev/kfd --device=/dev/dri --group-add video --cap-add=SYS_PTRACE --security-opt seccomp=unconfined -v $PWD/wenet_onnxruntime:/home/wenet_onnxruntime -it <Your Image ID> /bin/bash
# 激活dtk
source /opt/dtk/env.sh
```
### Dockerfile(方法二)
此处提供dockerfile的使用方法
```
docker build --no-cache -t wenet_onnxruntime:2.0 .
docker run --shm-size 16g --network=host --name=wenet_ort --privileged --device=/dev/kfd --device=/dev/dri --group-add video --cap-add=SYS_PTRACE --security-opt seccomp=unconfined -v $PWD/wenet_onnxruntime:/home/wenet_onnxruntime -it <Your Image ID> /bin/bash
```
## 数据集
`此处填写公开数据集名称`
## 推理
### C++版本推理
本次采用经wenet模型完成问题语音识别任务,首先需要下载模型至Resouce/Models/,链接:https://pan.baidu.com/s/1aUt6LRcspYLAmmWu0fFTdQ
提取码:sodg,下面介绍如何运行C++代码示例,C++示例的详细说明见Doc目录下的Tutorial_Cpp.md。
#### 构建工程
```
export LD_LIBRARY_PATH=$PWD/openfst-1.7.6/src/lib:$LD_LIBRARY_PATH
mkdir build && cd build
cmake ..
make install
```
#### 设置环境变量
```
cd <path-to-wenet_onnxruntime>
export GLOG_logtostderr=1
export GLOG_v=2
wav_path=./Resource/BAC009S0764W0344.wav
onnx_dir=./Resource/models
units=./Resource/units.txt
```
#### 运行示例
```
# 进入wenet onnxruntime工程根目录
cd <path_to_wenet_onnxruntime>
# 执行示例程序
./build/Src/bin/decoder_main --onnx_dir $onnx_dir --wav_path $wav_path --unit_path $units 2>&1 | tee log.txt
```
## result
```
test Final result: 脚踝和小腿的能力变弱
Decoded 3091ms audio taken 466ms.
Total: decoded 3091ms audio taken 466ms.
RTF: 0.1508
```
### 精度
无
## 应用场景
### 算法类别
`语音识别`
### 热点应用行业
`制造`
,
`金融`
,
`交通`
,
`教育`
## 源码仓库及问题反馈
-
https://developer.hpccube.com/codes/modelzoo/wenet-onnxruntime
## 参考资料
-
https://github.com/wenet-e2e/wenet
-
https://wenet.org.cn/wenet/
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment