美文网首页
kaldi入门学习

kaldi入门学习

作者: 马尔克ov | 来源:发表于2019-07-10 09:47 被阅读0次

1. 安装

   git clone https://github.com/kaldi-asr/kaldi.git
   cd kaldi/tools/; make; cd ../src; ./configure; make
环境问题.png
一大堆东西没装,给跪了
安装automake和autoconf
brew install wget

2. 主要目录结构

egs – 完整流程例子脚本,
misc – 辅助工具,
src – kaldi源代码,
tools – 有用的模块和工具,
windows – windows用工具.

3. pipeline

3.1 数据准备

lexicon: 文字->声音 AAW -> ey ey d ah b y uw
G.txt (bigram decoding graph, in OpenFst text format)
声音和人的映射关系: utt2spk/spk2utt

symbol-tables for words and phones (OpenFst format)


词/音素建立id-mapping

创建binary-format FST,用整数代替字符
data/G.fst(语法), data/L.fst(lexicon), data/L_disambig.fst

发声/不发声的音素id

3.2 特征提取

“ark”==archive, “scp”==script file

# head /foo/raw_mfcc.scp
trn_adg04_sr009 /foo/raw_mfcc.ark:16
trn_adg04_sr049 /foo/raw_mfcc.ark:23395
...
# head –c 20 foo/raw_mfcc.ark
trn_adg04_sr009 ^@BFM [binary data...]
archive文件 script文件

三种Table处理

TableWriter 按顺序写
SequentialTableReader 遍历读
RandomAccessTableReader 按key查指定value

为啥没有随机写?没这个场景,算都是批量算,遍历写就可以了

The Table concept 提取MFCC特征

3.3 单音训练

  1. 设置变量
  2. 创建topo文件
  3. 初始化模型(flat start of the model/ 没有split的决策树)
  4. 创建解码图


    decoding graph
  5. 对齐初始化


    alignment
  6. 单音训练


    Monophone training
  7. 多音训练
  8. 多音训练创建树
  9. 解码:创建图

训练部分有点复杂,看看其他资料,回头再补充
更多参考

kaldi文档中文翻译

相关文章

网友评论

      本文标题:kaldi入门学习

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