操作系统 : Ubuntu18.04_x64

gcc版本 :7.4.0

简介

Kaldi诞生于2009年的JohnsHopkins University,刚开始项目重点是子空间高斯模型(SGMM)建模和词汇学习抽样调查,代码也是基于HTK进行的开发,现在也是C++作为主要语言。但是随着更多参与者的加入,特别是对深度神经网络(DNN)的支持,让Kaldi的发展超过了其他几个著名开源项目。更重要的是Kaldi的维护和更新非常及时,基本上每天都有新的进展报告,而且在跟进学术研究的新算法方面也更加快速。国外很多公司和研究机构也都在用Kaldi平台,当然国内更多的公司,其实也是基于这个平台做的改进,特别是最近几年新兴的公司和企业研究院。

官方网址: http://kaldi-asr.org/

github地址:https://github.com/kaldi-asr/kaldi

编译

获取源码:

git clone https://github.com/kaldi-asr/kaldi

查看安装步骤:

$ cat kaldi/INSTALL
This is the official Kaldi INSTALL. Look also at INSTALL.md for the git mirror installation.
[for native Windows install, see windows/INSTALL] ()
go to tools/ and follow INSTALL instructions there. ()
go to src/ and follow INSTALL instructions there. $

即:
1、进入 tools 目录,按照 INSTALL 的说明进行安装;

执行 extras/check_dependencies.sh 检查依赖项,根据提示进行安装;
然后执行 make -j 命令进行make(其中8是make时的并发数,可根据cpu数量修改);

2、安装好 tools 目录内容后,进入 src 目录,按照 INSTALL 的说明进行安装;

./configure --shared
make depend -j
make -j

其中8是make时的并发数,可根据cpu数量修改。

使用示例

目录: kaldi/egs/yesno

训练文件: http://www.openslr.org/resources/1/waves_yesno.tar.gz

运行脚本:

source path.sh
export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:/root/src/kaldi/tools/openfst/lib
./run.sh

正常结束:

...
local/score.sh --cmd utils/run.pl data/test_yesno exp/mono0a/graph_tgpr exp/mono0a/decode_test_yesno
local/score.sh: scoring with word insertion penalty=0.0,0.5,1.0
%WER 0.00 [ / , ins, del, sub ] exp/mono0a/decode_test_yesno/wer_10_0. 

如果下载源码或训练文件过慢,可从我分享的链接中获取。

本文对应资源地址:https://pan.baidu.com/s/1ygrlvjgAcw0cXpQpIjNQIQ&shfl=sharepset

可关注微信公众号后回复 19101901 获取提取码。

本文github地址:

https://github.com/mike-zhang/mikeBlogEssays/blob/master/2019/20191019_kaldi编译及简单使用.rst

kaldi简介及安装的更多相关文章

  1. Node.js 教程 01 - 简介、安装及配置

    系列目录: Node.js 教程 01 - 简介.安装及配置 Node.js 教程 02 - 经典的Hello World Node.js 教程 03 - 创建HTTP服务器 Node.js 教程 0 ...

  2. Java Gradle入门指南之简介、安装与任务管理

        这是一篇Java Gradle入门级的随笔,主要介绍Gradle的安装与基本语法,这些内容是理解和创建build.gradle的基础,关于Gradle各种插件的使用将会在其他随笔中介绍.    ...

  3. 细细品味Storm_Storm简介及安装

    Storm是由专业数据分析公司BackType开发的一个分布式实时数据处理软件,可以简单.高效.可靠地处理大量的数据流.Twitter在2011年7月收购该公司,并于2011年9月底正式将Storm项 ...

  4. VMware vSphere 5.1 简介与安装

    虚拟化系列-VMware vSphere 5.1 简介与安装  标签: 虚拟化 esxi5.1 VMware vSphere 5.1 原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 . ...

  5. Nutch搜索引擎(第2期)_ Solr简介及安装

    1.Solr简介 Solr是一个高性能,采用Java5开发,基于Lucene的全文搜索服务器.同时对其进行了扩展,提供了比Lucene更为丰富的查询语言,同时实现了可配置.可扩展并对查询性能进行了优化 ...

  6. Node.js的简介和安装

    一.Node.js的简介和安装 a)       什么是Node.js? Node.js是一个开发平台 让JavaScript运行在服务器端的开发平台 ---简单点说就是用JavaScript写服务器 ...

  7. Nutch之简介与安装

    初学Nutch之简介与安装 初学Nutch之简介与安装   1.Nutch简介 Nutch是一个由Java实 现的,开放源代码(open-source)的web搜索引擎.主要用于收集网页数据,然后对其 ...

  8. Nutch搜索引擎Solr简介及安装

    Nutch搜索引擎(第2期)_ Solr简介及安装   1.Solr简介 Solr是一个高性能,采用Java5开发,基于Lucene的全文搜索服务器.同时对其进行了扩展,提供了比Lucene更为丰富的 ...

  9. DNN简介以及安装

    开源框架DNN简介以及安装 donetnuke 是一款免费的开源cms框架,目前也有收费版,不过免费版也可以适应大家大部分的需求.我前些阵子是老板让我在20天内,做好一个官网并且发布,并且指定使用dn ...

随机推荐

  1. 垂直方向margin重叠原因与解决方法

    参考博客:https://blog.csdn.net/weixin_33743661/article/details/88755435

  2. 信道估计之LS

    在无线通信系统中,系统的性能主要受到无线信道的制约.基站和接收机之间的传播路径复杂多变,从简单的视距传输到受障碍物反射.折射.散射影响的传播.在无线传输环境中,接收信号会存在多径时延,时间选择性衰落和 ...

  3. DefinePlugin插件用法

    作者:水涛 座右铭:天行健,君子以自强不息 自白:我写博文上来蹭蹭就是干,我突然觉得我需要幽默一点了,好了,下面我们说正经的 一.官方定义: DefinePlugin DefinePlugin 允许创 ...

  4. 中文分词接口api,采用结巴分词PHP版中文分词接口

    中文分词,分词就是将连续的字序列按照一定的规范重新组合成词序列的过程.我们知道,在英文的行文中,单词之间是以空格作为自然分界符的,而中文只是字.句和段能通过明显的分界符来简单划界,唯独词没有一个形式上 ...

  5. 2016/10/21 java中的参数传方式

    参考:http://blog.sina.com.cn/s/blog_59ca2c2a0100qhjx.html http://www.cnblogs.com/caiyao/p/4964176.html

  6. 《Java基础知识》Java final关键字:阻止继承和多态

    在 Java 中,声明类.变量和方法时,可使用关键字 final 来修饰.final 所修饰的数据具有“终态”的特征,表示“最终的”意思.具体规定如下: final 修饰的类不能被继承. final ...

  7. c++-多态和vptr指针

    多态的原理 #define _CRT_SECURE_NO_WARNINGS #include <iostream> using namespace std; class Parent { ...

  8. 换了网线异常了,CRS无法正常启动,clssnmSendingThread: sending status msg to all nodes

    换了网线异常了,CRS无法正常启动,clssnmSendingThread: sending status msg to all nodes同事换网线前我将节点2正常关闭了,换完网线告诉我,发现节点2 ...

  9. node.js+mysql用户的注册登录验证

    下面代码实现的功能是:用node.js连接mysql实现用户的注册和登录,这里主要实现的是后端的验证代码,前端显示部分没具体写出. 整个程序的流程是这样的: 1.首先建立数据库reji,数据表user ...

  10. 局域网地址为什么是192.168.X.X?为什么连上公司的VPN就上不了网?

    注:本文主要目的是给程序员讲述一些局域网/VPN的基本知识,并不涉及到具体的实操.关于如何安装VPN服务器.配置VPN客户端及修改Windows路由表等具体实操内容,请自行搜索. RFC 局域网地址为 ...