Menu

CMLLR and semicontinuous models

Help
Anonymous
2012-04-26
2012-09-22
  • Anonymous

    Anonymous - 2012-04-26

    Is CMLLR adaptation (using SphinxTrain/python/cmusphinx/cmllr.py) supposed
    to work with semicontinuous and PTM models? Currently, with both types, I get
    an error:

    raceback (most recent call last):
      File "/home/tanel/devel/cmusphinx/SphinxTrain/python/cmusphinx/cmllr.py", line 305, in <module>
        Ws = estimate_cmllr(stats, inmean, invar, mdef)
      File "/home/tanel/devel/cmusphinx/SphinxTrain/python/cmusphinx/cmllr.py", line 97, in estimate_cmllr
        Ginv = np.linalg.inv(G[i])
      File "/usr/lib/pymodules/python2.6/numpy/linalg/linalg.py", line 423, in inv
        return wrap(solve(a, identity(a.shape[0], dtype=a.dtype)))
      File "/usr/lib/pymodules/python2.6/numpy/linalg/linalg.py", line 306, in solve
        raise LinAlgError, 'Singular matrix'
    numpy.linalg.linalg.LinAlgError: Singular matrix
    

    CMLLR with continuous models works perfectly.

     
  • Nickolay V. Shmyrev

    Hello

    The MLLR adaptation has little sense for semi-continuous models where the most
    information is stored in mixture weights.

    Also, the cmllr.py doesn't support multistream features, though one can add
    this support.

     
  • Anonymous

    Anonymous - 2012-04-27

    Thanks, it didn't occur to me that CMLLR doesn't make much sense for semi-
    continuous models.

    I wonder what should I then use for unsupervised adaptation of sem-continuous
    models. CMLLR and MLLR do not make sense, and this
    document
    specifically
    says not to use MAP for unsupervised adaptation.

     
  • Nickolay V. Shmyrev

    and this document specifically says not to use MAP for unsupervised
    adaptation.

    It's not quite accurate statement. It all depends on the amount of data. If
    you have large data and use small smoothing factor (large tau) the adapted
    model should be good enough.

    It's all about using suffciient data to estimate the parameters. There are
    specific methods to deal with small amount of data, for example structured MAP
    (SMAP) adaptation, but I'm not sure how does it apply to semi-continuous case.
    See also

    CROSSLINGUAL ADAPTATION OF SEMI-CONTINUOUS HMMS USING ACOUSTIC SUB-SIMPLEX
    PROJECTION
    Frank Diehl, Asuncion Moreno, Enric Monte

    http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.74.7313&rep=rep1&typ
    e=pdf

     

Log in to post a comment.