Offline-Spracherkennung: Sprich mit mir!

Fachbeitrag Krankenhaus-IT Journal 01/2020

Spracherkennung – das ist doch nichts Neues. Alexa, Siri und Google sind doch schon lange auf dem Markt. Wozu brauche ich dann eine weitere Lösung? Hat eine Offline-Erkennung wirklich Vorteile?

Sprache als Zusatzmodalität

Die Offline-Spracherkennung ist in Navigationssystemen von PKW, wo sie Adressen und Namen entgegennimmt, etabliert. Der Dialog ist oft stark formalisiert, Schlüsselworte müssen an einer bestimmten Position im Satzbau auftauchen, um erkannt und korrekt zugeordnet zu werden. Das Vokabular ist eingeschränkt und die Syntax formalisiert, weil das System anders als die oben erwähnten ohne die Leistungsfähigkeit von Rechnern im Internet auskommen muss.

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 ist so nahe an der natürlichen Sprache, dass kein Lernaufwand erforderlich ist. In Verbindung mit bekannten Bedienmodalitäten kann das SUI (Speech User Interface) mit dem GUI (Graphisches User Interface) kombiniert werden und stellt eine sinnvolle Ergänzung zum Display mit Touchscreen, Tastatur und Maus dar.

Vorteile

Spracheingabe kann ihre Vorteile dort ausspielen, wo keine Hand frei oder sauber genug ist, um ein Bedienelement zu betätigen, oder dort, wo die Augen nicht vom gerade betrachteten Objekt abgewandt werden können, wie z. B. bei einer Operation oder Arbeiten unter einem Mikroskop. Schließlich dient die Sprachsteuerung auch der Steigerung des Komforts, für das Internet-basierte Systeme normalerweise genutzt werden.

Wenn mit einem einzigen Satz Befehl und Parameter gleichzeitig eingegeben werden anstatt im GUI durch das Menü zu hangeln, können Befehle und Einstellungen gleichzeitig von der „Hauptebene“ aus aktiviert werden. Damit einher geht eine deutliche Steigerung der Effizienz.

Online oder offline?

Grundsätzlich unterscheidet man zwischen Online- und Offline-Sprachsteuerung. Geräte, die eher online mit anderen vernetzt sind, wie z. B. Unterhaltungselektronik, Hausautomatisierung und Mediensteuerung, können dank der Vernetzung weitere Geräte steuern. Andere Geräte, die ein in sich abgeschlossenes System darstellen, nutzen die Vorteile des Offline-Betriebs: Auch in Gegenden 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 Anwendungen im OP, der Station und im Krankenzimmer wird die Spracheingabe interessant, ermöglicht sie doch weitergehende Bedienvarianten und erhöhte Flexibilität. Durch die lange Lebensdauer medizinischer Geräte wie MRT und CT 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. Viele erkennbare Sprachen ermöglichen den internationalen Einsatz oder ein mehrsprachiges Team.

Offline-Sprachsteuerung

Abbildung 1: Entwicklung eines Sprachdialogs
Abbildung 1: Entwicklung eines Sprachdialogs

Im Folgenden wird eine Lösung vorgestellt, die vom Audio-Spezialisten voice INTER connect entwickelt wurde. Sie funktioniert im Betrieb völlig ohne Anbindung an das Internet, da die Erkennung lokal auf dem Systemprozessor stattfindet. 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-basierter Auswerteverfahren semantisch verarbeitet, damit die gewünschte Funktionsklasse („Intent“), die eingegebenen Parameter („Slot“) und die dazugehörigen Werte („Value“) automatisch erkannt und zur Gerätesteuerung bereitgestellt werden können. Die Leistungsfähigkeit des Systems und die Erkennungs-Fehlerrate steht cloudbasierten Spracherkennern (Amazon Alexa, Google Home) nicht nach. Kommandos werden in einer natürlichen Sprache mit freier Wahl des Satzbaus eingegeben, nichtrelevante Füllworte („bitte“) werden ignoriert. Bei einer Anwendung in der Medizintechnik müssen die Daten sicher sein und dürfen nicht von Dritten abgehört werden können. In einem eingebetteten Offline-System läuft die gesamte Verarbeitung lokal ab. Was passiert bei einem Online-System, wenn die Netzwerkverbindung zum Cloud-Server ausfällt? Steht dann der Betrieb?

Bei lokaler Verarbeitung bleiben eingegebene Daten, wie Name und Geburtsdatum des Patienten lokal und erfüllen die Anforderungen des Datenschutzes. Durch die große Anzahl verfügbarer Landessprachen können Anwendungen mehrsprachig auf der Embedded Plattform implementiert werden. Dadurch können einerseits Begriffe exakt definiert und den Landesgewohnheiten angepasst und andererseits ungewünschte Begriffe ignoriert werden. 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 ändert oder den Dienst abschaltet.

Anwendungs-Szenarien

Die Sprachsteuerung beschleunigt komplexe Bedienaufgaben durch die Zusammenfassung von Kommandos und Parametern in einem Schritt. Die Abfrage von Daten in Expertensystemen wird vereinfacht, digitale Assistenten und Kollaborationstools optimieren Arbeitsabläufe. Bei prozessbegleitender Protokollierung achtet die Maschine automatisch auf die Vollständigkeit des geführten Protokolls. Dies spielt eine Rolle in der Anamnese und der Dokumentation durchgeführter Behandlungen. Der Befund kann direkt in das System eingesprochen werden, dieses trägt die Daten unabhängig von der Reihenfolge direkt an die richtige Stelle des Protokolls ein.

Ablauf einer Implementierung

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, die zulässigen Kommandos und deren Parameter werden im Webtool als Texteingabe zusammengestellt. Siehe dazu Abbildung 1. 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, 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 2 dargestellt.

Abbildung 2: Offline-Sprachsteuerung in der Applikation
Abbildung 2: Offline-Sprachsteuerung in der Applikation

Systemvoraussetzungen

Die Sprachsteuerung unterstützt übliche Betriebssysteme, z. B. 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. Das Sprachmodell belegt minimal ca. 6MByte pro Sprache, vom Hauptspeicher werden ca. 16MByte verwendet. Eine einfache Kommandosteuerung mit 10 Wörtern benötigt ca. 10kByte, komplexere Anwendungen mit 1.000 Wörtern kommen auf 500kByte. 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.

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. Für eigene Experimente stehen zwei Demo-Applikationen zur Verfügung.

Fazit

Die Sprachsteuerung ergänzt HMI-Systeme um eine neue Dimension. Parallel zum GUI gesellt sich das SUI – Speech User Interface. 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.

Beispiele aus der Praxis

Bedienung und Überwachung von Medizintechnik

  • Betten und Untersuchungsliegen für CT/MRT via Sprache steuern (z. B. Herauf- und Herunterfahren, Sitz- und Liegeposition)
  • Informationsabfrage aus einer Datenbank (z. B. während einer Operation)
  • Dokumentation von Tätigkeiten in Kranken- und Altenpflege oder Rehabilitation
  • Berührungsfreie Bedienung von Geräten in schlecht zugänglichen oder sterilen Umgebungen

Industrie

  • Natürliche Kollaboration mit Robotern und in Augmented-Reality-Anwendungen
  • Steuerung von Maschinen und Geräten
  • Industrieautomation, Test- und Messtechnik
  • Berührungsfreie Bedienung von Geräten in schlecht zugänglichen oder explosionsgefährdeten Umgebungen

Smart Home

  • Intelligente Hausautomatisierung: Beleuchtung, Heizung, Klima, Rollläden, Sanitär
  • Interaktion mit Unterhaltungselektronik: Fernseher, Multimedia, AV-Receiver
  • Elektronische Medien: Smartphone, Tablet, PC, E-Book-Reader
  • Haushalts- und Küchengeräte

Digital Signage

  • Info-Stelen in Einkaufszentren oder Servicepunkten
  • Bestell-Automaten im Fast-Food-Restaurant
  • Fahrkarten-Automaten, z.B. DB "SEMMI"

Weitere Informationen:

 

Downloaden Sie diesen Artikel als PDF: DOWNLOAD

Kontakt

Kontakt HY-LINE

Helpdesk 089 / 614 503 40

E-Mail computer@hy-line.de

Kontakt Schweiz

Helpdesk +41 52 647 42 00

E-Mail info@hy-line.ch