Viterbi-Algorithmus
Viterbi-AlgorithmusEs handelt sich um einen dynamischen Programmieralgorithmus, der verwendet wird, um den wahrscheinlichsten Viterbi-Pfad zu finden, der eine Folge beobachteter Ereignisse erzeugt – eine Folge verborgener Zustände, insbesondere im Kontext von Markov-Informationsquellen und Hidden-Markov-Modellen. Beispielsweise können in der statistischen Syntaxanalyse dynamische Programmieralgorithmen verwendet werden, um die wahrscheinlichste kontextabgeleitete Zeichenfolge zu finden, was auch als „Viterbi-Analyse“ bezeichnet wird.
Der Viterbi-Algorithmus wurde 1967 von Andrew Viterbi vorgeschlagen und wird hauptsächlich zur Dekonvolution in digitalen Kommunikationsverbindungen verwendet, um Rauschen zu eliminieren. Dieser Algorithmus wird häufig in digitalen CDMA- und GSM-Mobilfunknetzen, Modems, Satelliten, der Weltraumkommunikation und drahtlosen 802.11-Netzwerken verwendet, hauptsächlich für Dekonvolutionscodes. Mittlerweile wird es auch häufig in der Spracherkennung, beim Erkennen von Schlüsselwörtern, in der Computerlinguistik und in der Bioinformatik verwendet.
Bei der Spracherkennung kann das Tonsignal als beobachtete Zeitreihe und die Textzeichenfolge als implizite Ursache betrachtet werden. Daher kann der Viterbi-Algorithmus basierend auf dem Tonsignal verwendet werden, um die wahrscheinlichste Textzeichenfolge zu finden.