1KLANG Algorithmus: smarte Haltestellenerkennung für digitale Assistenten

So findet unser digitaler Assistent die Haltestelle, die ich wirklich meinte.

Wir PROJEKTIONISTEN entwickeln digitale Assistenten. Mit unserer Mobilitätsmarke 1KLANG konzentrieren wir uns dabei auf das natürlichsprachliche Anwendungsfeld der Smart Speaker, Chatbots und Assistenten-In-App Lösungen.

In diesem Umfeld ist es eine besonders spannende Aufgabe, die Entität Haltestelle in natürlichsprachlichen Aussagen korrekt zu erkennen. Der Fachbegriff dafür ist named-entity recognition. Aus dem Satz...

"Wie komme ich am schnellsten vom Marktplatz zum Hauptbahnhof?"

...müssen u. a. Start und Ziel erkannt werden. Für die intent classification (Welche Absicht haben Nutzende - in dem Fall die Intention eine Verbindungsauskunft zu erhalten) und die named-entity recognition haben wir ein Machine Learning Model entwickelt und trainiert. Für unseren Beispielsatz erhalten wir zwei Haltestellen:

Starthaltestelle: Marktplatz
Zielhaltestelle: Hauptbahnhof

Beide Entitäten wurden vom Model korrekt identifiziert. So weit, so gut, so einfach. Ende der Story und des Artikels? Nein! Wir müssen die Nutzer:innenabsicht der Verbindungsauskunft noch erfüllen.

Eins, zwei, drei, ganz viele

Um Nutzenden nun eine Verbindungsinformation zur Verfügung stellen zu können, muss ein ÖPNV-Auskunftssystem mit dem gewünschten Start und Ziel befragt werden. Solche Systeme können am besten mit eindeutigen IDs umgehen. Die named-entity recognition gibt uns aber nur die Zeichenkette Marktplatz. Auskunftssysteme haben jedoch einen Schnittstellenaufruf, um eine Haltestelle mit Texteingabe zu suchen.

Wenn wir uns am Beispiel eines regionalen Kunden von uns einmal alle Haltestellen anschauen, die Marktplatz heißen, dann sehen wir ein Problem. Eine ganz lange Liste von Haltestellen, die gleich heißen. Und das ist nur ein kleiner Teil Deutschlands.

Der aktuelle Weg in Apps oder auf Webseiten ist solch eine Antwort als Vorschlagsliste visuell Nutzenden darzustellen. Die Liste kann überflogen und durch einen einfachen Klick die gewünschte Haltestelle ausgewählt werden. Aber natürlichsprachlich? Wie identifizieren wir nun die korrekte Haltestelle? Die Liste vorzulesen und per Sprache auszuwählen erscheint sehr umständlich. Nutzende jetzt immer die Stadt zur Haltestelle dazu sagen zu lassen bzw. bei solchen Haltestellen die Stadt immer zu erfragen für eine eindeutige Zuordnung klingt auch nicht sonderlich smart. Das muss doch besser gehen.

1KLANG Haltestellenerkennung

Die Auskunftssysteme können uns in Ermangelung einer passenden Schnittstelle für den Anwendungsfall nicht helfen. Also entsteht ein eigener 1KLANG Algorithmus!

In einem ersten Schritt soll das Ergebnis der eigenen Haltestellensuche mindestens genauso gut sein, wie die Suche über die vorhandenen Auskunftssysteme, um unseren Algorithmus dann für den spezifischen Anwendungsfall weiter verfeinern zu können. Der entwickelte Algorithmus bewertet und vergleicht die Eingabe mit Haltestellendaten. Ein Bewertungsverfahren entscheidet, welche Haltestellen wie gut zur Eingabe passen. Um einen ersten Vergleichstest nicht zu einfach zu machen, haben wir in die Eingabe sowohl einen typischen Tippfehler, als auch eine typische Abkürzung eingebaut. Statt Marktplatz geben wir Maktplz ein.

Vergleichen wir die Varianten:

Das Ergebnis ist erfreulich. Wir erhalten für den Input Maktplz in beiden Systemen viele Marktplätze. Auffällig ist noch der Unterschied der Ausführungszeit. Wir können ohne das Auskunftssystem Haltestellen nicht nur gleich "gut", sondern sogar deutlich effizienter ermitteln. Für Nutzende heißt das – eine schnellere Antwort und Informationen nach einer Anfrage.

Stand jetzt haben wir allerdings das Hauptproblem noch gar nicht adressiert. Wie identifizieren wir nun, welcher Marktplatz gemeint ist?

Standortabhängige Haltestellenerkennung

ÖPNV-Anfragen sind meist eher lokal begrenzt. Wenn von Nutzenden die Haltestelle nicht näher spezifiziert ist, ist meist die im Umkreis gemeint. Dementsprechend möchten wir den Standort des Nutzenden mit in die Suche einbeziehen. Durch die Verschneidung von OpenStreetMap (OSM) Geolocation-Daten erhalten wir durch eine spezielle Vorverarbeitung eine standortsensitive Suche. Der Suchraum wird anhand einer Koordinate eingeschränkt. Eine spezielle Datenstruktur ermöglicht einen effizienten Zugriff auf Bereiche und Haltestellen, die sich im Umfeld des Nutzenden befinden. Der Suchraum kann somit auch dynamisch erweitert oder verengt werden, wenn die Ergebnisse nicht zufriedenstellend sind – sprich das Bewertungsverfahren zu schlechte Ergebnisse ermittelt. Dieser Suchraum ist Ausgangspunkt für den bereits vorgestellten Algorithmus zur Haltestellenerkennung.

Nehmen wir das Beispiel von eben und stellen alle Standorte der Haltestelle Marktplatz im Gebiet eines Kunden von uns auf einer Karte dar. Wir gehen nun davon aus, dass wir uns am Standort des grünen Haus-Icons befinden. Das ist die Koordinate 50.6254, 8.20765.

Wenn wir uns an dieser Position befinden und von der Haltestelle Marktplatz sprechen, dann wird voraussichtlich der Marktplatz mit der ID de:06532:19698 in Driedorf gemeint sein.

Lassen wir die beiden Varianten des Algorithmus gegeneinander antreten:

Die standortabhängige Variante des Algorithmus liefert uns in annähernd der gleichen Zeit das perfekte Ergebnis. Somit können wir effizient die Haltestellen so erkennen, dass wir die Absicht des Nutzenden bedienen können, um mit den IDs eine Verbindungsauskunft anzufragen und auszugeben.

Fazit

Wir haben in diesem Artikel gezeigt, wie wir das spezifische Problem einer korrekten Erkennung und Zuordnung einer Haltestelle im natürlichsprachlichen Anwendungsfall lösen. Die bisherigen Möglichkeiten, die sich an einer grafischen Oberfläche orientieren, in der Nutzende selbst in einer Vorschlagsliste die richtige Haltestelle raussuchen müssen, funktionieren natürlichsprachlich nicht. Das entwickelte Verfahren und der 1Klang Algorithmus löst dieses Problem und ist für die Akzeptanz und Qualität von sprachlichen Systemen essenziell. Ein weiterer positiver Nebeneffekt ist, dass sich die Ausführungszeit der gesamten Anfrage durch die schnellere Erkennung verkürzt. Das ist vor allem im Kontext von Sprachassistenten von besonderer Bedeutung, da sich dort schnelle Reaktionen sehr positiv und natürlich im Gespräch anfühlen.

Ähnliche Stories
Teaser Bild der Story oder des Projektes
Teaser Bild der Story oder des Projektes
Teaser Bild der Story oder des Projektes
Digitale Assistenten

Wie entwickelt man digitale Assistenten für Senioren?

Wie entwickelt man digitale Assistenten für Senioren?

Wie entwickelt man digitale Assistenten für Senioren?

Unsere Collaboration Managerin und Proxy Product Ownerin Mareike erklärt, weshalb es wichtig ist, ältere Menschen in die Entwicklung von Sprachassistenten mit einzubeziehen. Die ganze Story auf projektionisten.dei:

Entdecken
Entdecken
Teaser Bild der Story oder des Projektes
Teaser Bild der Story oder des Projektes
Teaser Bild der Story oder des Projektes
Digitale Assistenten

MVV-Fahrplanauskunft für Amazon Alexa

MVV-Fahrplanauskunft für Amazon Alexa

MVV-Fahrplanauskunft für Amazon Alexa

Die Fahrplanauskunft des Münchner Verkehrs- und Tarifverbund GmbH (MVV) wurde von uns als Skill für Amazon Alexa entwickelt.

Entdecken
Entdecken

Das gefällt Ihnen?

Kontaktieren Sie uns, damit wir mit Ihnen zusammen Ihre digitale Zukunft denken, gestalten und entwickeln können.

Kontakt

Wir freuen uns darauf, Sie kennenzulernen!

Portrait-Foto von Martin Löhdefink
Ihre Ansprechperson
Martin Löhdefink
PROJEKTIONISTEN® GmbH
Schaufelder Straße 11
30167 Hannover
Vielen Dank für Ihre Nachricht! Wir werden uns so schnell wie möglich bei Ihnen melden.
Ihre Nachricht konnte nicht gesendet werden. Schreiben Sie uns bitte per Mail (info@projektionisten.de).