One way to view an HMM is as a way to weigh various hypotheses. For example, in speech recognition HMMs, different sequences of speech units (corresponding to a subset of the possible state sequences) are associated with different weights (e.g., the joint probability of a state sequence and the acoustic sequence). More generally, weighted acceptors and transducers [&make_named_href('', "node31.html#Riley94","[7]"), &make_named_href('', "node31.html#Pereira94","[8]"), &make_named_href('', "node31.html#Mohri96","[9]")] can be used to assign a weight to a sequence (or a pair of input/output sequences). Weighted acceptors and transducers are attractive in applications such as speech recognition and language processing because they can conveniently and uniformly represent and integrate different types of knowledge about a sequence processing task. Another advantage of this framework is that it deals easily with sequences of different lengths. Furthermore, algorithms for transducers and acceptors can be applied to weight structures which include but are not limited to probabilities (and this can be useful when the sequence processing task involves the processing of numbers which do not necessarily have a probabilistic interpretation).
A weighted acceptor maps a sequence into a scalar (which may be a probability, for example). A weighted transducer maps a pair of sequences into a scalar (which may be interpreted as a conditional probability of one sequence given another one).
Weighted acceptors and transducers can be represented by labeled weighted directed graphs. The label on arcs of an acceptor graph can be an element of the set of ``output'' values or it can be the special ``null symbol''. Two labels are associated with the arcs of a transducer graph: the input label and the output label, both of which can take the special ``null symbol'' value. The output sequence associated with a path of an acceptor or transducer graph is obtained from the sequence of non-null output values along that path. Because of the null symbol, the input and output sequences need not have the same length.
A speech recognition HMM for which labels are associated with
subsets of state values (i.e., speech units)
is in fact a transducer, with weights that are probabilities.
It represents the joint distribution of speech unit label sequences
and acoustic observations sequences.
Transducers are convenient to represent
the hierarchical structure of linguistic
units that designers of speech recognition
systems usually embed in HMMs, as in Figure 6.
A language model
for speech recognition
is in fact an acceptor that assigns a probability
to every possible sequence of labels in a
certain language. An acoustic-phonetic transducer
assigns a probability to each speech unit u
(e.g. a phoneme in a particular context),
for a subsequence of acoustic data
.
Intermediate transducers represent the
mapping between sequences of speech units
and sequences of words, e.g.,
.
A generic composition operation [&make_named_href('', "node31.html#Riley94","[7]"), &make_named_href('', "node31.html#Pereira94","[8]"), &make_named_href('', "node31.html#Mohri96","[9]")] allows to combine a cascade of transducers and acceptors, e.g., the joint distribution over acoustics, phonetic speech units, and words (with conditional independence between the different levels),
integrates different levels of knowledge about the data (e.g., as in the hierarchical representation of speech shown in Figure 6).
Search algorithms (like the Viterbi
algorithm, beam search,
, etc...)
can be used to look for the most likely sequence of
values for all the intermediate variables
(e.g., states in HMMs, speech units, words).