Jeder Mensch verwendet Sprache auf seine eigene Art – wie er spricht und welche Wörter er nutzt ist bei jedem Menschen unterschiedlich. In einem früheren Blog-Post wurde erklärt, wie Spracherkennungssysteme diese Variationen durch Training mit Sprachdaten eliminieren sowie zahlreiche Akzente, Altersgruppen und andere denkbare Variationen von Sprachstilen abdecken. Das Ergebnis sind sehr stabile Systeme, die für (fast) alle Sprecher gut funktionieren. Wir nennen das eine „sprecherunabhängige“ Spracherkennung.
In einigen Fällen kann man aber auch anders auf die Individualität des Sprechers eingehen und mit Hilfe von Deep Learning und neuronalen Netzwerken bessere Nutzererfahrungen erzielen. Ein Beispiel hierfür ist unsere Dragon Individual– und Dragon Legal-Software, denn sie wird für gewöhnlich von nur einem einzigen Nutzer verwendet. Dieser Aspekt ermöglicht Nuance, durch die Anpassung an jeden Nutzer über die sprecherunabhängige Spracherkennung hinaus zu gehen. Dragon macht das auf mehreren Ebenen:
Dragon verwendet in seiner neuesten Version durchgängig Deep Learning und neuronale Netzwerke sowohl auf der Ebene des Sprachmodells (Erfassung der Häufigkeit von Wörtern und ihrer typischen Kombinationen) als auch auf der des akustischen Modells (die die Phoneme oder kleinsten gesprochenen Einheiten einer Sprache modellieren).
Diese Modelle sind recht umfangreich und werden bereits während der Entwicklung mit großen Datenmengen trainiert. Neuronale Netze wurden zwar bereits im späten 20. Jahrhundert entwickelt, können aber erst jetzt richtig zum Einsatz kommen, da wir erst heute über die nötige Rechenleistung verfügen. Beim Training unserer Modelle verwenden wir daher auch sogenannte GPUs (Graphical Processing Unit), die ursprünglich für grafische Computeranwendungen, wie Videospiele, entwickelt wurden. Die Berechnung von Bildern und das Training von Deep Neural Networks haben viele Gemeinsamkeiten, da beide Aufgaben Berechnungen vieler Datenpunkte zur selben Zeit erfordern. Für einen schnellen Trainingsprozess werden daher mehrere parallel geschaltete GPUs eingesetzt.
Wie kann ein solches Verfahren nun aber außerhalb großer Datenzentren durchgeführt werden? Die Anpassung von Deep Neural Networks geschieht im Grunde genauso wie deren Training von Grund auf, wenn auch auf weniger Daten. Wir möchten diesen Prozess aber auf den PCs und Macs unserer Kunden umsetzen. Daher standen wir vor der anspruchsvollen Aufgabe, die Prozesse so zu optimieren, dass sie mit der vorhandenen Rechenleistung auskommen.
Die erfolgreiche Umsetzung dieses Prozesses in einem Programm für PC und Mac ist daher ein wichtiger Meilensteinnach nach vielen Jahren der innovativen Forschungs- und Entwicklungsarbeit auf dem Gebiet der Spracherkennung und des maschinellen Lernens.
Sources: