„Spracherkennung“ – Versionsunterschied
[gesichtete Version] | [gesichtete Version] |
hier findet sich auch einiger Unsinn |
Sänger (Diskussion | Beiträge) Die letzte Textänderung von P.X.SalerHydro wurde verworfen und die Version 245797371 von Invisigoth67 wiederhergestellt. 1x doppelt, 1x ein ungebräuchliches Wort, wie der zielartikel zeigt Markierung: Manuelle Zurücksetzung |
||
(20 dazwischenliegende Versionen von 7 Benutzern werden nicht angezeigt) | |||
Zeile 1: | Zeile 1: | ||
⚫ | Die '''Spracherkennung''' oder auch '''automatische Spracherkennung''' ist ein Verfahren und ein Teilgebiet der angewandten [[Informatik]], der Ingenieurwissenschaften und der [[Computerlinguistik]]. Sie beschäftigt sich mit der Untersuchung und Entwicklung von Verfahren, die Automaten, insbesondere [[Computer]]n, die gesprochene [[Sprache]] der [[Automatische Identifikation und Datenerfassung|automatischen Datenerfassung]] zugänglich macht. So lassen sich beispielsweise aus Tonspuren [[String-Matching-Algorithmus|durchsuchbare]] [[Transkription (Editionswissenschaft)|Transkripte]] erstellen. |
||
{{Inuse}} |
|||
⚫ | Die '''Spracherkennung''' oder auch '''automatische Spracherkennung''' ist ein Verfahren und ein Teilgebiet der angewandten [[Informatik]], der Ingenieurwissenschaften und der [[Computerlinguistik]]. Sie beschäftigt sich mit der Untersuchung und Entwicklung von Verfahren, die Automaten, insbesondere [[Computer]]n, die gesprochene [[Sprache]] der [[Automatische Identifikation und Datenerfassung|automatischen Datenerfassung]] zugänglich macht. So lassen sich beispielsweise aus Tonspuren [[String-Matching-Algorithmus|durchsuchbare]] [[Transkription (Editionswissenschaft)| |
||
Die Spracherkennung ist zu unterscheiden von der Stimm- bzw. Sprechererkennung, einem [[Biometrie|biometrischen]] Verfahren zur Personenidentifikation. Allerdings ähneln sich die Realisierungen dieser Verfahren. |
Die Spracherkennung ist zu unterscheiden von der Stimm- bzw. Sprechererkennung, einem [[Biometrie|biometrischen]] Verfahren zur Personenidentifikation. Allerdings ähneln sich die Realisierungen dieser Verfahren. |
||
Zeile 8: | Zeile 6: | ||
Die Forschung an Spracherkennungssystemen begann in den 1960er Jahren, verlief damals allerdings weitestgehend erfolglos: Die von privaten Firmen entwickelten Systeme ermöglichten unter [[Laborbedingungen]] die Erkennung von einigen Dutzend Einzelwörtern. Dies lag einerseits an dem begrenzten Wissen in diesem neuen Forschungsgebiet, aber auch an den zur damaligen Zeit begrenzten technischen Möglichkeiten. |
Die Forschung an Spracherkennungssystemen begann in den 1960er Jahren, verlief damals allerdings weitestgehend erfolglos: Die von privaten Firmen entwickelten Systeme ermöglichten unter [[Laborbedingungen]] die Erkennung von einigen Dutzend Einzelwörtern. Dies lag einerseits an dem begrenzten Wissen in diesem neuen Forschungsgebiet, aber auch an den zur damaligen Zeit begrenzten technischen Möglichkeiten. |
||
Erst Mitte der 1980er Jahre kam die Entwicklung weiter voran. In dieser Zeit entdeckte man, dass man durch Kontextprüfungen [[Homophon]]e unterscheiden konnte. Indem man Statistiken über die Häufigkeit bestimmter Wortkombinationen erstellte und auswertete, konnte man bei ähnlich oder gleich klingenden Wörtern entscheiden, welches gemeint war. Diese sogenannten [[N-Gramm#Statistik|Trigrammstatistiken]] wurden anschließend ein wichtiger Bestandteil aller Spracherkennungssysteme. |
Erst Mitte der 1980er Jahre kam die Entwicklung weiter voran. In dieser Zeit entdeckte man, dass man durch Kontextprüfungen [[Homophon]]e unterscheiden konnte. Indem man Statistiken über die Häufigkeit bestimmter Wortkombinationen erstellte und auswertete, konnte man bei ähnlich oder gleich klingenden Wörtern entscheiden, welches gemeint war. Diese sogenannten [[N-Gramm#Statistik|Trigrammstatistiken]] wurden anschließend ein wichtiger Bestandteil aller Spracherkennungssysteme. Ein von Dragon Systems entwickeltes System war zu seiner Zeit sehr fortschrittlich: Dieses ließ sich auf einem tragbaren PC verwenden. |
||
Zwischen 1988 und 1993 demonstrierte das europäische Projekt SUNDIAL<ref>{{Internetquelle |autor= |url=https://cordis.europa.eu/project/id/2218 |titel=Speech Understanding and Dialogue |werk= |hrsg= |datum= |abruf=2020-05-22 |sprache=}}</ref> auch die Spracherkennung der Zugfahrpläne in deutscher Sprache.<ref>Peckham, Jeremy: ''Speech Understanding and Dialogue over the telephone: an overview of the ESPRIT SUNDIAL project.'' HLT. 1991.</ref> SUNDIAL studierte auch Bewertungskennzahlen der Spracherkennungen.<ref>Danieli, Morena; Elisabetta Gerbino: ''Metrics for evaluating dialogue strategies in a spoken language system.'' Proceedings of the 1995 AAAI spring symposium on Empirical Methods in Discourse Interpretation and Generation. Vol. 16. 1995.</ref><ref>Ciaramella, Alberto: ''A prototype performance evaluation report.'' Sundial workpackage 8000 (1993).</ref><ref>Charpentier, F., Micca, G., Schukat-Talamazzini, E., Thomas, T. (1995): ''The recognition component of the SUNDIAL project.'' In: ''Speech Recognition and Coding'' (pp. 345–348). Springer Berlin Heidelberg.</ref> |
Zwischen 1988 und 1993 demonstrierte das europäische Projekt SUNDIAL<ref>{{Internetquelle |autor= |url=https://cordis.europa.eu/project/id/2218 |titel=Speech Understanding and Dialogue |werk= |hrsg= |datum= |abruf=2020-05-22 |sprache=}}</ref> auch die Spracherkennung der Zugfahrpläne in deutscher Sprache.<ref>Peckham, Jeremy: ''Speech Understanding and Dialogue over the telephone: an overview of the ESPRIT SUNDIAL project.'' HLT. 1991.</ref> SUNDIAL studierte auch Bewertungskennzahlen der Spracherkennungen.<ref>Danieli, Morena; Elisabetta Gerbino: ''Metrics for evaluating dialogue strategies in a spoken language system.'' Proceedings of the 1995 AAAI spring symposium on Empirical Methods in Discourse Interpretation and Generation. Vol. 16. 1995.</ref><ref>Ciaramella, Alberto: ''A prototype performance evaluation report.'' Sundial workpackage 8000 (1993).</ref><ref>Charpentier, F., Micca, G., Schukat-Talamazzini, E., Thomas, T. (1995): ''The recognition component of the SUNDIAL project.'' In: ''Speech Recognition and Coding'' (pp. 345–348). Springer Berlin Heidelberg.</ref> |
||
=== IBM === |
|||
1991 stellte IBM erstmals auf der [[CeBIT]] ein Spracherkennungssystem vor, das 20.000 bis 30.000 deutsche Wörter erkennen konnte. Die Präsentation des TANGORA 4 genannten Systems musste jedoch in einem speziell abgeschirmten Raum stattfinden, da der Lärm der Messe das System sonst gestört hätte. |
|||
⚫ | 1984 stellte [[IBM]] ein erstes Spracherkennungssystem vor, das etwa 5.000 englische Einzelwörter erkennen konnte. Das System brauchte für einen Erkennungsvorgang jedoch mehrere Minuten Rechenzeit auf einem [[Großrechner]]. 1991 stellte IBM erstmals auf der [[CeBIT]] ein Spracherkennungssystem vor, das 20.000 bis 30.000 deutsche Wörter erkennen konnte. Die Präsentation des TANGORA 4 genannten Systems musste jedoch in einem speziell abgeschirmten Raum stattfinden, da der Lärm der Messe das System sonst gestört hätte. Ende 1993 stellte IBM das erste für den Massenmarkt entwickelte Spracherkennungssystem vor: Das ''IBM Personal Dictation System'' genannte System lief auf normalen [[Personal Computer|PCs]] und kostete unter 1000 Dollar. Als es unter dem Namen ''IBM VoiceType Diktiersystem'' auf der CeBIT 1994 präsentiert wurde, stieß es auf hohes Interesse seitens der Besucher und der Fachpresse. 1997 erschienen für den PC-Endbenutzer sowohl die Software [[IBM ViaVoice]] (Nachfolger von IBM VoiceType) als auch die Version 1.0 der Software ''[[Dragon NaturallySpeaking]]''. 1998 brachte [[Philips]] Speech Recognition Systems mit FreeSpeech 98 eine Spracherkennung für PC-Endbenutzer auf den Markt, dessen Steuerung auf das hauseigene digitale [[Diktiergerät]] SpeechMike angepasst war, stellte die Produktlinie aber nach der zweiten Version FreeSpeech 2000 wieder ein. 2004 gab IBM Teile seiner Spracherkennungsanwendungen als [[Open Source]] frei und sorgte damit für Aufsehen. Branchenkenner vermuteten als Grund taktische Maßnahmen gegen die Firma [[Microsoft]], die ebenfalls in diesem Bereich tätig ist und seit 2007 mit Erscheinen ihres PC-Betriebssystems [[Windows Vista]] als integralen Bestandteil erstmals Spracherkennungsfunktionen für die [[Sprachsteuerung|Steuerung]] wie auch für das Diktat anbot, die bis heute in [[Windows 10]] weiterentwickelt wurden. |
||
=== Nuance Communications === |
|||
Ende 1993 stellte IBM das erste für den Massenmarkt entwickelte Spracherkennungssystem vor: Das ''IBM Personal Dictation System'' genannte System lief auf normalen [[Personal Computer|PCs]] und kostete unter 1000 Dollar. Als es unter dem Namen ''IBM VoiceType Diktiersystem'' auf der CeBIT 1994 präsentiert wurde, stieß es auf hohes Interesse seitens der Besucher und der Fachpresse. |
|||
⚫ | Während die Entwicklung von IBM ViaVoice eingestellt wurde, entwickelte sich ''Dragon NaturallySpeaking'' zur meistverbreiteten sprecherabhängigen Drittanbieter-Spracherkennungssoftware für [[Windows]]-PCs; sie wurde ab dem Jahr 2005 von [[Nuance Communications]] hergestellt und vertrieben. Nuance hatte 2008 mit dem Erwerb der [[Philips]] Speech Recognition Systems, Wien, auch die Rechte an dem [[Software Development Kit]] (SDK) [[SpeechMagic]] erlangt, welches insbesondere im Gesundheitsbereich Verbreitung gefunden hatte. Für [[iMac]]-Personal Computer von [[Apple]] wurde von dem Unternehmen MacSpeech seit 2006 eine Drittanbieter-Spracherkennungssoftware unter dem Namen iListen vertrieben, die auf Philips-Komponenten basierte. 2008 wurde diese durch MacSpeech Dictate unter Verwendung der Kernkomponenten von [[Dragon NaturallySpeaking]] abgelöst und nach dem Erwerb von MacSpeech durch Nuance Communications 2010 in Dragon Dictate (Version 2.0 – ab 2012 wurde die Version 3.0 vertrieben) umbenannt. 2020 wurde für medizinische Anwendungen die Software Dragon Medical One vorgestellt. Nuance Communications wurde im März 2022 von Microsoft übernommen.<ref>{{Internetquelle |url=https://www.indiatoday.in/technology/news/story/microsoft-makes-its-second-biggest-acquisition-buys-ai-speech-tech-company-nuance-for-19-7-billion-1790336-2021-04-13 |titel=Microsoft makes its second biggest acquisition, buys AI speech tech company Nuance for $19.7 billion |datum=2021-04-13 |sprache=en |abruf=2024-06-10}}</ref> |
||
=== Situation heute (2024) === |
|||
⚫ | 1997 erschienen für den PC-Endbenutzer sowohl die Software [[IBM ViaVoice]] (Nachfolger von IBM VoiceType) als auch die Version 1.0 der Software ''[[Dragon NaturallySpeaking]]''. 1998 brachte [[Philips]] Speech Recognition Systems mit FreeSpeech 98 eine Spracherkennung für PC-Endbenutzer auf den Markt, dessen Steuerung auf das hauseigene digitale [[Diktiergerät]] SpeechMike angepasst war, stellte die Produktlinie aber nach der zweiten Version FreeSpeech 2000 wieder ein. 2004 gab IBM Teile seiner Spracherkennungsanwendungen als [[Open Source]] frei und sorgte damit für Aufsehen. Branchenkenner vermuteten als Grund taktische Maßnahmen gegen die Firma [[Microsoft]], die ebenfalls in diesem Bereich tätig ist und seit 2007 mit Erscheinen |
||
Alternativen zu Dragon Medical One sind im Jahr 2024 u. a. die Produkte Indicta von DFC Systems,<ref>{{Internetquelle |autor=DFC-Systems |url=https://www.dfcsystems.de/spracherkennung-diktatmanagement/ |titel=Medizinische Spracherkennung und digitales Diktatmanagement für Klinik und Arztpraxis |werk=Website von DFC Systems |hrsg=DFC Systems |sprache=de |abruf=2024-06-10}}</ref> M*Modal Fluency Direct von Solventum (ehemals [[3M]])<ref>{{Internetquelle |autor=3M Deutschland |url=https://www.3mdeutschland.de/3M/de_DE/his-de/mmodal/#speech |titel=3M M*Modal Sprachlösungen |werk=Website von 3M |hrsg=3M |sprache=de |abruf=2024-06-10}}</ref> oder Speaking von Media Interface.<ref>{{Internetquelle |url=https://www.mediainterface.de/unsere_produkte/speaking_spracherkennung |titel=Medizinische Spracherkennung mit SpeaKING |sprache=de |abruf=2024-06-10}}</ref> |
|||
⚫ | Aktuelle Spracherkennungssysteme müssen nicht mehr trainiert werden. Entscheidend für eine hohe Treffsicherheit außerhalb der Alltagssprache ist dabei die Plastizität des Systems. Um hohen Ansprüchen gerecht werden zu können, bieten professionelle Systeme dem Anwender die Möglichkeit, durch Vorschreiben oder Vorsprechen das persönliche Ergebnis zu beeinflussen.<ref>L. Lamel, J.-L. Gauvain: ''Speech Recognition. Oxford Handbooks Online (Vol. 14)''. Oxford University Press, 2005. [[doi:10.1093/oxfordhb/9780199276349.013.0016]]</ref> |
||
Während die Entwicklung von IBM ViaVoice eingestellt wurde, entwickelte sich ''Dragon NaturallySpeaking'' zur gegenwärtig meistverbreiteten sprecherabhängigen Drittanbieter-Spracherkennungssoftware für [[Windows]]-PCs und wird von [[Nuance Communications]] seit 2005 hergestellt und vertrieben. |
|||
=== Spracherkennung auf Mobilgeräten === |
|||
⚫ | Nuance |
||
⚫ | 2007 wurde die Firma Siri Inc. gegründet und im April 2010 von Apple gekauft. Im Oktober 2011 stellte Apple die Spracherkennungssoftware [[Siri (Software)|Siri]] für das iPhone 4s vor, die der Erkennung und Verarbeitung von natürlich gesprochener Sprache (unter Nutzung von Apple Servern) dient und so Funktionen eines persönlichen Assistenten erfüllen soll. Die Entwicklung bei der Spracherkennung schreitet sehr schnell voran. 2016 wurden Spracherkennungssysteme in Form von [[Siri (Software)|Siri]], [[Google Now]], [[Cortana (Software)|Cortana]] und [[Samsung]]s [[S Voice]] in Smartphones eingesetzt. |
||
== Grundlagen == |
|||
⚫ | 2007 wurde die Firma Siri Inc. gegründet und im April 2010 von Apple gekauft. Im Oktober 2011 stellte Apple die Spracherkennungssoftware [[Siri (Software)|Siri]] für das iPhone 4s vor, die der Erkennung und Verarbeitung von natürlich gesprochener Sprache (unter Nutzung von Apple Servern) dient und so Funktionen eines persönlichen Assistenten erfüllen soll. |
||
{{Quellen}} |
|||
⚫ | |||
== Aktueller Stand == |
|||
⚫ | |||
* Sprecherunabhängige Spracherkennung |
* Sprecherunabhängige Spracherkennung |
||
* Sprecherabhängige Spracherkennung |
* Sprecherabhängige Spracherkennung |
||
Charakteristisch für die „sprecherunabhängige“ Spracherkennung |
Charakteristisch für die „sprecherunabhängige“ Spracherkennung der Einsatz in Anwendungen mit häufig wechselnden Benutzern (z. B. Call-Center in automatischen [[Sprachdialogsystem|Dialogsystemen]] wie etwa einer Fahrplanauskunft), wobei die vorhergehende Trainingsphase relativ kurz ist. Überall dort, wo nur ein begrenzter Wortschatz verwendet wird, wird die sprecherunabhängige Spracherkennung mit Erfolg praktiziert. So erreichen Systeme zur Erkennung der gesprochenen englischen Ziffern von 0 bis 9 eine nahezu 100-%-Erkennungsquote. |
||
„Sprecherabhängige“ Spracherkenner |
„Sprecherabhängige“ Spracherkenner müssen vom Benutzer auf die eigenen Besonderheiten der Aussprache länger trainiert werden. Ein zentrales Element ist die individuelle Interaktionsmöglichkeit mit dem System, um ein optimales sprecherabhängiges Ergebnis zu erzielen (eigene Begrifflichkeiten, Abkürzungen, Kürzel usw.). Eine häufige Anwendungen waren zunächst Diktier- und später auch Übersetzungssysteme. 2010 erreichten aktuelle Systeme beim Diktat von Fließtexten auf Personal Computern Erkennungsquoten von ca. 99 Prozent und erfüllen damit für viele Einsatzgebiete die Anforderungen der Praxis, z. B. für wissenschaftliche Texte, Geschäftskorrespondenz oder juristische Schriftsätze. An Grenzen stößt der Einsatz dort, wo der jeweilige Autor ständig neue, von der Software zunächst nicht erkennbare Wörter und Wortformen benötigt, deren manuelle Hinzufügung zwar möglich, aber bei nur einmaligem Vorkommen in Texten desselben Sprechers nicht effizient ist. Daher profitieren z. B. [[Dichter]] weniger vom Einsatz der Spracherkennung als z. B. [[Arzt|Ärzte]] und [[Rechtsanwalt|Rechtsanwälte]].<ref name="faz-">{{Internetquelle |autor=Michael Spehr |url=https://www.faz.net/aktuell/technik-motor/digital/dragon-naturally-speaking-11-diktieren-ist-viel-schneller-als-tippen-1611844.html |titel=Diktieren ist viel schneller als Tippen |werk=[[Frankfurter Allgemeine Zeitung#FAZ.NET|FAZ.net]] |datum=2010-09-22 |zugriff=2018-10-13}}</ref> |
||
* Front-End-Systemen und |
|||
* Back-End-Systemen. |
|||
In ''Front-End-Systemen'' erfolgt die Verarbeitung der Sprache und Umsetzung in Text unmittelbar, so dass er das Ergebnis praktisch ohne nennenswerte Zeitverzögerung ablesen kann. Die Umsetzung kann auf dem Computer des Benutzers oder Cloud-basiert erfolgen. Durch die unmittelbare Interaktion zwischen Benutzer und System wird hier die höchste Erkennungsqualität erzielt. Ebenso sind Steuerungen des Systems über Kommandos und Einbindung weiterer Komponenten wie Echtzeit-Assistenzsysteme möglich. In ''Back-End-Systemen'' wird die Umsetzung hingegen zeitversetzt durchgeführt. Dies geschieht meist auf einem entfernten [[Server]]. Der Text steht erst mit Verzögerung zur Verfügung. Solche Systeme sind im medizinischen Bereich noch verbreitet. Da keine unmittelbare Interaktion zwischen dem Sprecher und dem Erkennungsergebnis erfolgt, ist eine herausragende Qualität nur dann zu erwarten, wenn der Nutzer bereits Erfahrung mit Spracherkennung hat. |
|||
„Sprecherunabhängige“ Spracherkennung wird bevorzugt im technischen Einsatz verwendet, zum Beispiel in automatischen [[Sprachdialogsystem|Dialogsystemen]] wie etwa einer Fahrplanauskunft. Überall dort, wo nur ein begrenzter Wortschatz verwendet wird, wird die sprecherunabhängige Spracherkennung mit Erfolg praktiziert. So erreichen Systeme zur Erkennung der gesprochenen englischen Ziffern von 0 bis 9 eine nahezu 100-%-Erkennungsquote. |
|||
Im Einsatz von „sprecherabhängiger“ Spracherkennung können sehr hohe Erkennungsquoten erreicht werden. Allerdings kann selbst eine [[Treffsicherheit]] von 95 Prozent als zu gering empfunden werden, da zu viel nachgebessert werden muss. Entscheidend für den Erfolg „sprecherabhängiger“ Spracherkennung ist die Interaktion zwischen Nutzer und System, die dem Nutzer ermöglicht, direkt oder indirekt Einfluss auf das persönliche Erkennungsergebnis zu nehmen. |
|||
Zwischenzeitlich erreichen aktuelle Systeme beim Diktat von Fließtexten auf Personal Computern Erkennungsquoten von ca. 99 Prozent und erfüllen damit für viele Einsatzgebiete die Anforderungen der Praxis, z. B. für wissenschaftliche Texte, Geschäftskorrespondenz oder juristische Schriftsätze. An Grenzen stößt der Einsatz dort, wo der jeweilige Autor ständig neue, von der Software zunächst nicht erkennbare Wörter und Wortformen benötigt, deren manuelle Hinzufügung zwar möglich, aber bei nur einmaligem Vorkommen in Texten desselben Sprechers nicht effizient ist. Daher profitieren z. B. [[Dichter]] weniger vom Einsatz der Spracherkennung als z. B. [[Arzt|Ärzte]] und [[Rechtsanwalt|Rechtsanwälte]].<ref name="faz-">{{Internetquelle |autor=Michael Spehr |url=https://www.faz.net/aktuell/technik-motor/digital/dragon-naturally-speaking-11-diktieren-ist-viel-schneller-als-tippen-1611844.html |titel=Diktieren ist viel schneller als Tippen |werk=[[Frankfurter Allgemeine Zeitung#FAZ.NET|FAZ.net]] |datum=2010-09-22 |zugriff=2018-10-13}}</ref> |
|||
Neben der Größe und Flexibilität des Wörterbuches spielt auch die Qualität der akustischen Aufnahme eine entscheidende Rolle. Bei Mikrofonen, die direkt vor dem Mund angebracht sind (zum Beispiel bei [[Headset]]s oder Telefonen) wird eine signifikant höhere Erkennungsgenauigkeit erreicht als bei weiter entfernten Raummikrofonen. |
Neben der Größe und Flexibilität des Wörterbuches spielt auch die Qualität der akustischen Aufnahme eine entscheidende Rolle. Bei Mikrofonen, die direkt vor dem Mund angebracht sind (zum Beispiel bei [[Headset]]s oder Telefonen) wird eine signifikant höhere Erkennungsgenauigkeit erreicht als bei weiter entfernten Raummikrofonen. |
||
Zeile 48: | Zeile 39: | ||
Wesentlichste Einflussfaktoren in der Praxis sind allerdings eine präzise Aussprache und das zusammenhängende flüssig gesprochene Diktat, so dass Wortzusammenhänge und Wortfolgewahrscheinlichkeiten optimal in den Erkennungsprozess einfließen können. |
Wesentlichste Einflussfaktoren in der Praxis sind allerdings eine präzise Aussprache und das zusammenhängende flüssig gesprochene Diktat, so dass Wortzusammenhänge und Wortfolgewahrscheinlichkeiten optimal in den Erkennungsprozess einfließen können. |
||
⚫ | |||
=== Lippenlesen === |
=== Lippenlesen === |
||
Zeile 139: | Zeile 128: | ||
==== Neuronale Netze ==== |
==== Neuronale Netze ==== |
||
Alternativ wurden auch schon Versuche unternommen, [[Künstliches neuronales Netz|neuronale Netze]] für das akustische Modell zu verwenden. Mit [[Time Delay Neural Network]]s sollten dabei insbesondere die Veränderungen im Frequenzspektrum über den Zeitablauf hinweg zur Erkennung verwendet werden. Die Entwicklung hatte zunächst durchaus positive Ergebnisse gebracht, wurde dann aber zugunsten der HMMs wieder aufgegeben. Erst in den |
Alternativ wurden auch schon Versuche unternommen, [[Künstliches neuronales Netz|neuronale Netze]] für das akustische Modell zu verwenden. Mit [[Time Delay Neural Network]]s sollten dabei insbesondere die Veränderungen im Frequenzspektrum über den Zeitablauf hinweg zur Erkennung verwendet werden. Die Entwicklung hatte zunächst durchaus positive Ergebnisse gebracht, wurde dann aber zugunsten der HMMs wieder aufgegeben. Erst in den 2010erJahren wurde dieses Konzept im Rahmen von Deep Neural Networks wiederentdeckt. Spracherkennungssysteme, die auf [[Deep Learning]] aufsetzen, liefern Erkennungsraten im menschlichen Bereich.<ref>{{Internetquelle |autor=Srini Penchikala |url=https://www.infoq.com/news/2017/03/ibm-speech-recognition/ |titel=Using Deep Learning Technologies IBM Reaches a New Milestone in Speech Recognition |datum=2017-03-31 |sprache=en |abruf=2022-01-27}}</ref> Mit ''Coqui STT'' existiert ein freies [[Open Source|Open-Source]] Werkzeug.<ref>{{Internetquelle |url=https://stt.readthedocs.io/en/latest/ |titel=Home - Coqui STT 1.1.0 documentation |sprache=en |abruf=2022-01-27}}</ref><ref>{{Internetquelle |url=https://github.com/coqui-ai/STT |titel=coqui-ai/STT |werk=[[GitHub]] |hrsg=coqui |datum=2022-01-27 |sprache=en |abruf=2022-01-27}}</ref> STT steht für Speech-To-Text. |
||
Es gibt aber auch einen hybriden Ansatz, bei dem die aus der Vorverarbeitung gewonnenen Daten durch ein neuronales Netzwerk vor-klassifiziert werden, und die Ausgabe des Netzes als Parameter für die Hidden Markov Modelle genutzt wird. Dies hat den Vorteil, dass man ohne die Komplexität der HMMs zu erhöhen auch Daten von kurz vor und kurz nach dem gerade bearbeiteten Zeitraum nutzen kann. Außerdem kann man so die Klassifizierung der Daten und die kontextsensitive Zusammensetzung (Bildung von sinnvollen Wörtern/Sätzen) voneinander trennen. |
Es gibt aber auch einen hybriden Ansatz, bei dem die aus der Vorverarbeitung gewonnenen Daten durch ein neuronales Netzwerk vor-klassifiziert werden, und die Ausgabe des Netzes als Parameter für die Hidden Markov Modelle genutzt wird. Dies hat den Vorteil, dass man ohne die Komplexität der HMMs zu erhöhen auch Daten von kurz vor und kurz nach dem gerade bearbeiteten Zeitraum nutzen kann. Außerdem kann man so die Klassifizierung der Daten und die kontextsensitive Zusammensetzung (Bildung von sinnvollen Wörtern/Sätzen) voneinander trennen. |
||
==== Sprachmodell ==== |
==== Sprachmodell ==== |
||
{{Hauptartikel|Sprachmodell}} |
|||
Das Sprachmodell versucht anschließend, die Wahrscheinlichkeit bestimmter Wortkombinationen zu bestimmen und dadurch falsche oder unwahrscheinliche Hypothesen auszuschließen. Dazu kann entweder ein Grammatikmodell unter Verwendung [[Formale Grammatik|Formaler Grammatiken]] oder ein statistisches Modell mit Hilfe von [[N-Gramm]]en eingesetzt werden. |
Das Sprachmodell versucht anschließend, die Wahrscheinlichkeit bestimmter Wortkombinationen zu bestimmen und dadurch falsche oder unwahrscheinliche Hypothesen auszuschließen. Dazu kann entweder ein Grammatikmodell unter Verwendung [[Formale Grammatik|Formaler Grammatiken]] oder ein statistisches Modell mit Hilfe von [[N-Gramm]]en eingesetzt werden. |
||
Zeile 159: | Zeile 149: | ||
== Anwendungsbeispiele == |
== Anwendungsbeispiele == |
||
Die Spracherkennung wird heutzutage u. a. in Smartphones eingesetzt z. B. bei [[Siri (Software)|Siri]], [[Google Now]], [[Cortana (Software)|Cortana]], [[Amazon Echo|Amazons Echo / Alexa]], Samsungs [[S Voice]] oder dem freien [[Open Source|Open-Source]]-[[Sprachassistent |
Die Spracherkennung wird heutzutage u. a. in Smartphones eingesetzt z. B. bei [[Siri (Software)|Siri]], [[Google Now]], [[Cortana (Software)|Cortana]], [[Amazon Echo|Amazons Echo / Alexa]], Samsungs [[S Voice]] oder dem freien [[Open Source|Open-Source]]-[[Sprachassistent]]en [[Mycroft (Sprachassistent)|Mycroft]]. Mit der nun hohen Zuverlässigkeit in der Alltagssprache (z. B. Smartphones) oder in der Fachsprache (individualisierbare professionelle Systeme) kann Sprache in Text gewandelt ''(speech to text)'', Befehle und Steuerungen ausgeführt ''(command and control)'' oder semantische Analysen durchgeführt werden ''(language understanding)''. |
||
Mit zunehmender Qualität der Spracherkennung kommen immer neue Einsatzgebiete hinzu. Für mehr Komfort sorgen die Lösungen unter anderem mit Smartphones, wenn es um das Bedienen von HiFi-Anlagen oder Beleuchtungssystemen im eigenen Zuhause geht. Das Beispiel der '''[[Heizungssteuerung]]''' mit Sprachbefehlen zeigt aber auch, dass sich technisch komplexe Sachverhalte auf diese Weise sehr einfach nutzen lassen. So reicht heute ein Sprachbefehl aus, um [[Heizkurve|'''Heizkurven''']] anzupassen, Temperaturprofile einzuprogrammieren oder die Heizungsanlage für eine bestimmte Zeit in den abgesenkten Urlaubsmodus zu schicken. Ein positiver Nebeneffekt: Menschen machen öfter von den Einsparmöglichkeiten Gebrauch und sparen Energie.<ref>{{Internetquelle |url=https://tiarda.com/de/de/ratgeber/sprachsteuerung/ |titel=Sprachsteuerung: Wie funktioniert das eigentlich genau? |sprache=de |abruf=2022-06-30}}</ref> |
Mit zunehmender Qualität der Spracherkennung kommen immer neue Einsatzgebiete hinzu. Für mehr Komfort sorgen die Lösungen unter anderem mit Smartphones, wenn es um das Bedienen von HiFi-Anlagen oder Beleuchtungssystemen im eigenen Zuhause geht. Das Beispiel der '''[[Heizungssteuerung]]''' mit Sprachbefehlen zeigt aber auch, dass sich technisch komplexe Sachverhalte auf diese Weise sehr einfach nutzen lassen. So reicht heute ein Sprachbefehl aus, um [[Heizkurve|'''Heizkurven''']] anzupassen, Temperaturprofile einzuprogrammieren oder die Heizungsanlage für eine bestimmte Zeit in den abgesenkten Urlaubsmodus zu schicken. Ein positiver Nebeneffekt: Menschen machen öfter von den Einsparmöglichkeiten Gebrauch und sparen Energie.<ref>{{Internetquelle |url=https://tiarda.com/de/de/ratgeber/sprachsteuerung/ |titel=Sprachsteuerung: Wie funktioniert das eigentlich genau? |sprache=de |abruf=2022-06-30}}</ref> |
Aktuelle Version vom 6. Juli 2024, 19:15 Uhr
Die Spracherkennung oder auch automatische Spracherkennung ist ein Verfahren und ein Teilgebiet der angewandten Informatik, der Ingenieurwissenschaften und der Computerlinguistik. Sie beschäftigt sich mit der Untersuchung und Entwicklung von Verfahren, die Automaten, insbesondere Computern, die gesprochene Sprache der automatischen Datenerfassung zugänglich macht. So lassen sich beispielsweise aus Tonspuren durchsuchbare Transkripte erstellen.
Die Spracherkennung ist zu unterscheiden von der Stimm- bzw. Sprechererkennung, einem biometrischen Verfahren zur Personenidentifikation. Allerdings ähneln sich die Realisierungen dieser Verfahren.
Geschichtliche Entwicklung
[Bearbeiten | Quelltext bearbeiten]Die Forschung an Spracherkennungssystemen begann in den 1960er Jahren, verlief damals allerdings weitestgehend erfolglos: Die von privaten Firmen entwickelten Systeme ermöglichten unter Laborbedingungen die Erkennung von einigen Dutzend Einzelwörtern. Dies lag einerseits an dem begrenzten Wissen in diesem neuen Forschungsgebiet, aber auch an den zur damaligen Zeit begrenzten technischen Möglichkeiten.
Erst Mitte der 1980er Jahre kam die Entwicklung weiter voran. In dieser Zeit entdeckte man, dass man durch Kontextprüfungen Homophone unterscheiden konnte. Indem man Statistiken über die Häufigkeit bestimmter Wortkombinationen erstellte und auswertete, konnte man bei ähnlich oder gleich klingenden Wörtern entscheiden, welches gemeint war. Diese sogenannten Trigrammstatistiken wurden anschließend ein wichtiger Bestandteil aller Spracherkennungssysteme. Ein von Dragon Systems entwickeltes System war zu seiner Zeit sehr fortschrittlich: Dieses ließ sich auf einem tragbaren PC verwenden.
Zwischen 1988 und 1993 demonstrierte das europäische Projekt SUNDIAL[1] auch die Spracherkennung der Zugfahrpläne in deutscher Sprache.[2] SUNDIAL studierte auch Bewertungskennzahlen der Spracherkennungen.[3][4][5]
IBM
[Bearbeiten | Quelltext bearbeiten]1984 stellte IBM ein erstes Spracherkennungssystem vor, das etwa 5.000 englische Einzelwörter erkennen konnte. Das System brauchte für einen Erkennungsvorgang jedoch mehrere Minuten Rechenzeit auf einem Großrechner. 1991 stellte IBM erstmals auf der CeBIT ein Spracherkennungssystem vor, das 20.000 bis 30.000 deutsche Wörter erkennen konnte. Die Präsentation des TANGORA 4 genannten Systems musste jedoch in einem speziell abgeschirmten Raum stattfinden, da der Lärm der Messe das System sonst gestört hätte. Ende 1993 stellte IBM das erste für den Massenmarkt entwickelte Spracherkennungssystem vor: Das IBM Personal Dictation System genannte System lief auf normalen PCs und kostete unter 1000 Dollar. Als es unter dem Namen IBM VoiceType Diktiersystem auf der CeBIT 1994 präsentiert wurde, stieß es auf hohes Interesse seitens der Besucher und der Fachpresse. 1997 erschienen für den PC-Endbenutzer sowohl die Software IBM ViaVoice (Nachfolger von IBM VoiceType) als auch die Version 1.0 der Software Dragon NaturallySpeaking. 1998 brachte Philips Speech Recognition Systems mit FreeSpeech 98 eine Spracherkennung für PC-Endbenutzer auf den Markt, dessen Steuerung auf das hauseigene digitale Diktiergerät SpeechMike angepasst war, stellte die Produktlinie aber nach der zweiten Version FreeSpeech 2000 wieder ein. 2004 gab IBM Teile seiner Spracherkennungsanwendungen als Open Source frei und sorgte damit für Aufsehen. Branchenkenner vermuteten als Grund taktische Maßnahmen gegen die Firma Microsoft, die ebenfalls in diesem Bereich tätig ist und seit 2007 mit Erscheinen ihres PC-Betriebssystems Windows Vista als integralen Bestandteil erstmals Spracherkennungsfunktionen für die Steuerung wie auch für das Diktat anbot, die bis heute in Windows 10 weiterentwickelt wurden.
Nuance Communications
[Bearbeiten | Quelltext bearbeiten]Während die Entwicklung von IBM ViaVoice eingestellt wurde, entwickelte sich Dragon NaturallySpeaking zur meistverbreiteten sprecherabhängigen Drittanbieter-Spracherkennungssoftware für Windows-PCs; sie wurde ab dem Jahr 2005 von Nuance Communications hergestellt und vertrieben. Nuance hatte 2008 mit dem Erwerb der Philips Speech Recognition Systems, Wien, auch die Rechte an dem Software Development Kit (SDK) SpeechMagic erlangt, welches insbesondere im Gesundheitsbereich Verbreitung gefunden hatte. Für iMac-Personal Computer von Apple wurde von dem Unternehmen MacSpeech seit 2006 eine Drittanbieter-Spracherkennungssoftware unter dem Namen iListen vertrieben, die auf Philips-Komponenten basierte. 2008 wurde diese durch MacSpeech Dictate unter Verwendung der Kernkomponenten von Dragon NaturallySpeaking abgelöst und nach dem Erwerb von MacSpeech durch Nuance Communications 2010 in Dragon Dictate (Version 2.0 – ab 2012 wurde die Version 3.0 vertrieben) umbenannt. 2020 wurde für medizinische Anwendungen die Software Dragon Medical One vorgestellt. Nuance Communications wurde im März 2022 von Microsoft übernommen.[6]
Situation heute (2024)
[Bearbeiten | Quelltext bearbeiten]Alternativen zu Dragon Medical One sind im Jahr 2024 u. a. die Produkte Indicta von DFC Systems,[7] M*Modal Fluency Direct von Solventum (ehemals 3M)[8] oder Speaking von Media Interface.[9]
Aktuelle Spracherkennungssysteme müssen nicht mehr trainiert werden. Entscheidend für eine hohe Treffsicherheit außerhalb der Alltagssprache ist dabei die Plastizität des Systems. Um hohen Ansprüchen gerecht werden zu können, bieten professionelle Systeme dem Anwender die Möglichkeit, durch Vorschreiben oder Vorsprechen das persönliche Ergebnis zu beeinflussen.[10]
Spracherkennung auf Mobilgeräten
[Bearbeiten | Quelltext bearbeiten]2007 wurde die Firma Siri Inc. gegründet und im April 2010 von Apple gekauft. Im Oktober 2011 stellte Apple die Spracherkennungssoftware Siri für das iPhone 4s vor, die der Erkennung und Verarbeitung von natürlich gesprochener Sprache (unter Nutzung von Apple Servern) dient und so Funktionen eines persönlichen Assistenten erfüllen soll. Die Entwicklung bei der Spracherkennung schreitet sehr schnell voran. 2016 wurden Spracherkennungssysteme in Form von Siri, Google Now, Cortana und Samsungs S Voice in Smartphones eingesetzt.
Grundlagen
[Bearbeiten | Quelltext bearbeiten]Es kann zwischen zwei Arten der Spracherkennung unterschieden werden:
- Sprecherunabhängige Spracherkennung
- Sprecherabhängige Spracherkennung
Charakteristisch für die „sprecherunabhängige“ Spracherkennung der Einsatz in Anwendungen mit häufig wechselnden Benutzern (z. B. Call-Center in automatischen Dialogsystemen wie etwa einer Fahrplanauskunft), wobei die vorhergehende Trainingsphase relativ kurz ist. Überall dort, wo nur ein begrenzter Wortschatz verwendet wird, wird die sprecherunabhängige Spracherkennung mit Erfolg praktiziert. So erreichen Systeme zur Erkennung der gesprochenen englischen Ziffern von 0 bis 9 eine nahezu 100-%-Erkennungsquote.
„Sprecherabhängige“ Spracherkenner müssen vom Benutzer auf die eigenen Besonderheiten der Aussprache länger trainiert werden. Ein zentrales Element ist die individuelle Interaktionsmöglichkeit mit dem System, um ein optimales sprecherabhängiges Ergebnis zu erzielen (eigene Begrifflichkeiten, Abkürzungen, Kürzel usw.). Eine häufige Anwendungen waren zunächst Diktier- und später auch Übersetzungssysteme. 2010 erreichten aktuelle Systeme beim Diktat von Fließtexten auf Personal Computern Erkennungsquoten von ca. 99 Prozent und erfüllen damit für viele Einsatzgebiete die Anforderungen der Praxis, z. B. für wissenschaftliche Texte, Geschäftskorrespondenz oder juristische Schriftsätze. An Grenzen stößt der Einsatz dort, wo der jeweilige Autor ständig neue, von der Software zunächst nicht erkennbare Wörter und Wortformen benötigt, deren manuelle Hinzufügung zwar möglich, aber bei nur einmaligem Vorkommen in Texten desselben Sprechers nicht effizient ist. Daher profitieren z. B. Dichter weniger vom Einsatz der Spracherkennung als z. B. Ärzte und Rechtsanwälte.[11]
Neben der Größe und Flexibilität des Wörterbuches spielt auch die Qualität der akustischen Aufnahme eine entscheidende Rolle. Bei Mikrofonen, die direkt vor dem Mund angebracht sind (zum Beispiel bei Headsets oder Telefonen) wird eine signifikant höhere Erkennungsgenauigkeit erreicht als bei weiter entfernten Raummikrofonen.
Wesentlichste Einflussfaktoren in der Praxis sind allerdings eine präzise Aussprache und das zusammenhängende flüssig gesprochene Diktat, so dass Wortzusammenhänge und Wortfolgewahrscheinlichkeiten optimal in den Erkennungsprozess einfließen können.
Lippenlesen
[Bearbeiten | Quelltext bearbeiten]Um die Erkennungsgenauigkeit noch weiter zu erhöhen, wird teils auch versucht, mithilfe einer Videokamera das Gesicht des Sprechers zu filmen und daraus die Lippenbewegungen abzulesen. Indem man diese Ergebnisse mit den Ergebnissen der akustischen Erkennung kombiniert, kann man gerade bei verrauschten Aufnahmen eine signifikant höhere Erkennungsquote erreichen.[12]
Dies entspricht Beobachtungen bei der menschlichen Spracherkennung: Harry McGurk hatte 1976 festgestellt, dass auch Menschen aus der Lippenbewegung auf die gesprochene Sprache schließen (McGurk-Effekt).
Sprachausgabe
[Bearbeiten | Quelltext bearbeiten]Da es sich bei Kommunikation mit menschlicher Sprache meist um einen Dialog zwischen zwei Gesprächspartnern handelt, findet man die Spracherkennung häufig in Verbindung mit Sprachsynthese. Auf diesem Weg können dem Benutzer des Systems akustische Rückmeldungen über den Erfolg der Spracherkennung und Hinweise über eventuell ausgeführte Aktionen gegeben werden. Auf die gleiche Weise kann der Benutzer auch zu einer erneuten Spracheingabe aufgefordert werden.
Problemstellung
[Bearbeiten | Quelltext bearbeiten]Um zu verstehen, wie ein Spracherkennungssystem arbeitet, muss man sich zuerst über die Herausforderungen klar werden, die zu bewältigen sind.
Diskrete und kontinuierliche Sprache
[Bearbeiten | Quelltext bearbeiten]Bei einem Satz in der Alltagssprache werden die einzelnen Wörter ohne wahrnehmbare Pause dazwischen ausgesprochen. Als Mensch kann man sich intuitiv an den Übergängen zwischen den Wörtern orientieren – frühere Spracherkennungssysteme waren dazu nicht in der Lage. Sie erforderten eine diskrete (unterbrochene) Sprache, bei der zwischen den Wörtern künstliche Pausen gemacht werden müssen.
Moderne Systeme sind jedoch auch fähig, kontinuierliche (fließende) Sprache zu verstehen.
Diskrete Sprache
[Bearbeiten | Quelltext bearbeiten]Bei der diskreten Sprache erkennt man deutlich die Pausen zwischen den Wörtern, die länger und deutlicher ausfallen als die Übergänge zwischen den Silben innerhalb des Worts Enzyklopädie.
Kontinuierliche Sprache
[Bearbeiten | Quelltext bearbeiten]Bei der kontinuierlichen Sprache gehen die einzelnen Wörter ineinander über, es sind keine Pausen erkennbar.
Größe des Wortschatzes
[Bearbeiten | Quelltext bearbeiten]Durch die Flexion, also die Beugung eines Wortes je nach grammatikalischer Funktion, entstehen aus Wortstämmen (Lexemen) eine Vielzahl von Wortformen. Dies ist für die Größe des Wortschatzes von Bedeutung, da alle Wortformen bei der Spracherkennung als eigenständige Wörter betrachtet werden müssen.
Die Größe des Wörterbuchs hängt stark von der Sprache ab. Zum einen haben durchschnittliche deutschsprachige Sprecher mit circa 4000 Wörtern einen deutlich größeren Wortschatz als englischsprachige mit rund 800 Wörtern. Außerdem ergeben sich durch die Flexion in der deutschen Sprache in etwa zehnmal so viele Wortformen, wie in der englischen Sprache, wo nur viermal so viele Wortformen entstehen. (Quellen angeben)
Homophone
[Bearbeiten | Quelltext bearbeiten]In vielen Sprachen gibt es Wörter oder Wortformen, die eine unterschiedliche Bedeutung haben, jedoch gleich ausgesprochen werden. So klingen die Wörter „Meer“ und „mehr“ zwar identisch, haben jedoch trotzdem nichts miteinander zu tun. Solche Wörter nennt man Homophone. Da ein Spracherkennungssystem im Gegensatz zum Menschen in der Regel kein Weltwissen hat, kann es die verschiedenen Möglichkeiten nicht anhand der Bedeutung unterscheiden.
Die Frage nach der Groß- oder Kleinschreibung fällt auch in diesen Bereich.
Formanten
[Bearbeiten | Quelltext bearbeiten]Auf akustischer Ebene spielt insbesondere die Lage der Formanten eine Rolle: Die Frequenzanteile gesprochener Vokale konzentrieren sich typischerweise auf bestimmte unterschiedliche Frequenzen, die Formanten genannt werden. Für die Unterscheidung der Vokale sind insbesondere die zwei tiefsten Formanten von Bedeutung: Die tiefere Frequenz liegt im Bereich von 200 bis 800 Hertz, die höhere im Bereich von 800 bis 2400 Hertz. Über die Lage dieser Frequenzen lassen sich die einzelnen Vokale unterscheiden.
Konsonanten
[Bearbeiten | Quelltext bearbeiten]Konsonanten sind vergleichsweise schwierig zu erkennen; einzelne Konsonanten (sogenannte Plosive) sind zum Beispiel nur durch den Übergang zu den benachbarten Lauten feststellbar, wie folgendes Beispiel zeigt:
Man erkennt, dass innerhalb des Wortes sprechen der Konsonant p (genauer: die Verschlussphase des Phonems p) faktisch nur Stille ist und lediglich durch die Übergänge zu den anderen Vokalen erkannt wird – das Entfernen bewirkt also keinen hörbaren Unterschied.
Andere Konsonanten sind durchaus an charakteristischen spektralen Mustern erkennbar. So zeichnen sich etwa der Laut s wie auch der Laut f (Reibelaute) durch einen hohen Energieanteil in höheren Frequenzbändern aus. Bemerkenswert ist, dass die für die Unterscheidung dieser beiden Laute relevanten Informationen größtenteils außerhalb des in Telefonnetzen übertragenen Spektralbereichs (bis zirka 3,4 kHz) liegt. Dadurch ist es zu erklären, dass das Buchstabieren über Telefon ohne Verwendung eines speziellen Buchstabieralphabets auch in der Kommunikation zwischen zwei Menschen ausgesprochen mühselig und fehleranfällig ist.
Dialekte und Soziolekte
[Bearbeiten | Quelltext bearbeiten]Auch wenn ein Spracherkennungsprogramm bereits gut auf eine Hochsprache eingestellt ist, bedeutet dies jedoch nicht, dass es jede Ausformung dieser Sprache verstehen kann. Besonders im Fall von Dialekten und Soziolekten stoßen solche Programme häufig an ihre Grenzen. Menschen sind meist in der Lage, sich schnell auf die möglicherweise unbekannte Mundart ihres Gegenübers einzustellen – Erkennungssoftware ist dazu nicht ohne weiteres in der Lage. Dialekte müssen dem Programm hierfür erst in aufwendigen Prozessen beigebracht werden.[13]
Zudem muss auch beachtet werden, dass sich gelegentlich und regional abhängig Wortbedeutungen verändern können. So meinen Bayern und Berliner beispielsweise unterschiedliche Süßspeisen, wenn von „Pfannkuchen“ die Rede ist. Ein Mensch kann durch sein kulturelles Hintergrundwissen derartige Missverständnisse leichter vermeiden und aufklären als es eine Software aktuell vermag.
Lösungsstrategien bei Kommunikationsproblemen
[Bearbeiten | Quelltext bearbeiten]Sollte es zu Verständnisproblemen in einer Kommunikation kommen, tendieren Menschen naturgemäß dazu, besonders laut zu sprechen oder missverstandene Begriffe ausführlicher zu umschreiben. Dies kann sich jedoch einem Computer gegenüber kontraproduktiv auswirken, da dieser auf normale Gesprächslautstärke trainiert ist und außerdem eher mit Schlüsselwörtern arbeitet, als Sinnzusammenhänge zu erfassen.
Realisierung
[Bearbeiten | Quelltext bearbeiten]Ein Spracherkennungssystem besteht aus folgenden Bestandteilen: Einer Vorverarbeitung, die die analogen Sprachsignale in die einzelnen Frequenzen zerlegt. Anschließend findet die tatsächliche Erkennung mit Hilfe akustischer Modelle, Wörterbücher und Sprachmodellen statt.
Vorverarbeitung
[Bearbeiten | Quelltext bearbeiten]Die Vorverarbeitung besteht im Wesentlichen aus den Schritten Abtastung, Filterung, Transformation des Signals in den Frequenzbereich und Erstellen des Merkmalsvektors.
Abtastung
[Bearbeiten | Quelltext bearbeiten]Bei der Abtastung wird das analoge (kontinuierliche) Signal digitalisiert, also in eine elektronisch verarbeitbare Bitfolge zerlegt, um es einfacher weiterverarbeiten zu können.
Filterung
[Bearbeiten | Quelltext bearbeiten]Die wichtigste Aufgabe des Arbeitsschrittes Filterung ist die Unterscheidung von Umgebungsgeräuschen wie Rauschen oder z. B. Motorengeräuschen und Sprache. Dazu wird zum Beispiel die Energie des Signals oder die Nulldurchgangsrate herangezogen.
Transformation
[Bearbeiten | Quelltext bearbeiten]Für die Spracherkennung ist nicht das Zeitsignal, sondern das Signal im Frequenzbereich relevant. Dazu wird es mittels FFT transformiert. Aus dem Resultat, dem Frequenzspektrum, lassen sich die im Signal vorhandenen Frequenzanteile ablesen.
Merkmalsvektor
[Bearbeiten | Quelltext bearbeiten]Zur eigentlichen Spracherkennung wird ein Merkmalsvektor erstellt. Dieser besteht aus voneinander abhängigen oder unabhängigen Merkmalen, die aus dem digitalen Sprachsignal erzeugt werden. Dazu gehört neben dem schon erwähnten Spektrum vor allem das Cepstrum. Merkmalsvektoren lassen sich z. B. mittels einer zuvor zu definierenden Metrik vergleichen.
Cepstrum
[Bearbeiten | Quelltext bearbeiten]Das Cepstrum wird aus dem Spektrum gewonnen, indem die FFT des logarithmierten Betrags-Spektrum gebildet wird. So lassen sich Periodizitäten im Spektrum erkennen. Diese werden im menschlichen Vokaltrakt und durch die Stimmbandanregung erzeugt. Die Periodizitäten durch die Stimmbandanregung überwiegen und sind daher im oberen Teil des Cepstrums zu finden, wohingegen der untere Teil die Stellung des Vokaltraktes abbildet. Dieser ist für die Spracherkennung relevant, daher fließen nur diese unteren Anteile des Cepstrums in den Merkmalsvektor ein. Da sich die Raumübertragungsfunktion – also die Veränderung des Signals z. B. durch Reflexionen an Wänden – zeitlich nicht verändert, lässt diese sich durch den Mittelwert des Cepstrums darstellen. Dieser wird deshalb häufig vom Cepstrum subtrahiert, um Echos zu kompensieren. Ebenso ist zur Kompensation der Raumübertragungsfunktion die erste Ableitung des Cepstrum heranzuziehen, die ebenfalls in den Merkmalsvektor einfließen kann.
Erkennung
[Bearbeiten | Quelltext bearbeiten]Hidden-Markov-Modelle
[Bearbeiten | Quelltext bearbeiten]Im weiteren Verlauf spielen Hidden-Markov-Modelle (HMM) eine wichtige Rolle. Diese ermöglichen es, die Phoneme zu finden, die am besten zu den Eingangssignalen passen. Dazu wird das akustische Modell eines Phonems in verschiedene Teile zerlegt: Den Anfang, je nach Länge unterschiedlich viele Mittelstücke und das Ende. Die Eingangssignale werden mit diesen gespeicherten Teilstücken verglichen und mit Hilfe des Viterbi-Algorithmus mögliche Kombinationen gesucht.
Für die Erkennung von unterbrochener (diskreter) Sprache (bei der nach jedem Wort eine Pause gemacht wird) reichte es aus, jeweils ein Wort zusammen mit einem Pausenmodell innerhalb des HMMs zu berechnen. Da die Rechenkapazität moderner PCs aber deutlich gestiegen ist, kann mittlerweile auch fließende (kontinuierliche) Sprache erkannt werden, indem größere Hidden Markov Modelle gebildet werden, die aus mehreren Wörtern und den Übergängen zwischen ihnen bestehen.
Neuronale Netze
[Bearbeiten | Quelltext bearbeiten]Alternativ wurden auch schon Versuche unternommen, neuronale Netze für das akustische Modell zu verwenden. Mit Time Delay Neural Networks sollten dabei insbesondere die Veränderungen im Frequenzspektrum über den Zeitablauf hinweg zur Erkennung verwendet werden. Die Entwicklung hatte zunächst durchaus positive Ergebnisse gebracht, wurde dann aber zugunsten der HMMs wieder aufgegeben. Erst in den 2010erJahren wurde dieses Konzept im Rahmen von Deep Neural Networks wiederentdeckt. Spracherkennungssysteme, die auf Deep Learning aufsetzen, liefern Erkennungsraten im menschlichen Bereich.[14] Mit Coqui STT existiert ein freies Open-Source Werkzeug.[15][16] STT steht für Speech-To-Text.
Es gibt aber auch einen hybriden Ansatz, bei dem die aus der Vorverarbeitung gewonnenen Daten durch ein neuronales Netzwerk vor-klassifiziert werden, und die Ausgabe des Netzes als Parameter für die Hidden Markov Modelle genutzt wird. Dies hat den Vorteil, dass man ohne die Komplexität der HMMs zu erhöhen auch Daten von kurz vor und kurz nach dem gerade bearbeiteten Zeitraum nutzen kann. Außerdem kann man so die Klassifizierung der Daten und die kontextsensitive Zusammensetzung (Bildung von sinnvollen Wörtern/Sätzen) voneinander trennen.
Sprachmodell
[Bearbeiten | Quelltext bearbeiten]Das Sprachmodell versucht anschließend, die Wahrscheinlichkeit bestimmter Wortkombinationen zu bestimmen und dadurch falsche oder unwahrscheinliche Hypothesen auszuschließen. Dazu kann entweder ein Grammatikmodell unter Verwendung Formaler Grammatiken oder ein statistisches Modell mit Hilfe von N-Grammen eingesetzt werden.
Eine Bi- oder Trigrammstatistik speichert die Auftrittswahrscheinlichkeit von Wortkombinationen aus zwei oder mehr Wörtern. Diese Statistiken werden aus großen Textkorpora (Beispieltexten) gewonnen. Jede von der Spracherkennung ermittelte Hypothese wird anschließend geprüft und ggf. verworfen, falls ihre Wahrscheinlichkeit zu gering ist. Dadurch können auch Homophone, also unterschiedliche Wörter mit identischer Aussprache unterschieden werden. „Vielen Dank“ wäre also wahrscheinlicher als „Fielen Dank“, obwohl beides gleich ausgesprochen wird.
Mit Trigrammen sind im Vergleich zu Bigrammen theoretisch zutreffendere Schätzungen der Auftrittswahrscheinlichkeiten der Wortkombinationen möglich. Allerdings müssen die Beispieltext-Datenbanken, aus denen die Trigramme extrahiert werden, wesentlich größer sein als für Bigramme, denn es müssen sämtliche zulässigen Wortkombinationen aus drei Wörtern in statistisch signifikanter Anzahl darin vorkommen (d. h.: jede wesentlich mehr als einmal). Kombinationen von vier oder mehr Wörtern wurden lange nicht verwendet, weil sich im Allgemeinen keine Beispieltext-Datenbanken mehr finden lassen, die sämtliche Wortkombinationen in genügender Anzahl beinhalten. Eine Ausnahme bildet hier Dragon, welches ab der Version 12 auch Pentagramme verwendet – was die Erkennungsgenauigkeit in diesem System steigert.
Wenn Grammatiken verwendet werden, handelt es sich meist um kontextfreie Grammatiken. Dabei muss allerdings jedem Wort seine Funktion innerhalb der Grammatik zugewiesen werden. Deshalb werden solche Systeme meist nur für einen begrenzten Wortschatz und Spezialanwendungen verwendet, nicht aber in der gängigen Spracherkennungssoftware für PCs.
Evaluation
[Bearbeiten | Quelltext bearbeiten]Die Güte eines Spracherkennungssystems lässt sich mit verschiedenen Zahlen angeben. Neben Erkennungsgeschwindigkeit – meist als Echtzeitfaktor (EZF) angegeben – lässt sich die Erkennungsgüte als Wortakkuratheit oder Worterkennungsrate messen.
Vokabulare
[Bearbeiten | Quelltext bearbeiten]Für die Integration von professionellen Spracherkennungssystemen gibt es bereits vordefinierte Vokabulare, die die Arbeit mit der Spracherkennung erleichtern sollen. Diese Vokabulare werden etwa im Umfeld von SpeechMagic ConText und im Bereich von Dragon Datapack genannt. Je besser das Vokabular auf den vom Sprecher verwendeten Wortschatz und Diktierstil (Häufigkeit der Wortfolgen) angepasst ist, desto höher ist die Erkennungsgenauigkeit. Ein Vokabular beinhaltet neben dem sprecherunabhängigen Lexikon (Fach- und Grundwortschatz) auch ein individuelles Wortfolgemodell (Sprachmodell). Im Vokabular sind alle der Software bekannten Wörter in der Phonetik und Orthografie hinterlegt. Auf diese Weise wird ein gesprochenes Wort an seinem Klang durch das System erkannt. Wenn sich Wörter in Bedeutung und Schreibweise unterscheiden, aber gleich klingen, greift die Software auf das Wortfolgemodell zurück. In ihm ist die Wahrscheinlichkeit definiert, mit der bei einem bestimmten Benutzer ein Wort auf ein anderes folgt. Spracherkennung in Smartphones verwendet die gleichen technischen Konzepte, jedoch ohne dass der Nutzer Einfluss auf das vordefinierte Vokabular hat. Neuere Technologien lösen sich von der Vorstellung einer starren hinterlegten Wortliste, da Komposita gebildet werden können. Allen Systemen ist gemein, dass sie nur durch Korrekturen des jeweiligen Benutzers individuelle Wörter und Wortfolgen lernen.
Anwendungsbeispiele
[Bearbeiten | Quelltext bearbeiten]Die Spracherkennung wird heutzutage u. a. in Smartphones eingesetzt z. B. bei Siri, Google Now, Cortana, Amazons Echo / Alexa, Samsungs S Voice oder dem freien Open-Source-Sprachassistenten Mycroft. Mit der nun hohen Zuverlässigkeit in der Alltagssprache (z. B. Smartphones) oder in der Fachsprache (individualisierbare professionelle Systeme) kann Sprache in Text gewandelt (speech to text), Befehle und Steuerungen ausgeführt (command and control) oder semantische Analysen durchgeführt werden (language understanding).
Mit zunehmender Qualität der Spracherkennung kommen immer neue Einsatzgebiete hinzu. Für mehr Komfort sorgen die Lösungen unter anderem mit Smartphones, wenn es um das Bedienen von HiFi-Anlagen oder Beleuchtungssystemen im eigenen Zuhause geht. Das Beispiel der Heizungssteuerung mit Sprachbefehlen zeigt aber auch, dass sich technisch komplexe Sachverhalte auf diese Weise sehr einfach nutzen lassen. So reicht heute ein Sprachbefehl aus, um Heizkurven anzupassen, Temperaturprofile einzuprogrammieren oder die Heizungsanlage für eine bestimmte Zeit in den abgesenkten Urlaubsmodus zu schicken. Ein positiver Nebeneffekt: Menschen machen öfter von den Einsparmöglichkeiten Gebrauch und sparen Energie.[17]
Die Spracherkennung sorgt aber auch für mehr Sicherheit. Ein Beispiel dafür ist die Steuerung von Navigationssystemen, Radios oder Smartphones im Auto. Nutzer müssen den Blick nicht mehr von der Straße abwenden. Sie können die Hände am Steuer lassen und sich weiter auf die Straße konzentrieren.[18]
Ein wichtiger Einsatzbereich für die Spracherkennung ist zudem die Medizin. Hier ermöglicht die Technik Chirurgen, Apparate ohne Hände zu bedienen und Protokolle nebenbei zu erstellen. Die Lösungen erhöhen dabei die Arbeitsqualität und sparen viel Zeit, was Ärzten und Patienten gleichermaßen zugutekommt.[19]
Siehe auch
[Bearbeiten | Quelltext bearbeiten]Literatur
[Bearbeiten | Quelltext bearbeiten]- Pirani, Giancarlo, ed.: Advanced algorithms and architectures for speech understanding. Vol. 1. Springer Science & Business Media, 2013. ISBN 978-3-642-84341-9.
- Lawrence R. Rabiner, Ronald W. Schafer: Digital Processing of Speech Signals, 1978, ISBN 0-13-213603-1.
- Matthias Woelfel, John McDonough: Distant Speech Recognition, 2009, ISBN 0-470-51704-2.
- Lawrence R. Rabiner, Biing-Hwang Juang Juang: Fundamentals of Speech Recognition, 1993, ISBN 0-13-015157-2.
- Ernst Günter Schukat-Talamazzini: Automatische Spracherkennung. Grundlagen, statistische Modelle und effiziente Algorithmen, Vieweg, Braunschweig / Wiesbaden 1995, ISBN 3-528-05492-1.
Weblinks
[Bearbeiten | Quelltext bearbeiten]- Leitfaden „Barrierefrei hören und kommunizieren in der Arbeitswelt“: Spracherkennungssoftware – Das Projekt hörkomm.de unterstützt die Inklusion schwerhöriger Beschäftigter.
Quellen
[Bearbeiten | Quelltext bearbeiten]- ↑ Speech Understanding and Dialogue. Abgerufen am 22. Mai 2020.
- ↑ Peckham, Jeremy: Speech Understanding and Dialogue over the telephone: an overview of the ESPRIT SUNDIAL project. HLT. 1991.
- ↑ Danieli, Morena; Elisabetta Gerbino: Metrics for evaluating dialogue strategies in a spoken language system. Proceedings of the 1995 AAAI spring symposium on Empirical Methods in Discourse Interpretation and Generation. Vol. 16. 1995.
- ↑ Ciaramella, Alberto: A prototype performance evaluation report. Sundial workpackage 8000 (1993).
- ↑ Charpentier, F., Micca, G., Schukat-Talamazzini, E., Thomas, T. (1995): The recognition component of the SUNDIAL project. In: Speech Recognition and Coding (pp. 345–348). Springer Berlin Heidelberg.
- ↑ Microsoft makes its second biggest acquisition, buys AI speech tech company Nuance for $19.7 billion. 13. April 2021, abgerufen am 10. Juni 2024 (englisch).
- ↑ DFC-Systems: Medizinische Spracherkennung und digitales Diktatmanagement für Klinik und Arztpraxis. In: Website von DFC Systems. DFC Systems, abgerufen am 10. Juni 2024.
- ↑ 3M Deutschland: 3M M*Modal Sprachlösungen. In: Website von 3M. 3M, abgerufen am 10. Juni 2024.
- ↑ Medizinische Spracherkennung mit SpeaKING. Abgerufen am 10. Juni 2024.
- ↑ L. Lamel, J.-L. Gauvain: Speech Recognition. Oxford Handbooks Online (Vol. 14). Oxford University Press, 2005. doi:10.1093/oxfordhb/9780199276349.013.0016
- ↑ Michael Spehr: Diktieren ist viel schneller als Tippen. In: FAZ.net. 22. September 2010, abgerufen am 13. Oktober 2018.
- ↑ Malaka, Rainer; Butz, Andreas; Hußmann, Heinrich: Medieninformatik: Eine Einführung. Pearson Studium, München 2009, ISBN 978-3-8273-7353-3, S. 263.
- ↑ Ulf Schoenert: Spracherkennung: Die Normalität des Gespräches mit Maschinen. In: Zeit Online. 14. Februar 2012, abgerufen am 6. Februar 2016.
- ↑ Srini Penchikala: Using Deep Learning Technologies IBM Reaches a New Milestone in Speech Recognition. 31. März 2017, abgerufen am 27. Januar 2022 (englisch).
- ↑ Home - Coqui STT 1.1.0 documentation. Abgerufen am 27. Januar 2022 (englisch).
- ↑ coqui-ai/STT. In: GitHub. coqui, 27. Januar 2022, abgerufen am 27. Januar 2022 (englisch).
- ↑ Sprachsteuerung: Wie funktioniert das eigentlich genau? Abgerufen am 30. Juni 2022.
- ↑ Fabian Hoberg: Sprachsteuerung fürs Auto: Mit Assistenzsystemen sicherer unterwegs. In: DIE WELT. 11. Dezember 2020 (welt.de [abgerufen am 30. Juni 2022]).
- ↑ Was kann Spracherkennung? Aktueller Stand & Zukunft. 6. Mai 2021, abgerufen am 30. Juni 2022 (deutsch).