Automatische Spracherkennung: Unterschied zwischen den Versionen

Aus InfoWissWiki - Das Wiki der Informationswissenschaft
Zur Navigation springen Zur Suche springen
 
 
(24 dazwischenliegende Versionen von 5 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
'''Artikel ist noch in Arbeit, bitte noch nicht verändern!'''
+
== Definition ==
 +
[[definition::Unter automatischer Spracherkennung wird die computerbasierte Erkennung gesprochener Sprache und deren korrekte Darstellung als Text verstanden.]] Bei der automatischen Spracherkennung geht es darum, eine mündliche Aussage in einem maschinellen System äquivalent als konkreten Text darzustellen. Man spricht auch von [[Automatisches Sprachverstehen|automatischem Sprachverstehen]], wenn eine passende rechnerinterne Darstellung (Repräsentation) generiert werden soll.
  
 
+
Kommando- oder Dialogsysteme (siehe auch [[Natürlichsprachige Schnittstelle]]) bauen auf die reine Erkennungsfunktion auf und beinhalten darüber hinaus eine passende Systemreaktion zum gesprochenen Text.
== Definition ==
 
Unter Automatischer Spracherkennung versteht man die computerbasierte Erkennung gesprochener Sprache und deren richtige Darstellung als Text.
 
Bei der Automatischen Spracherkennung geht es darum eine mündliche Aussage in einem maschinellen System äquivalent darzustellen.
 
Im engern Sinne spricht man von der korrekten Darstellung der Aussage als Text.
 
Allerdings spricht man von [[Automatisches Sprachverstehen|Automatischem Sprachverstehen]], wenn eine passende rechnerinterne Umschreibung generiert werden soll.
 
Kommando- oder Dialogsysteme beinhalten weiterhin eine passende Systemreaktion zum gesprochenen Text.
 
  
 
== Probleme und Anforderungen ==
 
== Probleme und Anforderungen ==
Die menschliche Sprachkommunikation wirkt aus unserer Sicht einfach. Doch bei der Erkennung durch Computersysteme gilt es u.a. folgende Probleme zu lösen:
+
Die menschliche Sprachkommunikation wirkt aus unserer Sicht einfach, doch sie besitzt Eigenschaften, die bei der Erkennung durch Computersysteme Probleme aufwerfen:
  
 
=== Kontinuität ===
 
=== Kontinuität ===
 +
Kontinuierliche Sprache bedeutet, dass zwischen den einzelnen Wörtern keine deutlichen Pausen gemacht werden (bei Pausen zwischen den Wörtern spricht man von diskreter Sprache), sondern es wird in normaler Geschwindigkeit und normalem Rhythmus gesprochen. Hierbei entsteht ein Erkennungsproblem: die Wortgrenzen sind schwer zu definieren.
  
 
=== Variabilität ===
 
=== Variabilität ===
 +
Mündliche Sprache weist eine hohe Variabilität auf. So können starke Unterschiede beim Klang des gleichen Wortes entstehen.
 +
 +
Dies kann folgende Ursachen haben:
 +
 +
Zunächst ist die Sprecherabhängigkeit zu nennen. Jeder Sprecher verfügt über eigene stimmliche Merkmale, die von vielen Faktoren, wie zum Beispiel Alter, Geschlecht und Gesundheitszustand, geprägt werden. Auch die Sprechweise jedes Menschen ist unterschiedlich (Tempo, Artikulation, Dialekt, etc.). Weiterhin bestehen Unterschiede in der Qualität der Aufnahme.
 +
 +
Schon früh gelang es, Systeme zu entwickeln, die in schalldichten Räumen mit hochwertigen Mikrofonen mündliche Äußerungen erkennen konnten. Doch um die automatische Spracherkennung flächendeckend nutzen zu können, gilt es auch mit einer qualitativ schlechteren Übertragung über das Telefonnetz erfolgreich zu sein und auch akustische Störquellen wie Rauschen oder auch Hintergrundgeräusche herauszufiltern.
 +
 +
Um das Problem der Variabilität zu lösen, muss das Erkennungsmuster, mit dem das System das Eingangssignal vergleicht, einerseits so weit gewählt werden, dass alle Realisierungen (also von verschiedenen Sprechern, in verschiedenen Tonlagen, etc.) erkannt werden. Andererseits darf dieses Muster aber auch nicht zu generell gehalten werden, um die Verwechslung mit anderen, ähnlichen Wörtern zu vermeiden.
 +
 +
=== Komplexität ===
 +
Je größer der verwendete Wortschatz, desto mehr Satzkombinationen werden möglich und desto größer wird das Suchproblem. Ein größerer Wortschatz erfordert somit eine höhere Rechenleistung des Computers. Das ist sicherlich (unter anderem) der Grund dafür, dass erfolgreiche Spracherkennungssysteme, mit großem Wortschatz und einer geringen Wortfehlerrate, erst in den letzten 20 Jahren und auch nur für eingeschränkte Anwendungsfelder entstanden sind.
 +
 +
== Vorgehensweise ==
 +
[[Bild:VorgehensweiseSpracherkennung.jpg]]
 +
 +
Die Abbildung zeigt stark vereinfacht den Aufbau eines Spracherkennungssystems.
 +
 +
Im ersten Schritt werden die analogen Eingangssignale, also die Sprache, digitalisiert. Bei der Vorverarbeitung müssen weiterhin die Datenmengen auf das Wesentliche reduziert werden und auch die in 2.2 erklärten Störfaktoren, die auf die Variabilität der gesprochenen Sprache zurückzuführen sind, herausgefiltert werden. Die Daten liegen nach der Vorverarbeitung als so genannte Referenz- oder Merkmalvektoren vor.
 +
 +
Um die passenden Phoneme zu finden, werden Hidden-Markov-Modelle (HMM) eingesetzt. Dazu werden die akustischen Modelle der [[Phonem|Phoneme]] in Einzelteile zerlegt (je nach Phonemlänge ein Anfangsteil, mehrere Mittelteile und ein Schlussteil). Diese im System gespeicherten Modelle werden dann mit den Eingangssignalen verglichen. Man verwendet verschiedene Algorithmen, um das wahrscheinlichste Phonem zu berechnen.
 +
 +
Aus diesen Phonemen setzt dann ein Wörterbuch die möglichen Wörter oder Wortfolgen zusammen.
 +
 +
Zum Abschluss des Erkennungsprozesses kommt ein Sprachmodell zum Einsatz, welches die Wahrscheinlichkeit der Wortkombination, also den Satzzusammenhang, berechnet und somit das vom Sprecher gemeinte Wort aus der Liste der möglichen Wörter herausfiltern soll. Dazu kann entweder ein Grammatikmodell oder eine Trigrammstatistik verwendet werden:
 +
 +
''' Grammatikgesteuerte Systeme: '''
 +
Kommt ein Grammatikmodell zum Einsatz, muss jedem Wort eine genaue grammatikalische Funktion zugeordnet werden.  Daher kommen diese Systeme nur zum Einsatz, wenn ein eingeschränkter Wortschatz erkannt werden soll.
 +
 +
'''Wahrscheinlichkeitsorientierte Systeme:'''
 +
Bei der Entwicklung von Spracherkennungssystemen haben sich wahrscheinlichkeitsorientierte Systeme bei großem Wortschatzumfang als erfolgreicher herausgestellt. Diese Art von Sprachmodellen berechnen die Kombinationswahrscheinlichkeit von (meistens) drei Wörtern. Man nennt sie deshalb '''Tri'''grammstatistiken. Durch diese Vorgehensweise wurde sogar in den meisten Fällen eine Lösung für das Problem der [[Homophonie|Homophone]] (z.B.: Rad /Rat) gefunden. Die Statistikwerte werden dem System durch das Einspeisen von Beispieltexten zugeführt.
 +
 +
== Anwendungsgebiete ==
 +
Die Anwendungsgebiete der automatischen Spracherkennung sind nach Schukat-Talamazzini (siehe Literaturliste) folgende:
 +
 +
*Haushalt (z.B.: Licht, Unterhaltungselektronik)
 +
 +
*Büro (z.B.: Informationsabfrage, Gerätebedienung, Diktiergeräte)
 +
 +
*Industrie (z.B.: Inventur)
 +
 +
*Zahlungsverkehr (z.B.: Telefonbanking (kommt heute schon erfolgreich zum Einsatz))
 +
 +
*Personentransport (Fahrplanauskunft)
 +
 +
*öffentliche Informationsdienste (Wettervorhersage, Veranstaltungskalender)
 +
 +
*Ausbildung (Fremdsprachenerwerb)
 +
 +
*Medizin (Diagnosesysteme, Mikroskopie)
 +
 +
*militärischer Bereich (Waffensystemkontrolle, Flugzeugbedienung)
 +
 +
*Behindertenhilfe (Sprechtraining für Gehörlose, Fahrzeugbedienung, Filmuntertitelung)
 +
 +
Außerdem ist die automatische Spracherkennung beispielsweise Teil automatischer Dolmetschsysteme (vgl. auch [[Maschinelle Übersetzung]]), wie zum Beispiel [[Verbmobil]], das lautsprachliche Äußerungen aus dem Bereich der Terminabsprache auf deutsch, englisch und japanisch erkennt und  übersetzt, damit der Gesprächspartner diese versteht und in seiner  Muttersprache antworten kann.
 +
 +
== Aktueller Stand ==
 +
Heute ist die automatische Spracherkennung z.T. bereits praxisreif. Die Hersteller von Spracherkennungssoftware sind z.B. Dragon Systems Inc., IBM, Lernout&Hauspie und Philips. Diese Softwareprodukte haben einen Wortschatz von rund 50.000 bis 130.000 Wörtern (vgl. http://www.spracherkennung.de/service/sebuch.htm ). Zwar ist die Erkennung noch nicht 100% fehlerfrei, aber Hürden, wie umgangssprachliche Aussagen und Dialekt, stellen immer weniger Probleme dar.
 +
 +
== Literatur und Links ==
 +
 +
*Gibbon, Dafydd (1997): Gesprochene Sprache. http://coral.lili.uni-bielefeld.de/Classes/Summer97/ExpPhon/gibbonchap2eps/ . ( 9.7.2008 )
 +
 +
*Kolb, Dorothee (1997): Natürlichsprachige Mensch-Maschine-Kommunikation unter Verwendung gesprochener Sprache. Magisterarbeit, Saarbrücken. S. 76. IB-282-4239
 +
 +
*Marktübersicht Spracherkennungssoftware: http://www.softguide.de/software/spracherkennung.htm (9.7.2008)
 +
 +
*Schukat-Talamazzini, E. G. (1995): Automatische Spracherkennung, Friedr. Vieweg und Sohn Verlagsgesellschaft mbH, Braunschweig/Wiesbaden
 +
 +
*Wikipedia, deutsche Ausgabe, Artikel über Spracherkennung. Online verfügbar unter: [http://de.wikipedia.org/wiki/Spracherkennung], Stand: 17.08.2005
 +
 +
*Marsiske, Hans-Arthur (2005): Endlich versteht der Computer den Menschen. Online verfügbar unter: http://www.welt.de/data/2005/01/24/392563.html Stand: 17.08.2005
 +
 +
*Internetseite des Projektes "Verbmobil" am DFKI. Online verfügbar unter: [http://verbmobil.dfki.de/]
 +
 +
==Verwandte Begriffe==
 +
 +
* [[synonymous::Spracherkennung]]
 +
* [[broader::Informationslinguistik]]
 +
* [[related::Spracherzeugung]]
 +
* [[related::Sprachsynthese]]
 +
* [[related::Sprechererkennung]]
 +
* [[english::speech recognition]]
 +
 +
[[category:Informationslinguistik]]
 +
[[category: Software]]

Aktuelle Version vom 20. Juli 2010, 09:01 Uhr

Definition

Unter automatischer Spracherkennung wird die computerbasierte Erkennung gesprochener Sprache und deren korrekte Darstellung als Text verstanden. Bei der automatischen Spracherkennung geht es darum, eine mündliche Aussage in einem maschinellen System äquivalent als konkreten Text darzustellen. Man spricht auch von automatischem Sprachverstehen, wenn eine passende rechnerinterne Darstellung (Repräsentation) generiert werden soll.

Kommando- oder Dialogsysteme (siehe auch Natürlichsprachige Schnittstelle) bauen auf die reine Erkennungsfunktion auf und beinhalten darüber hinaus eine passende Systemreaktion zum gesprochenen Text.

Probleme und Anforderungen

Die menschliche Sprachkommunikation wirkt aus unserer Sicht einfach, doch sie besitzt Eigenschaften, die bei der Erkennung durch Computersysteme Probleme aufwerfen:

Kontinuität

Kontinuierliche Sprache bedeutet, dass zwischen den einzelnen Wörtern keine deutlichen Pausen gemacht werden (bei Pausen zwischen den Wörtern spricht man von diskreter Sprache), sondern es wird in normaler Geschwindigkeit und normalem Rhythmus gesprochen. Hierbei entsteht ein Erkennungsproblem: die Wortgrenzen sind schwer zu definieren.

Variabilität

Mündliche Sprache weist eine hohe Variabilität auf. So können starke Unterschiede beim Klang des gleichen Wortes entstehen.

Dies kann folgende Ursachen haben:

Zunächst ist die Sprecherabhängigkeit zu nennen. Jeder Sprecher verfügt über eigene stimmliche Merkmale, die von vielen Faktoren, wie zum Beispiel Alter, Geschlecht und Gesundheitszustand, geprägt werden. Auch die Sprechweise jedes Menschen ist unterschiedlich (Tempo, Artikulation, Dialekt, etc.). Weiterhin bestehen Unterschiede in der Qualität der Aufnahme.

Schon früh gelang es, Systeme zu entwickeln, die in schalldichten Räumen mit hochwertigen Mikrofonen mündliche Äußerungen erkennen konnten. Doch um die automatische Spracherkennung flächendeckend nutzen zu können, gilt es auch mit einer qualitativ schlechteren Übertragung über das Telefonnetz erfolgreich zu sein und auch akustische Störquellen wie Rauschen oder auch Hintergrundgeräusche herauszufiltern.

Um das Problem der Variabilität zu lösen, muss das Erkennungsmuster, mit dem das System das Eingangssignal vergleicht, einerseits so weit gewählt werden, dass alle Realisierungen (also von verschiedenen Sprechern, in verschiedenen Tonlagen, etc.) erkannt werden. Andererseits darf dieses Muster aber auch nicht zu generell gehalten werden, um die Verwechslung mit anderen, ähnlichen Wörtern zu vermeiden.

Komplexität

Je größer der verwendete Wortschatz, desto mehr Satzkombinationen werden möglich und desto größer wird das Suchproblem. Ein größerer Wortschatz erfordert somit eine höhere Rechenleistung des Computers. Das ist sicherlich (unter anderem) der Grund dafür, dass erfolgreiche Spracherkennungssysteme, mit großem Wortschatz und einer geringen Wortfehlerrate, erst in den letzten 20 Jahren und auch nur für eingeschränkte Anwendungsfelder entstanden sind.

Vorgehensweise

VorgehensweiseSpracherkennung.jpg

Die Abbildung zeigt stark vereinfacht den Aufbau eines Spracherkennungssystems.

Im ersten Schritt werden die analogen Eingangssignale, also die Sprache, digitalisiert. Bei der Vorverarbeitung müssen weiterhin die Datenmengen auf das Wesentliche reduziert werden und auch die in 2.2 erklärten Störfaktoren, die auf die Variabilität der gesprochenen Sprache zurückzuführen sind, herausgefiltert werden. Die Daten liegen nach der Vorverarbeitung als so genannte Referenz- oder Merkmalvektoren vor.

Um die passenden Phoneme zu finden, werden Hidden-Markov-Modelle (HMM) eingesetzt. Dazu werden die akustischen Modelle der Phoneme in Einzelteile zerlegt (je nach Phonemlänge ein Anfangsteil, mehrere Mittelteile und ein Schlussteil). Diese im System gespeicherten Modelle werden dann mit den Eingangssignalen verglichen. Man verwendet verschiedene Algorithmen, um das wahrscheinlichste Phonem zu berechnen.

Aus diesen Phonemen setzt dann ein Wörterbuch die möglichen Wörter oder Wortfolgen zusammen.

Zum Abschluss des Erkennungsprozesses kommt ein Sprachmodell zum Einsatz, welches die Wahrscheinlichkeit der Wortkombination, also den Satzzusammenhang, berechnet und somit das vom Sprecher gemeinte Wort aus der Liste der möglichen Wörter herausfiltern soll. Dazu kann entweder ein Grammatikmodell oder eine Trigrammstatistik verwendet werden:

Grammatikgesteuerte Systeme: Kommt ein Grammatikmodell zum Einsatz, muss jedem Wort eine genaue grammatikalische Funktion zugeordnet werden. Daher kommen diese Systeme nur zum Einsatz, wenn ein eingeschränkter Wortschatz erkannt werden soll.

Wahrscheinlichkeitsorientierte Systeme: Bei der Entwicklung von Spracherkennungssystemen haben sich wahrscheinlichkeitsorientierte Systeme bei großem Wortschatzumfang als erfolgreicher herausgestellt. Diese Art von Sprachmodellen berechnen die Kombinationswahrscheinlichkeit von (meistens) drei Wörtern. Man nennt sie deshalb Trigrammstatistiken. Durch diese Vorgehensweise wurde sogar in den meisten Fällen eine Lösung für das Problem der Homophone (z.B.: Rad /Rat) gefunden. Die Statistikwerte werden dem System durch das Einspeisen von Beispieltexten zugeführt.

Anwendungsgebiete

Die Anwendungsgebiete der automatischen Spracherkennung sind nach Schukat-Talamazzini (siehe Literaturliste) folgende:

  • Haushalt (z.B.: Licht, Unterhaltungselektronik)
  • Büro (z.B.: Informationsabfrage, Gerätebedienung, Diktiergeräte)
  • Industrie (z.B.: Inventur)
  • Zahlungsverkehr (z.B.: Telefonbanking (kommt heute schon erfolgreich zum Einsatz))
  • Personentransport (Fahrplanauskunft)
  • öffentliche Informationsdienste (Wettervorhersage, Veranstaltungskalender)
  • Ausbildung (Fremdsprachenerwerb)
  • Medizin (Diagnosesysteme, Mikroskopie)
  • militärischer Bereich (Waffensystemkontrolle, Flugzeugbedienung)
  • Behindertenhilfe (Sprechtraining für Gehörlose, Fahrzeugbedienung, Filmuntertitelung)

Außerdem ist die automatische Spracherkennung beispielsweise Teil automatischer Dolmetschsysteme (vgl. auch Maschinelle Übersetzung), wie zum Beispiel Verbmobil, das lautsprachliche Äußerungen aus dem Bereich der Terminabsprache auf deutsch, englisch und japanisch erkennt und übersetzt, damit der Gesprächspartner diese versteht und in seiner Muttersprache antworten kann.

Aktueller Stand

Heute ist die automatische Spracherkennung z.T. bereits praxisreif. Die Hersteller von Spracherkennungssoftware sind z.B. Dragon Systems Inc., IBM, Lernout&Hauspie und Philips. Diese Softwareprodukte haben einen Wortschatz von rund 50.000 bis 130.000 Wörtern (vgl. http://www.spracherkennung.de/service/sebuch.htm ). Zwar ist die Erkennung noch nicht 100% fehlerfrei, aber Hürden, wie umgangssprachliche Aussagen und Dialekt, stellen immer weniger Probleme dar.

Literatur und Links

  • Kolb, Dorothee (1997): Natürlichsprachige Mensch-Maschine-Kommunikation unter Verwendung gesprochener Sprache. Magisterarbeit, Saarbrücken. S. 76. IB-282-4239
  • Schukat-Talamazzini, E. G. (1995): Automatische Spracherkennung, Friedr. Vieweg und Sohn Verlagsgesellschaft mbH, Braunschweig/Wiesbaden
  • Wikipedia, deutsche Ausgabe, Artikel über Spracherkennung. Online verfügbar unter: [1], Stand: 17.08.2005
  • Internetseite des Projektes "Verbmobil" am DFKI. Online verfügbar unter: [2]

Verwandte Begriffe

… weitere Daten zur Seite „Automatische Spracherkennung
Unter automatischer Spracherkennung wird die computerbasierte Erkennung gesprochener Sprache und deren korrekte Darstellung als Text verstanden. +