美文网首页
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