Suchen

Sprich mit mir! Die Vorteile von Offline-Spracherkennung

Autor / Redakteur: Rudolf Sosnowsky * / Margit Kuther

Wozu brauche ich eine Spracherkennung? Ich habe doch zwei Hände und zwei Augen, mit denen ich meinen Computer bedienen und den Bildschirm ablesen kann. Es sei denn…

Firma zum Thema

Offline-Sprachsteuerung: hält Daten vertraulich und steigert die Zuverlässigkeit.
Offline-Sprachsteuerung: hält Daten vertraulich und steigert die Zuverlässigkeit.
(Bild: HeikoAL auf Pixabay / Pixabay )

Die Spracheingabe ist nicht neu. Einen Zulauf erlebte die Technologie mit der Markteinführung von Sprachassistenten wie Alexa (Amazon), der Lösung von Google, Siri (Apple), Cortana (Microsoft) und dem in Deutschland nicht sehr verbreiteten Bixby (Samsung). Bereits etabliert ist die Spracheingabe in Navigationssystemen von Pkw, wo sie Adressen und Namen entgegennimmt, und auch mit der Sprachausgabe Meldungen zur Navigation, Verkehrsstörungen und andere Informationen ausgibt.

Der Dialog ist häufig stark formalisiert; Schlüsselworte müssen an einer bestimmten Position im Satzbau stehen, um erkannt und korrekt zugeordnet zu werden. Da diese Systeme ohne die Leistungsfähigkeit von Rechnern im Internet auskommen müssen und die im Fahrzeug integrierten Systeme oft viele Aufgaben zu erledigen haben, ist das Vokabular eingeschränkt und die Syntax formalisiert.

Sprache als Zusatzmodalität und ihre Vorteile

Der Einsatz von Sprache als Eingabemedium ist sinnvoll, wenn der Anwender damit nicht überfordert wird. Dies bedeutet, dass er entweder über weitere Möglichkeiten der Eingabe verfügt, oder die Eingabesyntax so einfach, also so nahe an der natürlichen Sprache, ist, dass kein Lernaufwand erforderlich ist. In Verbindung mit bekannten Bedienmodalitäten kann das SUI (Speech User Interface) mit dem GUI, dem Grafischen User Interface, kombiniert werden und stellt eine sinnvolle Ergänzung zum Display mit Touchscreen, Tastatur und Maus dar

Die Vorteile einer Spracheingabe liegen in ganz verschiedenen Bereichen. Zum einen dort, wo keine Hand frei oder sauber genug ist, um ein Bedienelement zu betätigen, zum anderen dort, wo die Augen nicht vom gerade betrachteten Objekt abgewandt werden können, etwa bei einer Operation oder beim Blick durch ein Mikroskop oder eine Lupe. Schließlich dient die Sprachsteuerung auch der Steigerung des Komforts, für das Internet-basierte Systeme normalerweise genutzt werden.

Nicht zu unterschätzen ist die Möglichkeit, mit einem einzigen Satz Befehl und Parameter gleichzeitig einzugeben, anstatt sich im GUI durch das Menü zu hangeln, um Funktionen und Werte einzeln einzustellen. Alle in einem herkömmlichen GUI vorkommenden Befehle und Einstellungen können gleichzeitig von der Hauptebene aus aktiviert werden. Damit einher geht eine deutliche Steigerung der Effizienz.

Sprachsteuerung ist Online oder offline möglich

Grundsätzlich unterscheidet man zwischen Online- und Offline-Sprachsteuerung. Geräte, die online mit anderen vernetzt sind, wie Unterhaltungselektronik, Hausautomatisierung und Mediensteuerung, können dank der Vernetzung andere Geräte steuern. Geräte hingegen, die ein in sich abgeschlossenes System darstellen, nutzen die Vorteile des Offline-Betriebs: Auch in Gebieten ohne Netzabdeckung ist die Funktion garantiert, die Daten sind durch den Ansatz der Privacy by Design sicher, und die feste Installation garantiert eine lange Verfügbarkeit.

Auch für Investitionsgüter in der Industrie wird die Spracheingabe interessant, ermöglicht sie doch weitergehende Bedienvarianten und erhöhte Flexibilität. Durch die lange Lebensdauer einer Maschine und des erhöhten Sicherheitsbedarfs in der Fertigung stellt der potenzielle Anwender jedoch über das oben skizzierte hinaus weitere Anforderungen: Die Lösung zur Spracheingabe muss über einen langen Zeitraum verfügbar und gegebenenfalls erweiterbar sein. Das Aktivierungswort, auch „Wake Word“ genannt, muss frei wählbar sein. Es müssen viele internationale Sprachen verfügbar sein, von denen bei der Installation oder im Wartungsfall eine ausgewählt wird.

Beispiel einer Offline-Sprachsteuerung im Automobil

Bild 3: Offline-Sprachsteuerung in der Applikation
Bild 3: Offline-Sprachsteuerung in der Applikation
(Bild: Hy-Line Computer Components)

Im Folgenden wird eine Lösung vorgestellt, die vom Audiospezialisten Voice Inter Connect entwickelt wurde. Sie funktioniert im Betrieb völlig ohne Anbindung an das Internet, da die Erkennung lokal auf dem Systemprozessor stattfindet. Dadurch erschließen sich Aufgabenbereiche, in denen Daten vertraulich gehalten werden müssen oder keine Netzabdeckung zur Verfügung steht.

Der große Vorteil ist die natürlichsprachige Kommunikation. Die Spracheingabe muss keiner festen Syntax folgen und kann völlig frei gesprochen werden. Das Erkennungsergebnis wird mittels KI-basierten Auswerteverfahren semantisch verarbeitet, damit die gewünschte Funktionsklasse (Intent), die eingegebenen Parameter (Slot) und die dazugehörigen Werte (Value) automatisch erkennt und diese zur Gerätesteuerung bereitgestellt werden können.

Anforderungen an ein Sprachsteuerungssystem

Spracheingabe mit Apples Sprachassistenten Siri
Spracheingabe mit Apples Sprachassistenten Siri
(Bild: Hy-Line Computer Components)

Am wichtigsten ist die Zuverlässigkeit der Spracherkennung. Hierbei steht die Leistungsfähigkeit des Systems der Erkennungsfehlerrate cloudbasierten Spracherkennern (Amazon Alexa, Google Home) nicht nach. Die Integration in Produkte muss einfach und zu vielen Produkten kompatibel sein, um Akzeptanz zu erhalten. Die Kommandos sollten in einer natürlichen Sprache mit freier Wahl des Satzbaus eingegeben werden können, wobei die Maschine nichtrelevante Füllworte automatisch ignoriert. Bei einer professionellen Anwendung, etwa in der Industrie und der Medizintechnik, müssen die Daten sicher sein und nicht von Dritten abgehört werden können. Ein eingebettetes System kann das leisten, da die gesamte Verarbeitung lokal abläuft.

Was passiert bei einem Online-System, wenn die Netzwerkverbindung zum Cloud-Server ausfällt? Steht dann die Produktion? Durch die lokale Verarbeitung bleiben die Prozessschritte, Daten und Parameter lokal und sind vor dem Wettbewerb sicher. Dank der großen Anzahl verfügbarer Landessprachen lassen sich Anwendungen mehrsprachig auf der Embedded-Plattform implementieren. Dadurch können einerseits Begriffe exakt definiert und den Landesgewohnheiten angepasst und andererseits ungewünschte Begriffe ignoriert werden.

Im Servicefall ist ein schneller Zugriff auf den Zustand der Spracheingabe erwünscht, um den Grund für eine Fehlfunktion festzustellen. Für den professionellen Einsatz ist die Langzeitverfügbarkeit essentiell, denn die lokale Sprachsteuerung unterliegt nicht dem Geschäftsmodell des Cloud-Anbieters, der sein Kostenmodell ändern oder den Dienst abschalten kann.

Anwendung und Ablauf einer Implementierung

Die Sprachsteuerung beschleunigt komplexe Bedienaufgaben durch die Zusammenfassung von Kommandos und Parametern in einem Schritt. Die Unterstützung kann kontextbezogen sein, was insbesondere bei Augmented Reality wichtig ist. Die Abfrage von Daten in Expertensystemen wird vereinfacht, und digitale Assistenten und Kollaborationstools optimieren Arbeitsabläufe.

Ein Aspekt ist die prozessbegleitende Protokollierung. Bestimmte Routineaufgaben können ohne den Einsatz einer bedienenden Hand erledigt werden, und die Maschine kann automatisch auf die Vollständigkeit des geführten Protokolls achten. Dies spielt eine besondere Rolle in der qualitätssichernden Dokumentation etwa bei der Wartung von Maschinen oder der Inspektion von Flugzeugen. Der Befund lässt sich direkt in das System einsprechen, und dieses trägt die Daten unabhängig von der Reihenfolge direkt an die richtige Stelle des Protokolls ein.

Bild 2: Entwicklung eines Sprachdialogs
Bild 2: Entwicklung eines Sprachdialogs
(Bild: Hy-Line Computer Components)

Mit Hilfe einer webbasierten Entwicklungsumgebung sind nur wenige Schritte erforderlich, um ein System für die eigene Anwendung zu definieren. Der Sprachdialog, also das Aktivierungswort, mit dem die Aufmerksamkeit des Systems auf Eingabe hergestellt wird, die zulässigen Kommandos und deren Parameter, werden im Webtool als Texteingabe zusammengestellt (Abbildung 2). Während der Eingabe findet bereits der erste Verarbeitungsschritt statt: Grapheme, also eingegebene Zeichen, werden in Phoneme, also kleinste akustische Bestandteile der Sprache umgewandelt. Daher ist es wichtig, zuerst die Zielsprache festzulegen. Zum Beispiel werden die eingegebenen Zeichen "SIZE" bei Englisch korrekt als "Seihs" phonemisiert. Wäre Deutsch eingestellt, wäre das Ergebnis "Sie-Zä".

Sind alle Worte definiert, werden mit maschinellen Lernverfahren und KI-basierten Algorithmen die definierten Sprachressourcen in ein statistisches und ein semantisches Modell übersetzt und zum Download angeboten. Das Ergebnis wird auf die Zielplattform heruntergeladen und gestartet. Dann kann der Netzwerkstecker gezogen werden – das Endprodukt läuft autark. Der Ablauf in der fertigen Applikation ist in Abbildung 3 dargestellt.

Anforderungen an die Hard- und Software

Grundsätzlich werden mehrere Betriebssysteme unterstützt, etwa Linux, Windows, Android, iOS. Die Software läuft auf ARM (ab ARMv7) und X86-Prozessoren, die benötigte Rechenleistung beträgt ab 400 MIPS für die Echtzeitverarbeitung pro aktiver Sprache. Soll etwa ein Gerät gleichzeitig in Deutsch und Englisch bedienbar sein, müssen zwei Instanzen des Erkenners laufen. Das Sprachmodell belegt minimal circa 6 MByte pro Sprache, vom Hauptspeicher werden etwa 16 MByte verwendet. Eine einfache Kommandosteuerung mit zehn Wörtern benötigt rund 10 kByte, komplexere Anwendungen mit 1000 Wörtern kommen auf 500 kByte.

Die Software ist kooperativ und kann auf dem Hauptprozessor des Systems mitlaufen. Die Kommunikation mit der eigenen Hardware erfolgt über das MQTT-Protokoll als Publish/Subscribe-Modell mit Broker. Erkannte Befehle werden in eine JSON-Struktur verpackt und der Befehlsinhalt semantisch aufbereitet. Damit kann jedes System auf dieser Basis mit einer Sprachsteuerung versehen werden.

Das Eingangssignal ist wichtig

Bild 4: Mikrofon-Array
Bild 4: Mikrofon-Array
(Bild: Voice Inter Connect)

Bei der täglichen Unterhaltung hilft uns die Geometrie unseres Kopfes mit der Anordnung der Ohren auf beiden Seiten des Kopfes und der Ohrmuscheln, auch aus einer Vielzahl von Stimmen die eine herauszufiltern, die wir hören wollen. Bei einer elektronischen Lösung wird eine Geräuschunterdrückung eingesetzt, um die Sprache verständlicher zu machen. Falls sich der Sprecher nicht nah am Mikrofon befindet, kann ein Mikrofon-Array eine weitere Verbesserung bieten, das mittels Beamforming eine hohe Unterdrückung von störendem Geräusch und Signalen abseits der Hauptachse erzielt und damit störende Nebengeräusche wirkungsvoll ausblendet. Abbildung 4 zeigt die Anordnung der Mikrofone, auf der Leiterplatte mit M1 bis M8 gekennzeichnet.

Hallo Maschine: Starte jetzt!

Für erste Gehversuche zum Kennenlernen des Systems steht ein Entwicklungskit zur Verfügung. Es basiert auf einem ARM iMX6-Prozessor. Über ein optionales Display kann das Resultat der Eingabe sofort visualisiert werden. Das Aktivierungswort ist frei wählbar, und eigene Sprachdialoge werden mit einem Webtool in einer von 30 Sprachen erstellt. Es stehen zwei Demo-Applikationen zur Verfügung, die als Ausgangspunkt für eigene Experimente dienen.

Diesen Beitrag lesen Sie auch in der Fachzeitschrift ELEKTRONIKPRAXIS Ausgabe 17/2020 (Download PDF)

Fazit: Die Sprachsteuerung ergänzt HMI-Systeme um eine neue Dimension. Parallel zur grafischen Nutzerschnittstelle (GUI) gesellt sich das SUI, die sprachliche Nutzerschnittstelle. Der Offline-Betrieb, das heißt die lokal auf dem Prozessor implementierte Sprachsteuerung, hält nicht nur Daten vertraulich, sondern steigert auch die Zuverlässigkeit, da die Verbindung zum Internet und die damit vorausgesetzte Erreichbarkeit des Servers wegfällt. Mit 30 Sprachvarianten, natürlicher Spracheingabe, Unabhängigkeit vom Sprecher und hoher Robustheit auch bei Störgeräuschen ermöglicht sie eine Steigerung der Produktivität, des Komforts und erlaubt eine Bedienung ohne Einsatz von Händen oder Hinsehen.

* Rudolf Sosnowsky ist Leiter Technik bei Hy-Line Computer Components Vertriebs GmbH in Unterhaching

(ID:46752628)