Initializing Weights

There are three different ways of initializing the parameters of a Gaussian mixture HMM recognizer. The simplest is to just leave them uninitialized, that is, start with random weights. The way Janus works, we can not just use zero or any other constant value for all parameters because that way they would not really diverge. In the first iteration all the training data would be assigned to the same small group of parameters, the same codebook vector in every codebook. Theoretically, it should work to train a recognizer starting with random weights, however, this might take very long to get to some point where the recognizer can 'support itself'. If helpful information is available, and if it is allowed to use this information then why not help the recognizer by either giving it some weights that have been trained with a different system or give it some labels that tell it which part of the recording belongs to which acoustic model.

If you choose to initialize the weights by using some pretrained weights you can do one out of two things. Either get some trained recognizer, extract the needed weights from there and copy them into the new system, or use some available generic predefined weights and initialize you system with these. Either way the performance of the initial system will be pretty bad, but it should at least be a lot better than if initialized with random weights.

If your must train a recognizer on a language for which you don't have any weights, then you'll have to think about which of your acoustic models (or phonemes) should be initialized with which of the available weights. So when switching from English to German you will have to model a few phonemes of German that do not occur in English. In this case you would just choose some 'similar' phoneme of the English recognizer. Also there will be some English phonemes that do not occur in German. You can just ignore these.

The do-it-yourself pages to this topic show how you can use the pretrained generic weights to initialize a recognizer.