曦曦のblog

语音识别

实验:建立五个词的识别系统(步骤以及结果显示)

by tracylling on 四.14, 2010, under 语音识别

(PS:只作为尝试,不保证正确)

系统简介:

HTK是隐马尔可夫模型工具箱,由剑桥大学工程系研发而成。该工具箱的目的是搭建使用隐马尔可夫模型。

详见:http://htk.eng.cam.ac.uk/

搭建步骤:

a)      训练库创建:词汇集中的每个元素进行多次录制,且对相应词汇做好标签;

b)      声学分析:将波形数据文件转换为一系列系数向量;

c)      模型定义:为总词汇集中的每个元素定义一个HMM原型;

d)      模型训练:使用训练数据对每个HMM模型进行初始化、训练;

e)      任务定义:识别系统的语法(什么可被识别)的定义;

f)       未知输入信号识别;

g)      评估:识别系统的性能可通过测试数据进行评估。

工作环境构建:

创建如下目录结构:

a)      data/:存储训练和测试数据(语音信号、标签等等) ,包括2个子目录,data/train/和 data/test/,用来区分识别系统的训练数据和评估数据;

b)      analysis/:存储声学分析步骤的文件;

c)      training/:存储初始化和训练步骤的相关文件;

d)      model/:存储识别系统的模型(HMMs)的相关文件;

e)      def/:存储任务定义的相关文件;

f)       test/:存储测试相关文件。

后期要建立的几个文件:analysis.conf   targetlist.txt  hmmlist.txt   trainlist.txt

过程:

1、  建立训练资料

a. 录制音频
HSLab name.sig
b. 标记信号
在HSLab中标记信号位置

(continue reading…)

Leave a Comment :, , more...

HMM模型的各种语言实现(转)

by tracylling on 四.12, 2010, under 语音识别

C语言版:
1、 HTK(Hidden Markov Model Toolkit):
HTK是英国剑桥大学开发的一套基于C语言的隐马尔科夫模型工具箱,主要应用于语音识别、语音合成的研究,也被用在其他领域,如字符识别和DNA排序等。HTK是重量级的HMM版本。
HTK主页:http://htk.eng.cam.ac.uk/
2、 GHMM Library:
The General Hidden Markov Model library (GHMM) is a freely available LGPL-ed C library implementing efficient data structures and algorithms for basic and extended HMMs.
GHMM主页:http://www.ghmm.org/
3、 UMDHMM(Hidden Markov Model Toolkit):
Hidden Markov Model (HMM) Software: Implementation of Forward-Backward, Viterbi, and Baum-Welch algorithms.
这款属于轻量级的HMM版本。
UMDHMM主页:http://www.kanungo.com/software/software.html

Java版:
4、 Jahmm Java Library (general-purpose Java library):
Jahmm (pronounced “jam”), is a Java implementation of Hidden Markov Model (HMM) related algorithms. It’s been designed to be easy to use (e.g. simple things are simple to program) and general purpose.
Jahmm主页:http://code.google.com/p/jahmm/

Malab版:
5、 Hidden Markov Model (HMM) Toolbox for Matlab:
This toolbox supports inference and learning for HMMs with discrete outputs (dhmm’s), Gaussian outputs (ghmm’s), or mixtures of Gaussians output (mhmm’s).
Matlab-HMM主页:http://www.cs.ubc.ca/~murphyk/Software/HMM/hmm.html

Common Lisp版:
6、CL-HMM Library (HMM Library for Common Lisp):
Simple Hidden Markov Model library for ANSI Common Lisp. Main structures and basic algorithms implemented. Performance speed comparable to C code. It’s licensed under LGPL.
CL-HMM主页:http://www.ashrentum.net/jmcejuela/programs/cl-hmm/

Haskell版:
7、The hmm package (A Haskell library for working with Hidden Markov Models):
A simple library for working with Hidden Markov Models. Should be usable even by people who are not familiar with HMMs. Includes implementations of Viterbi’s algorithm and the forward algorithm.
Haskell-HMM主页:http://hackage.haskell.org/cgi-bin/hackage-scripts/package/hmm
注:Haskell是一种纯函数式编程语言,它的命名源自美国数学家Haskell Brooks Curry,他在数学逻辑方面上的工作使得函数式编程语言有了广泛的基础。

Leave a Comment : more...

HMM模型参考资料总结

by tracylling on 二.22, 2010, under 语音识别

根据自己参考几个版本的资料,进行一下总结。

1、 《人机自然交互》(张有为 等著),第一次接触HMM,看得不详细,似懂非懂的,但可以说它是中文版中比较好的参考资料,准备抽空再看一遍。

2、 HTK book,chapter1 The Fundamentals of HTK,讲HMM的基础知识 ,chapter7~10,讲HTK中的HMM,如果不好好看前面几章基本就不怎么看得懂了。

3、 http://jedlik.phy.bme.hu/~gerjanos/HMM/hoved.html ,这两天看的这个版本的,前面基本能消化了,后面的连续的模型公式实在头大。这个版本的资料写的很详细,推荐。

4、 http://www.comp.leeds.ac.uk/roger/HiddenMarkovModels/html_dev/main.html ,上面那个唯一的缺陷是例子很少,这个版本有很多例子,解释的也很详细,适合初学者。

5、 Wikipedia

Hidden Markov model

http://en.wikipedia.org/wiki/Hidden_Markov_model

Forward-backward algorithm

http://en.wikipedia.org/wiki/Forward-backward_algorithm

Viterbi algorithm

http://en.wikipedia.org/wiki/Viterbi_algorithm

Baum–Welch algorithm

http://en.wikipedia.org/wiki/Baum-Welch_algorithm

继续加油看咯~干嘛列这么复杂的公式哩!?

4 Comments :, , , , more...

Looking for something?

Use the form below to search the site:

Still not finding what you're looking for? Drop a comment on a post or contact us so we can take care of it!

Visit our friends!

A few highly recommended friends...

    Archives

    All entries, chronologically...