Kaldi语音识别快速入门
一.简介
Kaldi是使用C++编写的语音识别工具包,Apache License v2.0许可。主要供语音识别研究人员使用。Kaldi的目标和范围与HTK类似。目标是拥有易于修改和扩展的现代而灵活的代码。主要功能包括:
1.与有限状态传感器FST的代码进行集成,根据OpenFst工具箱【作为库】进行编译。
2.广泛的线性代数支持,包括一个包装标准BLAS和LAPACK例程的矩阵库。
3.可扩展的设计,以方便使用为目的提供算法。
二.安装Kaidi
1.下载
在Linux你要安装的目录下执行:git clone https://github.com/kaldi-asr/kaldi.git kaldi --origin upstream
2.更新
当需要更新时,可以执行:git pull
3.安装环境
理想的计算环境是运行在SGE【Sun GridEngine】的Linux机器的集群上,可以通过NFS或某些类似的网络文件系统访问共享目录。在理想情况下,网格上的某些计算机将具有NVidia GPU,这样可以将它们用于神经网络的训练,并且可以通过向qsub添加一些额外的选型将它们保留在队列中。在实际情况或用于学习时,可能单机是比较普遍的,在单机情况下,Kaldi是可以运行的,尽管这样做会执行的慢一点,并且可能必须要减少某些示例脚本中使用的作业数量,以免耗尽机器的内存。
4.所需的软件包
1.Git这是下载Kaldi及其依赖的其他软件所必须的。
2.wget是安装某些非Kaldi组件时所必须的。
3.示例脚本需要标准的UNIX实用程序,例如bash,perl,awk,grep和make。
5.安装依赖
执行命令:cd kaldi/tools/
执行命令:./check_dependencies.sh脚本检查需要安装的依赖

注意:你的机器上可能提示的比这多,这就需要单独执行yum install xxx -y进行逐个安装!
在安装可能会报这个异常:

此时可以安装gcc的gfortran


再次执行检测脚本,可以查看已经完成所有依赖的安装

6.编译
然后执行:cd .. 回退到上一级,接着执行make进行安装【make中也会执行检测脚本】

若最后提示报错

这是因为openfst-1.6.7在解压时内存不足报错,之后重试时重新下载了jar包命名为openfst-1.6.7.tar.gz.1。解决方案是删除之前的jar包和解压好的文件夹,之后重命名Jar包【mv openfst-1.6.7.tar.gz.1 openfst-1.6.7.tar.gz】后重新执行make进行编译
编译成功

w
Kaldi语音识别快速入门的更多相关文章
- Web Api 入门实战 (快速入门+工具使用+不依赖IIS)
平台之大势何人能挡? 带着你的Net飞奔吧!:http://www.cnblogs.com/dunitian/p/4822808.html 屁话我也就不多说了,什么简介的也省了,直接简单概括+demo ...
- SignalR快速入门 ~ 仿QQ即时聊天,消息推送,单聊,群聊,多群公聊(基础=》提升)
SignalR快速入门 ~ 仿QQ即时聊天,消息推送,单聊,群聊,多群公聊(基础=>提升,5个Demo贯彻全篇,感兴趣的玩才是真的学) 官方demo:http://www.asp.net/si ...
- 前端开发小白必学技能—非关系数据库又像关系数据库的MongoDB快速入门命令(2)
今天给大家道个歉,没有及时更新MongoDB快速入门的下篇,最近有点小忙,在此向博友们致歉.下面我将简单地说一下mongdb的一些基本命令以及我们日常开发过程中的一些问题.mongodb可以为我们提供 ...
- 【第三篇】ASP.NET MVC快速入门之安全策略(MVC5+EF6)
目录 [第一篇]ASP.NET MVC快速入门之数据库操作(MVC5+EF6) [第二篇]ASP.NET MVC快速入门之数据注解(MVC5+EF6) [第三篇]ASP.NET MVC快速入门之安全策 ...
- 【番外篇】ASP.NET MVC快速入门之免费jQuery控件库(MVC5+EF6)
目录 [第一篇]ASP.NET MVC快速入门之数据库操作(MVC5+EF6) [第二篇]ASP.NET MVC快速入门之数据注解(MVC5+EF6) [第三篇]ASP.NET MVC快速入门之安全策 ...
- Mybatis框架 的快速入门
MyBatis 简介 什么是 MyBatis? MyBatis 是支持普通 SQL 查询,存储过程和高级映射的优秀持久层框架.MyBatis 消除 了几乎所有的 JDBC 代码和参数的手工设置以及结果 ...
- grunt快速入门
快速入门 Grunt和 Grunt 插件是通过 npm 安装并管理的,npm是 Node.js 的包管理器. Grunt 0.4.x 必须配合Node.js >= 0.8.0版本使用.:奇数版本 ...
- 【第一篇】ASP.NET MVC快速入门之数据库操作(MVC5+EF6)
目录 [第一篇]ASP.NET MVC快速入门之数据库操作(MVC5+EF6) [第二篇]ASP.NET MVC快速入门之数据注解(MVC5+EF6) [第三篇]ASP.NET MVC快速入门之安全策 ...
- 【第四篇】ASP.NET MVC快速入门之完整示例(MVC5+EF6)
目录 [第一篇]ASP.NET MVC快速入门之数据库操作(MVC5+EF6) [第二篇]ASP.NET MVC快速入门之数据注解(MVC5+EF6) [第三篇]ASP.NET MVC快速入门之安全策 ...
随机推荐
- 关于setImageURI out of memory的一些解决办法
http://stackoverflow.com/questions/477572/strange-out-of-memory-issue-while-loading-an-image-to-a-bi ...
- Linux下Nginx的安装(二)
一.安装Nginx ## 安装前准备 ## #GNU编译器集合 #Nginx编译需要PCRE #在Nginx的各种模块中需要使用gzip压缩 #在Nginx中,如果服务器提供安全网页时则会用到Open ...
- Spring Boot中以代码方式配置Tomcat
在Spring Boot2.0以上配置嵌入式Servlet容器时EmbeddedServletContainerCustomizer类不存在,经网络查询发现被WebServerFactoryCusto ...
- SCITE设置修改说明
SCITE设置修改说明选项→打开全局设置文件:1.启动时最大化:position.width=-1position.height=-12.用于中文系统,要修改语言.code.page=936outpu ...
- [LeetCode] 486. Predict the Winner 预测赢家
Given an array of scores that are non-negative integers. Player 1 picks one of the numbers from eith ...
- 利用SQL生成模型实体类
DECLARE @TableName sysname = 'TableName'; DECLARE @Result VARCHAR(MAX) = 'public class ' + @TableNam ...
- 分布式数据库缓存系统Apache Ignite
Apache Ignite内存数据组织是高性能的.集成化的以及分布式的内存平台,他可以实时地在大数据集中执行事务和计算,和传统的基于磁盘或者闪存的技术相比,性能有数量级的提升. 将数据存储在缓存中能够 ...
- vue系列--vue是如何实现绑定事件
一.前言 vuejs中的事件绑定,使用<v-on:事件名 = 函数名>来完成的,这里函数名是定义在Vue实例中的methods对象中的,Vue实例可以直接访问其中的方法. 二.事件绑定方式 ...
- (十一)golang--键盘输入
两种方式:fmt.Scanln()和fmt.Scanf() (1)fmt.Scanln package main import "fmt" func main() { //获取一行 ...
- Oracle 自定义函数实现列转行效果
在 Oracle 领域,我相信一说到列转行大部分人都会立马想到 WM_CONCAT 函数,我觉得主要是因为该函数比较实用.但事实上 WM_CONCAT 并非官方公开函数,使用会存在一定的风险:函数返回 ...