ESPnet 是一个端到端的语音处理工具包,涵盖了端到端的语音识别、文本到语音、语音翻译、语音增强、说话者分类、口语理解等。ESPnet 使用pytorch作为深度学习引擎,还遵循Kaldi风格的数据处理、特征提取/格式和配方,为各种语音处理实验提供完整的设置。

github直通车

克隆

git clone https://github.com/espnet/espnet

官网文档

安装ESPnet

使用官网安装的过程会很慢,下载限速

手动下载相关包

cd <espnet-root>/tools
make CPU_ONLY=0

官网安装

$ cd <espnet-root>/tools
$ make

Makefile 尝试安装 ESPnet 和所有依赖项,包括 PyTorch。您还可以指定 PyTorch 版本,例如:

$ cd <espnet-root>/tools
$ make TH_VERSION=1.10.1

请注意,CUDA 版本是从nvcc命令派生的。如果您想指定其他 CUDA 版本,您需要提供CUDA_VERSION.

$ cd <espnet-root>/tools
$ make TH_VERSION=1.10.1 CUDA_VERSION=11.3

如果您没有nvcc命令,则默认情况下会为 CPU 模式安装软件包。如果您要手动打开它,请提供CPU_ONLY选项。

$ cd <espnet-root>/tools
$ make CPU_ONLY=0

检测安装了哪些包

cd <espnet-root>/tools
. ./activate_python.sh; python3 check_install.py

自定义工具安装

某些仅用于特定任务的软件包,例如 Transducer ASR、日语 TTS 等,默认情况下未安装,因此如果您在运行这些配方时遇到一些安装错误,您需要选择安装它们。

例如

  • 安装 Warp CTC

    cd <espnet-root>/tools
    . activate_python.sh
    . ./setup_cuda_env.sh <cuda-root>  # e.g. <cuda-root> = /usr/local/cuda
    ./installers/install_warp-ctc.sh
    
  • 安装翘曲传感器

    cd <espnet-root>/tools
    . activate_python.sh
    . ./setup_cuda_env.sh <cuda-root>  # e.g. <cuda-root> = /usr/local/cuda
    ./installers/install_warp-transducer.sh
    
  • 安装 PyOpenJTalk

    cd <espnet-root>/tools
    . activate_python.sh
    ./installers/install_pyopenjtalk.sh
    
  • 使用 pip 安装模块:例如安装 ipython

    cd <espnet-root>/tools
    . activate_python.sh
    pip install ipython
    

必须安装的工具

安装语言模型工具:kenlm

官网安装教程

安装之前要安装相关依赖

sudo apt-get install build-essential libboost-all-dev cmake zlib1g-dev libbz2-dev liblzma-dev
wget -O - https://kheafield.com/code/kenlm.tar.gz |tar xz
mkdir kenlm/build
cd kenlm/build
cmake ..
make -j2

用法

espnet/              # Python modules
utils/               # Utility scripts of ESPnet
test/                # Unit test
test_utils/          # Unit test for executable scripts
egs/                 # The complete recipe for each corporaan4/             # AN4 is tiny corpus and can be obtained freely, so it might be suitable for tutorialasr1/          # ASR recipe- run.sh   # Executable script- cmd.sh   # To select the backend for job scheduler- path.sh  # Setup script for environment variables- conf/    # Containing Configuration files- steps/   # The steps scripts from Kaldi- utils/   # The utils scripts from Kalditts1/          # TTS recipe...

一套流程

在学习一个案例之前一定要把这个跑通才可以,否则无法看懂这些都是做了什么

# 运行前conda的环境要切换到安装espnet时候的环境,否则会报错
./run.sh

这个脚本里面包含了所有的步骤,数据下载,数据准备,特征提取,模型训练,解码和评分

脚本介绍

脚本名称 参数 功能
local/data.sh =数据路径 数据预处理
scripts/utils/perturb_data_dir_speed.sh =扰动因子 =训练数据路径 =生成数据路径 生成数据增强的目录
utils/combine_data.sh =数据增强的目录 =生成后的目录 数据增强
utils/copy_data_dir.sh 复制数据目录
scripts/audio/format_wav_scp.sh 格式化wav.scp
steps/make_fbank_pitch.sh 特征提取fbank_pitch
scripts/feats/feat_to_shape.sh 获取特征维度
pyscripts/feats/feat-to-shape.py 写入特征维度文件
utils/filter_scp.pl 清理短句子
utils/fix_data_dir.sh kaldi中的文件,用于检测win.scp和text文件排序是否正确,去掉句子没有的特征

使用dock进行

sudo ./run.sh --docker-gpu -1 --is-egs2 --docker-egs aishell3/tts1 --ngpu 0
sudo ./run.sh --docker-gpu -1 --is-egs2 --docker-egs aishell3/tts1 --ngpu 0
sudo docker ps
sudo docker exec -it a6a5ecc729f9 /bin/bash # 进入后台运行容器sudo docker ps -a # 查看存在的容器
sudo docker rm 64fad9048303 # 移除容器sudo docker images # 查看镜像
# 打开容器
sudo docker run -it espnet/espnet:cpu-latest /bin/bash
#
sudo docker run -it 281be2aa3c14 bash

常见报错

run.pl

多半是环境问题,要么是没有配置好,要么是包没有安装

# 报错
ModuleNotFoundError: No module named 'espnet'# 解决
rm -f activate_python.sh && touch activate_python.sh
make

语音识别框架之ESPnet相关推荐

  1. 语音识别框架最新进展——深度全序列卷积神经网络登场

    干货|语音识别框架最新进展--深度全序列卷积神经网络登场 2016-08-05 17:03 转载 陈杨英杰 1条评论 导读:目前最好的语音识别系统采用双向长短时记忆网络(LSTM,LongShort ...

  2. 干货|详解最新语音识别框架 深度全序列卷积神经网络

    原标题:干货|详解最新语音识别框架 深度全序列卷积神经网络 导读:目前最好的语音识别系统采用双向长短时记忆网络(LSTM,LongShort Term Memory),但是,这一系统存在训练复杂度高. ...

  3. NVIDIA背书-Kaldi是目前最受欢迎的开源语音识别框架

    全球着名视觉技术厂家NVIDIA在最近的GPU技术大会为Kaldi背书.根据NVIDIA声明,它认为Kaldi是目前全球最受欢迎的开源语音识别框架.该公司在人工智能和语音识别方面投入了大量的资源,重点 ...

  4. python 语音识别 windows_对Python 语音识别框架详解

    如下所示: from win32com.client import constants import os import win32com.client import pythoncom speake ...

  5. Python 语音识别框架

    Python 语音识别框架 from win32com.client import constants import os import win32com.client import pythonco ...

  6. 干货|语音识别框架最新进展——深度全序列卷积神经网络登场

    干货|语音识别框架最新进展--深度全序列卷积神经网络登场 2016-08-05 17:03 转载 陈杨英杰 1条评论 导读:目前最好的语音识别系统采用双向长短时记忆网络(LSTM,LongShort ...

  7. LAS语音识别框架发展简述

    LAS识别框架发展简述 LAS模型 模型综述 Listener部分 attend-spell learning decoding and rescoring LAS模型的缺点即改进方法 缺点 改进方法 ...

  8. python语音识别框架_横评:五款免费开源的语音识别工具

    编者按:本文原作者 Cindi Thompson,美国德克萨斯大学奥斯汀分校(University of Texas at Austin)计算机科学博士,数据科学咨询公司硅谷数据科学(Silicon ...

  9. 强大的端到端语音识别框架—RNN-T

    前言: 基于联结时序分类(CTC)的声学模型不再需要对训练的音频序列和文本序列进行强制对齐,实际上已经初步具备了端到端的声学模型建模能力.但是CTC模型进行声学建模存在着两个严重的瓶颈,一是缺乏语言模 ...

最新文章

  1. python3菜鸟教程-总算理解python3中文入门教程
  2. 有关数据库的多库查询
  3. vue-source的实例
  4. 基于Blink构建亲听项目以及全链路debug项目实时响应能力
  5. mysql8.0.4以后_mysql官方源从8.0.3直接通过yum源升级到8.0.4后启动不成功解决方法...
  6. java 指定字段排序规则_Java之对List里面的元素实现按指定字段排序的方法
  7. 人脸标注工具源码解读
  8. 数据结构与算法(Python)第一天
  9. 阶段1 语言基础+高级_1-3-Java语言高级_07-网络编程_第3节 综合案例_文件上传_3_综合案例_文件上传案例的服务器端...
  10. 删除excel 2007数据透视表
  11. 台式计算机有线无线网卡设置,笔记本/台式电脑有线网络转无线wifi教程
  12. Layui字体图标大全
  13. 华为内容安全反病毒总结
  14. Ubuntu18.04 安装NVIDIA英伟达驱动教程
  15. 访问者模式(Vistor Pattern)
  16. MFO问题与MFEA算法
  17. 图解卷积前后图像尺寸的关系
  18. 【开源SPL】列存数据仓库怎样更高效
  19. 柯基数据携手亚马逊云科技打造一站式知识图谱平台案例
  20. matlab画磁滞回线,[画图的问题]怎么画类似于磁滞回线的图像?一个x值对应两个y值的...

热门文章

  1. Vue上传图片并展示
  2. 我是如何要到京东客服小姐姐的QQ的
  3. 央视知名制片人王利芬辞职创业(优米网)
  4. 物联网技术部培训——网页前端之HTML
  5. MMC, SDIO, SD
  6. 立体声、双声道、单声道的区别
  7. js遍历数组中的对象并拿到值
  8. CP.26对称矩阵及正定性
  9. Insar 课程学习
  10. 代码随想录训练营day37