Field of the Invention
The invention relates to the automatic recognition of speech in which a language model with language model values is used, which values are determined from a comparatively long training text, while an adaptation of the language model on the basis of in particular comparatively short text portions is carried out for certain cases, in particular for certain types of texts.
A series of test values is obtained from a speech signal in the automatic speech recognition process, which test values are compared with stored reference values, sequences of reference values representing words of a given vocabulary. Scores are derived from the comparison and are combined with language model values at word boundaries. These language model values represent the probabilities that given word sequences of limited length are present; they have been obtained from a comparatively large quantity of training texts, which may also be formed by written texts. Long-term changes in the use of language, for example subject matter or style, can accordingly not be taken into account with these language model values. Since the quality of the adaptation of the language model values has a considerable influence on the reliability of the speech recognition, it is desirable to adapt the language model values as well as possible to the given text by means of a small quantity of updated text. This adaptation may take place during the process of recognizing a given text or alternatively subsequent to the recognition of part of a text, after recognition errors have been manually corrected. The adaptation may alternatively also take place in that the special text is subjected to the recognition process once and adapted language model values are derived therefrom, which are then used for a renewed recognition of the same text.
Description of Prior Art
A method known from IEEE Trans. on Pattern Analysis and Machine Intelligence, vol. 12, June 1990, pp. 570 to 583, for creating an adaptive language model is the so-called language model cache. Relative frequencies of occurrence N.sub.a (w)/N.sub.a are calculated here, N.sub.a (w) being the frequency of occurrence of the word w in the adaptation material and N.sub.a being the total number of words in the adaptation material. The adaptive cache language model is now calculated as follows ##EQU1## in which the interpolation parameter .lambda. is either fixedly programmed or is so determined for each adaptation that the adaptation material is described as well as possible, as is known from Proc. ICASSP, Minneapolis USA, vol. II, April 1993, pp. 585 to 593. The adaptation of the language model values to an updated text achieved thereby, however, is not ideal.
Summary of the Invention
It is an object of the invention to provide a method of adapting language model values which enables a good adaptation of the language model values to peculiarities of a speech signal, such as subject matter or style, also if this speech signal is short.
According to the invention, this object is achieved in that unigram language model values obtained from a large quantity of texts are adapted on the basis of an updated speech signal, and adapted M-gram language model values are obtained by means of said adapted unigram language model values. So the M-gram language model values are not directly changed, but first the unigram language model values are adapted and the M-gram values are subsequently changed on the basis of the former adaptation. This renders it possible to adapt the M-gram values already on the basis of a small quantity of spoken text data in which a major portion of the word sequences on which the M-gram values are based has not yet occurred. A substantially larger quantity of the individual words of the vocabulary will occur in a short text, so that the unigram language model can be more thoroughly adapted in the case of a short spoken text. An essential discovery here is that a good adaptation of the M-gram values can take place already by means of these adapted unigram values, for example, the frequency of occurrence of the sequence of various preceding words in the short spoken text not being taken into account. The language model values do not represent exact values any way, they are no more than estimates of probabilities of words or word sequences being present, and the adapted language model values then represent no more than improved estimation values.
Various possibilities exist for the adaptation of the unigram language model values, a particularly favorable possibility being based on a classification according to which each word of the vocabulary is unequivocally assigned to a given semantic class. This classification can be achieved automatically when different training speech signals are available which originate, for example, from different subject fields and comprise different styles of speech or language. This will be explained in more detail further below.
Detailed Description of the Preferred Embodiments
The adaptive unigram language model values P.sub.a may be realized as linear combinations of several unigram components P.sub.i (w): ##EQU2## The adaptivity arises either from the fact that the interpolation parameters .lambda..sub.i are adaptively determined or from the fact that one or several components themselves are adaptive.
The following components are suitable:
a static unigram P.sub.s (w) estimated on the basis of the entire training text.
a static unigram P.sub.D (w) estimated on the basis of selected texts belonging to a given subject matter D.
a cache language model component ##EQU3## a semantic language model component ##EQU4## in which N.sub.a (K(w)) represents the frequency of occurrence of the class K to which the word w belongs, and P.sub.s (w.vertline.K(w)) is the conditional probability of a word, given its class, estimated on the basis of the entire training material. The starting point here is that each word w belongs to exactly one semantic class K(w).
The automatic generation of semantic classes is based on the situation that a text body is available for training, subdivided into individual text portions, so-called articles, which show a thematic coherence. N.sub.i then indicates the number of words in the i.sup.th article, and N.sub.i (w) and N(w) represent the frequencies of occurrence of the word w in the i.sup.th article and in the entire body of texts, respectively. Given a certain classification K, in which each word w is assigned to exactly one semantic class K(w), the article frequencies of occurrence are ##EQU5##
The class frequency of occurrence N(a;K) for the entire body of texts is formed in an analogous manner. If the classification is obvious from the context, it is left out in an abridged representation method.
The following logarithmic probability can be calculated for any classification, given this nomenclature: ##EQU6##
The present method is based on the procedure of finding a classification which maximizes this probability. Since the terms which are independent of the classification take no part in this maximizing process, one may as well maximize the following function: ##EQU7##
The assignment of the individual words to classes is iteratively changed on the basis of an initial classification of the vocabulary into semantic classes such that the function value f.sub.2 (K) is increased at each iterative step. The following steps are carried out consecutively for each word w in the vocabulary:
1. that class which maximizes the criterion f.sub.2 (K), while the classification of the other words remains the same, is determined for the word w.
2. if the class found sub 1. differs from the original one, the word is assigned to this new class, and the classification is changed accordingly.
After all words in the vocabulary have been thus evaluated, a new run through the vocabulary is started. The process is ended when a given number of runs has been completed or when no words were assigned to new classes in a run. A fixed classification has been achieved thereby for all words of the vocabulary used for the adaptation in question of the unigram language model values.
A static M-gram model is presupposed for the adaptation of the M-gram language model values, which model estimates a conditional probability P.sub.s (w.vertline.h) for historic word sequences h consisting of words immediately preceding the word w up to a maximum length of M-1 words. This language model comprises in particular also a static unigram model P.sub.s (w). There are various methods now for calculating an adaptive M-gram model P.sub.a (w.vertline.h) from the adapted unigram model P.sub.a (w). The following quantity is first defined for this purpose: ##EQU8## alternative 1:
alternative 2: ##EQU9## in which: ##EQU10## alternative 3:
It is additionally assumed that a quantity T of word sequences of the maximum length M has actually been observed in a training text. For a word sequence h=(w.sub.1 . . . w.sub.i), furthermore, the word sequence shortened by one word h=(w.sub.2 . . . w.sub.i) is given. This results in the adaptive probabilities, i.e. the adapted language model values in a recursive manner as follows: ##EQU11## The expressions z.sub.1 (h) and z.sub.2 (h) here mean: ##EQU12##
A favorable adapted M-gram language model can be obtained in this manner.
A conventional computer loaded with a suitable program may be used for carrying out the described method. This program may be present on a data carrier which is inserted into the computer for the purpose of loading the program.