"Lass uns reden"

Verbale menschliche Kommunikationswerkzeuge sind in ihrer Diversität und Komplexität einzigartig. Unsere natürlichen Sprachen erlauben uns komplexe Interaktion, Planung, Diskurs und vor allem von Zeit und Ort losgelöste Abstraktion. Sprechen und Hören hat der Menschheit über tausende Jahre gut gedient. Die Erfindung des Computers machte es dann notwendig, neue Sprachen zu entwickeln, mit denen die reine Informationsweitergabe und -verarbeitung unzweideutig funktionieren kann. Diverse Programmiersprachen gehören seitdem fest zum menschlichen Kulturgut.
Allerdings dürften nur sehr wenige Menschen in der Lage sein, sich direkt und interaktiv mit Computersystemen in deren eigener Sprache auseinanderzusetzen. Wir nutzen daher die Fähigkeiten von Rechnern, Aufgaben ausführen zu lassen, über Schnittstellen, die unsere menschliche Sprache in die Sprache der Computer übersetzen. Anfangs dienten Lochkarten und Lochstreifen dazu, unser Wünsche und Informationen an den Computer zu übermitteln, und seit ungefähr 1970 bestimmen Text-Ein- und -Ausgabe unsere sprachliche Interaktion mit computerbasierten Systemen. Touchscreens spielen etwa seit dem Jahr 2000 eine immer wichtigere Rolle – doch all diese Schnittstellen bauen eine unsichtbare Barriere auf zwischen uns und dem System. Erst seit etwa 2010 sprechen wir mit Computern und Smart Devices wie Smartphones und Smart Speakers in unseren eigenen Sprachen – doch kommunizieren wir immer noch nicht auf natürliche Weise mit unseren Helfern, tratschen und plaudern nicht mit ihnen. Warum eigentlich nicht?

User Acceptance – die Herausforderung

Dass wir beim Thema „Sprachassistenz“ noch nicht so ganz bei natürlichsprachlicher Kommunikation angelangt sind, hat sicherlich mit der massiven Komplexität und inhärenten Uneindeutigkeit natürlicher menschlicher Sprache zu tun. Beides macht es Computern mit ihren stringent logisch konstruierten Symbolsprachen sehr schwer, die Erwartungshaltung der nutzenden Personen hinsichtlich Verständnis und Reaktion auf gesprochene Befehle so zu erfüllen, dass Menschen ihre Sprachassistenten als Schnittstelle der Mensch-Maschine-Kommunikation annehmen. Zu schnell ist die Frustrationsschwelle erreicht, allzu oft bleibt das Ergebnis hinter den Erwartungen zurück – gerade bei „naiven“ Nutzer:innen, die schlicht und ergreifend die perfekte Funktion eines marktreifen Assistenten voraussetzen und wenig bis kein Verständnis für zugrundeliegende Komplexitäten oder gar Marktdruck aufbringen. Aber wo genau liegt das Problem? Dazu müssen wir uns anschauen, wie Sprachassistenten grundsätzlich arbeiten.

ASR und NLP

Bei der konkreten Spracherkennung (Automatic Speech Recognition, ASR) stellt meist ein phonetisches Modell die Beziehung zwischen akustischen Signalen und den Grundbausteinen von Wörtern, den Phonemen dar und repräsentiert diese für Computer lesbar, wandelt also Schallwellen in Bits um. Mit Hilfe computerlinguistischer Methoden verwenden Sprach- und Aussprachemodelle diese Daten, um jeden Laut in Reihenfolge und Kontext miteinander in Beziehung zu setzen und so Wörter und Sätze zu bilden.
Das erste Problem: Faktoren wie Umweltgeräusche, die Position der Sprechenden zum Mikrofon, konkurrierende Sprecher:innen beeinflussen das Signal, das die automatischen Spracherkennungssystem als Grundlage für ihre Auswertungen bekommen. Für die perfekte Spracherkennung müssten Störungen draußen bleiben – und nur Sprache reinkommen. Doch das ist in der Realität quasi unmöglich – automatische Spracherkenner müssen also gegenüber störenden Einflüssen robust sein.  


Sobald die Sprache erkannt und in Wörter und Sätze gefasst wurden, schlägt die Stunde der Sprachverarbeitung. Das Schlagwort ist Natural Language Processing (NLP). Die Verarbeitung natürlicher Sprache (Natural Language Processing, NLP) ist ein Teilgebiet der Informatik und insbesondere der künstlichen Intelligenz (AI), das sich damit befasst, Computern die Fähigkeit zu verleihen, Texte und gesprochene Worte auf ähnliche Weise wie ein Mensch semantisch zu verstehen.


Doch wie bereits gesagt ist die menschliche Sprache voller Uneindeutigkeiten, die es unglaublich schwierig machen, einem Computer die gemeinte Bedeutung von Text- oder Sprachdaten zu übergeben. Sarkasmus, Idiome und Metaphern, Homonyme und Homophone, unterschiedliche Satzstrukturen und Ausnahmen sind nur einige der Hürden, für die Menschen Jahre brauchen, um richtig damit umzugehen. Und obwohl die fortschrittlichen Methoden der Künstlichen Intelligenz (KI) beim Natural Language Processing (NLP) seit einigen Jahren dank Deep-Learning-Modellen und Lerntechniken auf der Grundlage von Convolutional Neural Networks (CNNs) und Recurrent Neural Networks (RNNs) echte Fortschritte in der Verarbeitung semantischer und syntaktischer Komplexität erzielen und tatsächlich immer intelligenter werden, so unterscheiden sich ihre Fähigkeiten teilweise doch deutlich.

Die Qual der Wahl

Für die Hersteller von automatischen Spracherkennern – und von Produkten, in denen diese eingesetzt werden – muss es ein unbedingtes Anliegen sein, dass ihre Systeme perfekt funktionieren. Doch welcher Spracherkenner in welchem Gerät in welcher Situation am besten funktioniert, lässt sich ohne tiefgehende Analyse und Tests realer Umgebungen, in denen er arbeitet, nicht so einfach beantworten. Schon die Art der Mikrofonierung – zum Beispiel bei Nah- und Tischmikrofonen – variiert gegen unendlich und resultiert in unterschiedlichen Pegeln und Verteilungen der spektralen Energie. Wie also können Hersteller von Produkten, in denen ASR zum Einsatz kommt, sichergehen, dass die automatische Spracherkennung optimale Ergebnisse liefert?
Nun, je mehr Varianten (Umweltgeräusche, konkurrierende Sprecher:innen und unterschiedliche Positionen der Sprechenden zu unterschiedlichen Mikrofonen) beim Testen zum Zuge kommen, desto besser. Die Realität im Labor so gut wie möglich abzudecken ist für die Entwicklung und Verbesserung von Geräten mit ASR-Systemen unabdingbar. Andererseits macht mehr Variation das Testen zeitaufwändiger und eine exakte Reproduktion der Gegebenheiten ungleich schwieriger.

Variation reproduzierbar testen

Genau zu diesem Zweck hat HEAD acoustics die Software VoCAS (Voice Control Analysis System) entwickelt. Sie bewertet selbst in komplexen Szenarien realistisch und objektiv, wie gut Geräte, in denen eine Spracherkennungsfunktion integriert ist, das Signal vorverarbeiten. Das Ziel dieser Vorverarbeitung ist, das Signal von allen möglichen störenden und schädlichen Artefakten zu „säubern“, bevor das Gerät es zur eigentlichen Spracherkennung – sei es in der Cloud oder lokal auf dem Gerät oder einem lokalen Server – sendet.  
Mit VoCAS konzeptionieren, organisieren und automatisieren Ingenieur:innen Tests von ASR-Systemen und Geräten, in denen diese eigesetzt werden. VoCAS hilft, die Übersicht über alle Faktoren wie Hintergrundgeräusche, Nachhall, verschiedene Sprachen und Akzente sowie unterschiedliche – auch mehrere konkurrierende – Sprecher zu behalten und macht es einfach, diese Faktoren zu beliebig komplexen Tests und Analysen zu kombinieren und zu variieren:
Gleichzeitig angesteuerte Kunstköpfe erlauben Simulationen mit unterschiedlichen, konkurrierenden Sprechern aus unterschiedlichen Richtungen und mit unterschiedlichen Lautstärken. Bei Bedarf kommt der HEAD acoustics Turntable HRT I zum Einsatz, mit dem sich das Endgerät, welches das Interface für die Spracherkennung enthält, drehen lässt, um das Nutzerverhalten – zum Beispiel ein Wegdrehen vom Mikrofon – zu simulieren.

 

Aus VoCAS heraus lässt sich selbstverständlich Software steuern, die Hintergrundgeräusche simuliert. Systeme wie 3PASS flex, 3PASS lab, HAE-BGN und HAE-car samt Nachhallsimulator 3PASS reverb stellen immer die idealen, realistischen akustischen Bedingungen für jede Alltagssituation bereit: Gespräche im fahrenden Fahrzeug, Sprachsteuerung des MP3-Players in der lauten Cafeteria mit klirrenden Gläsern, Navigationseingaben bei einfahrendem Zug auf einem Bahnsteig, und viele mehr.


VoCAS kann somit alle Faktoren variieren, die die Leistung von Endgeräten im Zusammenspiel mit Spracherkennungssystemen signifikant beeinflussen, und ist für „einfache“ ebenso wie für „komplizierte“ Fälle bestens geeignet. Wichtig ist dabei, dass die Geräusche in jedem Test, also die gesamten Testsequenzen, exakt reproduzierbar sind. Das ist unabdingbar für das Benchmarking unterschiedlicher Spracherkennungssysteme. Zugleich bietet VoCAS so perfekt vergleichbare, tiefe Einblicke in die Performance getesteter Systeme und zeigt klar auf, an welchen Stellschrauben man unter welchen Bedingungen zur Optimierung drehen kann.

Besser einfach – am besten richtig gut

Eine benutzerfreundliche Oberfläche ist nicht die Kür – sie ist Pflicht, auch und gerade für hoch spezialisierte Analyse-Software. Nichts ist nerviger, als die Funktionalitäten einer Software nur deshalb nicht voll ausschöpfen zu können, weil man Funktionen nicht findet oder gar nicht erst kennt. Mit VoCAS hingegen gelingt es intuitiv, automatisierte Testsequenzen für jedes Spracherkennungssystem zu erstellen, eigene Sprachbefehle auf den integrierten Rekorder aufzuzeichnen oder vorhandene Audio-Daten zu importieren, Dateien zu schneiden, filtern und auf vorgegebene Sprachpegel zu kalibrieren.

VoCAS nutzt zudem Tags für eine schnelle und einfache Datei-Verwaltung von sehr vielen Sprachbefehlen, und Python-Skripte ermöglichen es, die Testsequenzen für das Spracherkennungssystem individuell anzupassen und zu automatisieren. Auch die Auswertung der Testergebnisse macht VoCAS leicht. VoCAS kann dann mit der Hilfe komplexer Abfragen und unter der Berücksichtigung der unterschiedlichen getesteten Störfaktoren genau die Fragen beantworten, die man zu der Funktionalität seines Spracherkenners hat.

Mit VoCAS sind die Möglichkeiten schier endlos. Und man entdeckt sie ganz einfach und intuitiv.