【问题标题】:Speaker adaptation with HTK使用 HTK 进行扬声器适配
【发布时间】:2011-06-18 14:47:54
【问题描述】:

我正在尝试使基于单声道的识别器适应特定的扬声器。我正在使用HTKBook 3.4.1 section 3.6.2 中给出的配方。我被困在 HHEd 部分,我像 sp 一样调用它:

HHEd -A -D -T 1 -H hmm15/hmmdefs -H hmm15/macros -M classes regtree.hed monophones1eng

我最终得到的错误如下:
ERROR [+999] Components missing from Base Class list (2413 3375)
ERROR [+999] BaseClass check failed

文件夹classes 包含文件global,其内容如下:
~b ‘‘global’’
<MMFIDMASK> *
<PARAMETERS> MIXBASE
<NUMCLASSES> 1
<CLASS> 1 {*.state[2-4].mix[1-25]}

hmm15 中的 hmmdefs 文件缺少一些混合组件(我在每个手机的每个状态使用 25 个混合组件)。我试图通过给出具有随机均值和方差值但权重为零的混合分量来“填补空白”。这也没有效果。

hmm 是具有 5 个状态(3 个发射)的左右 hmm,每个状态由 25 个组件混合建模。每个组件依次由带有 EDA 组件的 MFCC 建模。总共有 46 部手机。

我的问题是:
1. 我调用HHEd 的方式是否正确?单声道可以按上述方式调用吗?
2. 我知道基类列表(rtree.base 必须包含每一个混合组件,但是我在哪里可以找到这些缺少的混合组件?

注意:如果需要更多信息,请告诉我。

编辑 1:文件 regtree.hed 包含以下内容:

RN "models"
LS "stats_engOnly_3_4"
RC 32 "rtree"

谢谢,
斯里拉姆

【问题讨论】:

    标签: machine-learning signal-processing speech-recognition htk


    【解决方案1】:

    他们调用 HHEd 的方式看起来不错。组件丢失,因为它们已失效。要处理失效的组件,请阅读 HTKBook-3.4.1 第 8.4 节第 137 页。

    问题: - regtree.hed 包含什么? - 您使用了多少数据(以小时为单位)? 25 种混合物可能过多。

    您可能希望使用逐渐增加的混合数 - MU +1 或 MU +2 并限制混合数(猜测:3-8,具体取决于训练数据量)。

    【讨论】:

    • 感谢您的回复。我已将regtree.hed 添加到问题中(请参阅上面的编辑1)。此外,hmms 训练过的数据是相当可观的。我使用整个 WSJ 英式英语数据库(20k 句)、大约 300 句美式英语和大约 500-600 句印度英语进行训练(以上都是指使某些单词发音不同的口音)。从 WSJ 数据库开始,我一直在训练 HMM。我得到的 HMM 已经有 25 种混合物。有什么办法可以减少吗?
    猜你喜欢
    • 2019-09-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-01-10
    • 2018-08-16
    • 2012-08-27
    • 2014-12-21
    相关资源
    最近更新 更多