美文网首页
Kaldi 安装与简介

Kaldi 安装与简介

作者: 乘瓠散人 | 来源:发表于2018-12-17 11:57 被阅读32次

    Kaldi是一个强大的语音识别工具包,目前支持GMM-HMM,DNN-HMM等多种语音识别模型的训练和预测。其中DNN-HMM中的神经网络还可以由配置文件自定义,DNN,CNN,TDNN,LSTM,Bidirectional-LSTM等神经网络结构均可支持。
    https://github.com/kaldi-asr/kaldi下载代码,在http://kaldi-asr.org/doc/查看文档。

    安装过程
    • sudo apt-get install autoconf automake gcc libtool subversion libatlas-dev libatlas-base-dev gfortran
    • git clone https://github.com/kaldi-asr/kaldi.git
    • cd kaldi/tools
    • cat INSTALL #该文件描述了详细的安装步骤
    • extras/check_dependencies.sh #检查一些依赖,根据提示将没装的都装上
    • nproc #看看有多少处理单元,比如有8个
    • make -j 8
    • cd ../src
    • ./configure
    • make depend -j 8
    • make -j 8
    • 运行例子yesno进行测试:
      cd ../egs/yesno/s5
      ./run.sh
      运行结果:
      %WER 0.00 [ 0 / 232, 0 ins, 0 del, 0 sub ] exp/mono0a/decode_test_yesno/wer_10_0.0
    主要目录介绍
    • ./tools目录下是kaldi依赖的包
    • ./src目录存放kaldi的源代码
    • ./egs目录保存着一些kaldi在公共语音数据集上的训练步骤(shell脚本)以及测试的结果
      • s5/run.sh包含了在这个数据集上所有的训练步骤,包括数据预处理、训练以及测试gmm/dnn/lstm/tdnn等模型、实验结果统计在内的各种脚本。理论上来说只要相关环境配置正确,运行run.sh就能完成整个训练步骤。
      • s5/RESULTS里面保存着最近的实验结果
      • s5/conf就是一些训练所要用到的配置文件
      • s5/{local, steps, utils}里面则是run.sh所要用到的一些脚本文件

    在kaldi中,目前针对深度神经网络提供三种代码库。第一个是"nnet1"(位于nnet/和nnetbin/下),最初由Karel Vesely维护;第二个"nnet2"(位于nnet2/和nnet2bin/下)最初由Daniel Povey维护;第三个"nnet3"(位于nnet3/和nnet3bin/下)由Daniel的nnet2转化而来

    type author CPU/GPU features
    nnet1 Karel GPU单卡训练 使用pre-training,early-stopping
    nnet2 Daniel 支持多GPU训练和多CPU多线程 固定迭代次数,最后几个epoch参数平均化
    nnet3 Daniel nnet2的扩展 支持更多的网络类型(如RNN/LSTM)

    在诸如egs/wsj/s5/, egs/librispeech/s5, egs/swbd/s5, egs/hkust/s5的例子下,存在神经网络样例脚本。

    参考文章:
    Installing Kaldi
    Kaldi学习之神经网络简介
    有趣的开源软件-语音识别工具Kaldi
    ubuntu下kaldi的安装以及实例的运行

    相关文章

      网友评论

          本文标题:Kaldi 安装与简介

          本文链接:https://www.haomeiwen.com/subject/qfcqkqtx.html