-
Die
vorliegende Erfindung bezieht sich auf eine Spracherkennungsvorrichtung,
insbesondere, aber nicht ausschließlich auf eine Spracherkennungsvorrichtung,
die mehrere miteinander in Beziehung stehende Sprachsignale empfängt und
die empfangenen Sprachsignale nutzt, um einen Eintrag zu identifizieren,
der in einer Datenbank enthalten ist.
-
Bei
einem Operator-basierten Telefonmarketingdienst, der von dem Benutzer
verlangt, eine Adresse anzugeben, wird oft die Postleitzahl angefragt.
Die Postleitzahl wird verwendet, um auf eine Adressdatenbank zuzugreifen
und einen Eintrag aus der Adressdatenbank zu identifizieren, der
der angegebenen Postleitzahl entspricht. Für die eindeutige Identifizierung
der verlangten Adresse aus der Untermenge von Adressen, die alle
die Postleitzahl gemeinsam haben, ist die Eingabe des Hausnamens oder
einer Hausnummer alles, was erforderlich ist. In automatisierten
Systemen zum Abrufen einer Adresse aus einer Adressdatenbank ist
jedoch die Genauigkeit der Erkennung der Postleitzahl allein nicht
ausreichend. Zum Beispiel wurde berichtet, dass die Genauigkeit
für einen
Postleitzahlenerkenner nur 66% beträgt, wenn Spracherkennung mit
Sprache ausgeführt
wird, die aus einem Telefonnetz empfangen wird. Deshalb ist ein
umfangreicherer Dialog erforderlich, der mehr Informationen von
dem Benutzer verlangt. Wenn ein Dienst interaktiv ist, dann kann jede
Unsicherheit darüber,
ob ein Erkennungsergebnis richtig ist, bearbeitet werden, indem
der Benutzer gebeten wird, zu bestätigen, dass die erkannte Äußerung richtig
ist. Wenn jedoch der Dienst nicht am Netz ist, dann muss die Spracherkennungsvorrichtung
alle Informationen, die sie hat, bestmöglich nutzen. Zum Beispiel
sind bei einem Dienst, der erfordert, dass ein Eintrag aus einer
Datenbank identifiziert wird, diese Informationen alle Sprachsignale,
die die Spracherkennungsvorrichtung von dem Benutzer empfangen hat,
und die Informationen in der Datenbank bezüglich gültiger Einträge in der
Datenbank. In einer Datenbank mit Kundenkonten kann der Benutzer
zum Beispiel Sprachsignale bereitstellen, die seinen Namen und seine
Kontonummer darstellen. Ein Spracherkennungsprozess wird sowohl
mit dem Sprachsignal, das den Namen darstellt, als auch mit dem Sprachsignal,
das die Kontonummer darstellt, ausgeführt, dann können der erkannte Name und
die Kontonummer mit den Einträgen
in der Datenbank verglichen werden. Wenn der erkannte Name und die
Kontonummer keinen gültigen
Eintrag liefern, dann wird die Identifikation eines Eintrags als
gescheitert betrachtet.
-
Nach
der vorliegenden Erfindung wird eine Spracherkennungsvorrichtung
bereitgestellt, mit einer Eingangseinrichtung zum Empfangen eines Sprachsignals;
einer Erkennungseinrichtung, die mit der Eingangseinrichtung gekoppelt
ist, und die dazu eingerichtet ist, eine erste Menge mit einem oder mehreren
Elementen bereitzustellen, die in einem erstem Vokabular enthalten
sind, wobei die Elemente aus einem ersten empfangen Sprachsignal
abgeleitet sind; und eine zweite Menge mit einem oder mehreren Elementen
bereitzustellen, die in einem zweiten Vokabular enthalten sind,
wobei die Elemente aus einem zweiten empfangenen Sprachsignal abgeleitet
sind; und einer Vergleichseinrichtung, die dazu eingerichtet ist,
die erste und die zweite Menge miteinander zu schneiden, wodurch
die überlagerte Menge
Elemente umfasst, die sowohl in der ersten als auch in der zweiten
Menge enthalten sind; eine resultierende überlagerte Menge der Elemente
bereitzustellen; und als Ausgangssignal ein Einstufungssignal in
Abhängigkeit
der einzelnen Elemente bereitzustellen, die in der überlagerten
Menge enthalten sind.
-
Nach
einem anderen Aspekt der Erfindung wird eine Spracherkennungsvorrichtung
geschaffen, mit einer Eingangseinrichtung zum Empfangen eines Sprachsignals;
einer Erkennungseinrichtung, die mit der Eingangseinrichtung gekoppelt
ist, und die dazu eingerichtet ist, eine erste Menge mit einem oder mehreren
Elementen bereitzustellen, die in einem ersten Vokabular enthalten
sind, wobei die Elemente aus einem ersten empfangen Sprachsignal
abgeleitet sind; und eine zweite Menge mit einem oder mehreren Elementen
bereitzustellen, die in einem zweiten Vokabular enthalten sind,
wobei die Elemente aus einem zweiten empfangenen Sprachsignal abgeleitet
sind; und einer Vergleichseinrichtung, die dazu eingerichtet ist,
die erste und die zweite Menge zu vereinigen, wodurch die überlagerte
Menge Elemente, die in der ersten Menge enthalten sind, oder Elemente,
die in der zweiten Menge enthalten sind, umfasst; und eine resultierende überlagerte
Menge von Elementen bereitzustellen.
-
Die
Erkennungseinrichtung kann weiter dazu eingerichtet sein, eine Ausgangsmenge
von Elementen zu erzeugen, die in der überlagerten Menge von Einträgen enthalten
ist, wobei die Ausgangsmenge von einem dritten empfangenen Sprachsignal
abgeleitet wird.
-
In
manchen Ausführungen
der Erfindung bildet das erste empfangene Signal das zweite empfangene
Signal.
-
Alternativ
ist das erste empfangene Signal von dem zweiten empfangenen Signal
verschieden, und die erste Menge kann aus dem ersten empfangenen
Signal abgeleitet werden, indem eine Zwischenmenge aus Elementen
erzeugt wird, die in ein Vokabular einer Zwischenmenge fallen, die
Elemente in einem ersten Feld der Datenbank umfasst, wobei die Zwischenmenge
von Elementen dem ersten empfangenen Sprachsignal entspricht; und
wobei die erste Menge von Elementen Elemente in einem zweiten Feld
eines Eintrags der Daten bank 100 umfasst, die aus Elementen
aus der Zwischenmenge in dem ersten Feld des Eintrags bestehen.
-
Der
zweite Satz von Elementen kann ebenso aus dem zweiten empfangenen
Signal abgeleitet werden. Der dritte Satz von Elementen kann ebenso in
Ausführungen
der Erfindung durch Nutzen eines dritten empfangenen Signals abgeleitet
werden.
-
Die
Größe der ersten
und zweiten Mengen können
vor dem Vergleich auf eine vorher festgelegte Anzahl von Elementen
begrenzt werden.
-
Entsprechende
Verfahren werden ebenso bereitgestellt.
-
Ausführungen
der Erfindung werden nun als Beispiel mit Bezug auf die Zeichnungen
im Anhang beschrieben, in denen
-
1 eine
Vorrichtung nach einer Ausführung
der Erfindung zeigt;
-
1a eine
Datenbank für
die Verwendung in der Erfindung zeigt;
-
2 die
geschätzten
Wahrscheinlichkeiten von zufälligen
Kreuz-Übereinstimmungen
zwischen erkannten Kandidatenlisten von einem Postleitzahlen-Buchstabenerkenner
und Listen mit Kandidaten für
die Erkennung für
einen Erkenner des Namens des Verwaltungsbezirks zeigt;
-
3 den
Prozentsatz von kombinierten Erkennungsergebnissen zeigt, die eine
einzelne Kreuz-Übereinstimmung
für eine
Erkennungsvorrichtung aufweisen, die die Ergebnisse von einem Erkenner
für den
Namen des Kreises und einem Erkenner für die Postleitzahl zusammen
verarbeitet;
-
4 die
geschätzte
Genauigkeit eines überlagerten
Erkennungsergebnisses als Funktion der Längen der Listen für den Erkenner
in 3 zeigt, wenn eine Kreuz-Übereinstimmung zwischen den
abgelegten Erkennungslisten gefunden wird;
-
4a die
geschätzte
Genauigkeit des Erkenners in 3 zeigt;
-
5 eine
funktionale Darstellung der Prozessschritte in der Vorrichtung in 1 zeigt;
-
6 ein
Beispiel einer Beziehung zwischen Namen von Kreisen und Buchstaben
des äußeren Codes
zeigt; und
-
7 schematisch
ein Erkennungsvokabular für
einen Postleitzahlenerkenner für
das vereinigte Königreich
zeigt.
-
In
der Ausführung
der hier beschriebenen Erfindung ist das Ziel, jegliche Postleitzahlen
des vereinigten Königreichs
aus mehreren empfangenen Äußerungen
zu identifizieren, wobei diese Äußerungen über ein
Telefonnetz empfangen werden können.
Die Ausgabe aus einem Spracherkenner als Reaktion auf Sprachsignale,
die von einem Benutzer empfangen werden, (z.B. Sprachsignale, die
Verwaltungsbezirk, Postleitzahl und Straße darstellen) werden mit Elementen
von Informationen in einer Adressdatenbank abgeglichen, um die Genauigkeit
des Identifikationsprozesses zu maximieren. In Varianten können Sprachsignale,
die sich auf einzelne Elemente wie Verwaltungsbezirk, Postleitzahl
usw. beziehen, als Teil der gleichen kontinuierlichen Äußerung des
Benutzers bereitgestellt werden.
-
Während die
Ausführung
der hier beschriebenen Erfindung sich auf die Identifizierung von
Einträgen
in einer Datenbank durch Sprachsignale, die von einem Benutzer geliefert
werden, bezieht, ist es klar, dass ähnliche Prinzipien für jeden
anderen Typen von Identifikation zutreffen, der auf einem Prozess
der Musterübereinstimmung
basiert, zum Beispiel optische Schriftzeichenerkennung, Gesichtserkennung
usw.
-
Nun
wird sich auf 1 bezogen, die eine Erkennungsvorrichtung
nach der vorliegenden Erfindung zeigt, und zusätzlich auf 1a,
die schematisch eine Adressdatenbank 100 zeigt. Eine Adressdatenbank 100 enthält mehrere
Einträge 400,
wobei jeder Eintrag eine Anzahl von Feldern 401, 402, 403, 404 und 405 umfasst.
Jeder Eintag 400 stellt eine Adresse dar und jedes Feld 401, 402, 403. 404 und 405 enthält eine
Maschinendarstellung eines Teils der Adresse. In dem gezeigten Beispiel
stellt der Datenbankeintrag 400 die Adresse „117 Faulkeners Way,
Felixstowe, Suffolk, IP10 OFF" dar.
Das Feld 401 enthält
eine Maschinendarstellung eines Verwaltungsbezirks, in diesem Fall
die Buchstabenfolge „Suffolk". Das Feld 402 enthält eine
Maschinendarstellung eines Namens einer Stadt, das Feld 403 enthält eine
Maschinendarstellung eines Straßennamens,
usw.
-
Eine
Steuereinheit 107 in Form eines von einem gespeicherten
Programm gesteuerten Prozessors wird verwendet, um einen Vokabularerzeuger 101,
einen Erkenner 102, einen Abbilder 104, einen Puffer 105,
einen Überlagerer 106 und
eine Ansageeinrichtung 111 zu steuern. Die Arbeitsweise
der Steuereinheit 107 wird von den Inhalten eines Programmspeichers 110 festgelegt.
Die Steuereinrichtung steuert die Ansageeinrichtung 111,
um Sprache zu erzeugen, um von dem Benutzer gesprochene Antworten
zu bekommen. Audioein- und – ausgänge 103 und 112 sind
angeschlossen, um Kommunikation mit dem Benutzer in beide Richtungen
zu ermöglichen,
vielleicht über
eine Telefonleitung.
-
Der
Vokabularerzeuger 101 wird von der Steuereinheit angewiesen,
aus der Datenbank bestimmte Elemente zu lesen. Als Ergebnis eines
solchen Lesevorgangs empfängt
der Vokabularerzeuger Maschinendarstellungen von Elementen der Datenbank.
Zum Beispiel kann der Vokabularerzeuger Maschinendarstellungen von
Elementen des Verwaltungsbezirk-Feldes der Datenbank empfangen.
Der Vokabularerzeuger erzeugt ein Vokabular aus den empfangenen
Maschinendarstellungen. Der Vokabularerzeuger ist dazu eingerichtet,
ein Vokabular zu erzeugen, das Darstellungen verschiedener Aussprachen
der empfangenen Maschinendarstellungen enthält. Zum Beispiel würde ein
Postleitzahlenvokabular die Optionen enthalten, „Doppel-F" zu „FF" oder „zehn" zu „1 0" zu sagen. Fragen rund um die Aussprache,
Homophone und Homonyme werden in unserer internationalen Patentanmeldung
Nr. W097/28634 diskutiert. Das erzeugte Vokabular wird von einem
Erkenner 102 empfangen, der dadurch dazu eingerichtet wird,
Erkennung entsprechend dem erzeugten Vokabular auszuführen. Die
Ansageeinrichtung wird so gesteuert, dass sie die den Benutzer nach
einem bestimmten Informationselement fragt. Der Erkenner 102 empfängt ein
Sprachsignal über
einen Eingang 103 und vergleicht das empfangene Sprachsignal
mit Elementen in dem erzeugten Vokabular. Der Erkenner liefert als
Ausgabe eine Liste mit Kandidaten für die Erkennung, die den Elementen
im Vokabular entsprechen, die den Elementen im Vokabular entsprechen,
die dem empfangenen Sprachsignal am stärksten ähneln, wobei das Element, das
dem empfangenen Sprachsignal am meisten ähnelt, das erste in der Liste
ist und so weiter. Wenn der Erkenner zum Beispiel dazu eingerichtet wurde,
die Namen von Verwaltungsbezirken zu erkennen, dann erzeugt die
Ansageeinrichtung eine Eingabeaufforderung wie „Bitte sagen Sie den Namen
des Verwaltungsbezirks",
und wenn der Benutzer „Suffolk" sagt, dann kann
die Liste mit Kandidaten für
die Erkennung aus einer Liste mit den Worten „Sussex, Essex, Suffolk" bestehen.
-
Es
gibt eine Beziehung zwischen dem ersten oder den ersten beiden Buchstaben
einer Postleitzahl und dem Verwaltungsbezirk, in den die Postleitzahl
fällt.
Eine Postleitzahl des vereinigten Königreichs kann generell in
zwei Teile unterteilt werden, wobei der erste Teil aus einer Abfolge
von Buchstaben besteht, der eine oder zwei Ziffern folgen, und der
zweite Teil besteht aus einer Zahl, der eine Abfolge von Buchstaben
folgt. Der erste Teil ist als äußerer Code
bekannt und hat im allgemeinen die Form „ααnn", aber manche äußeren Codes haben einen einzelnen
Buchstaben, z.B. ist „L" der äußere Code-Buchstabe
für Liverpool,
und manche äußeren Codes
haben einen anderen Buchstaben, der auf die erste Abfolge von Ziffern
folgt, z.B. EC1N. 7 zeigt eine schematische Darstellung
eines Erkennungsvokabulars, das für einen Postleitzahlenerkenner
verwendet werden kann.
-
In
einem Dialog, bei dem der Benutzer gebeten wurde, eine Postleitzahl
und einen erweiterten Bezirk anzugeben, können die Sprachsignale mit
einem Postleitzahlenerkenner beziehungsweise einem Erkenner für den Namen
des Verwaltungsbezirks erkannt werden. Mit Bezug auf die Beziehung
zwischen den beiden ist es möglich,
die Erkennungsergebnisse für
die Postleitzahl mit den Erkennungsergebnisses für den Verwaltungsbezirke zu überlagern.
-
Die
Liste mit Kandidaten für
die Erkennung wird von einer Abbildungseinrichtung 104 empfangen,
die von einer Steuereinheit 107 angewiesen wird, die empfangene
Liste mit Kandidaten auf eine abgebildete Kandidatenliste abzubilden.
Die Abbildungseinrichtung 104 verwendet Informationen in der
Datenbank 100, um als Ausgabe eine abgebildete Liste mit
Kandidaten für
die Erkennung zu liefern. Wenn der Abbilder zum Beispiel angewiesen
ist, die empfangene Kandidatenliste (bestehend aus Namen von Verwaltungsbezirken)
mit Buchstaben des äußeren Codes
in Verbindung zu bringen, würde
die Kandidatenliste „Sussex,
Essex, Suffolk" mit „BN, RH, TN,
GU, PO, CB, CO, IP, NR und CM" in
Verbindung gebracht. Die Abbildungseinrichtung erhält die Ordnung
der abgebildeten Kandidatenliste (d.h. der wahrscheinlichste zuerst)
entsprechend der Ordnung der empfangenen Kandidatenliste aufrecht.
In Varianten kann die Kandidatenliste Bewertungszahlen aufweisen,
die jedem Kandidaten zugeordnet sind, wie in unserer internationalen
Patentanmeldung W096/13030 beschrieben ist. Abgebildete Kandidatenliste
werden in Puffern 105 gespeichert, und zwei abgebildete
Kandidatenlisten können
mit der Überlagerungseinrichtung 106 überlagert
werden. Zum Beispiel kann eine zweite Kandidatenliste als Ergebnis aus
der Erkennung eines Sprachsignals, das eine Postleitzahl darstellt,
erzeugt werden. Wenn der Benutzer „IP10 OFF" sagt, dann kann die Kandidatenliste „ID10 OSS,
IP9 OFF, IP10 OFF, AP10 OSS" sein, und
die abgebildete Kandidatenliste wäre „ID, IP, AP".
-
Eine
Liste überlagerter
Ergebnisse aus der Überlagerungseinrichtung 100 wird
von dem Vokabularerzeuger 101 empfangen und verwendet,
um ein neues Vokabular für
die Verwendung durch den Erkenner 102 zu erzeugen. Wenn
in dem beschriebenen Beispiel die zwei abgebildeten Kandidatenlisten mittels
Schneiden überlagert
werden, dann wäre
das überlagerte
Ergebnis die Liste „IP". Der Vokabularerzeuger
kann von der Steuereinheit 107 angewiesen werden, auf die
Datenbank zuzugreifen, und ein Vokabular zu erzeugen, das aus allen
Straßennamen
in der Datenbank besteht, die eine Postleitzahl haben, die mit den
Buchstaben „IP" beginnt.
-
Nach
einer aktuellen Adressdatenbank des vereinigten Königreichs
weist ein äußerer Code,
der typischerweise einen Distrikt definiert, durchschnittlich 270
Straßennamen
in dem Distrikt auf, wobei das Maximum bei 1148 liegt. Die Strategie,
die von der Erkennungsvorrichtung verwendet wird, um einen benötigten Datenbankeintrag
zu identifizieren, wird von der Steuereinheit 107 gesteuert.
Ein identifizierter Eintrag wird von dem Überlagerer 106 über einen Ausgang 108 geliefert.
-
Die
Erfindung ist primär,
aber nicht ausschließlich,
auf Anwendungen ausgerichtet, bei denen die Bestätigung von Erkennungsergebnissen durch
den Benutzer nicht möglich
ist. Nur ein identifizierter Datenbankeintrag wird zusammen mit
einem Grad an Sicherheit, dass er richtig ist, vorgeschlagen. Um
eine hohe Genauigkeit zu erreichen, werden manche Ergebnisse abgelehnt.
Beim Planen der Strategie, die von der bevorzugten Ausführung verwendet
wird, werden sowohl die Genauigkeit des Ergebnisses als auch der
Anteil der akzeptierten (das heißt nicht abgelehnten) Anrufe
in Betracht gezogen.
-
Ein
automatisiertes System, das Spracherkennung verwendet, kann die
Sprachsignale jedes Benutzers und den identifizierten Eintrag in
einem optionalen Speicher 109 zusätzlich zum Identifizieren von
Datenbankeinträgen
mittels der Sprachsignale speichern. Dies ermöglicht einem Operator, anzuhören, was
der Benutzer gesagt hat und dies mit dem Eintrag zu vergleichen,
der von dem automatisierten System identifiziert wurde. Wenn das
automatisierte System ein Einstufungssignal, das anzeigt, ob der identifizierte
Eintrag hohe, mittlere oder geringe Genauigkeit hat, bereitstellen
und zusammen mit den Sprachsignalen speichern kann, dann kann dieses Einstufungssignal
verwendet werden, um einen solchen manuellen Überprüfungsprozess anzuordnen.
-
Überlagern
von Erkennungsergebnissen miteinander und Vergleichen überlagerter
Ergebnisse mit Einträgen
in der Datenbank erleichtert die Erzeugung eines solchen Einstufungssignals.
Es ist möglich,
eine transkribierte Adresse mit einer hohen, mittleren oder geringen
Genauigkeit einzustufen, und Leistungsziffern zu liefern, die sich
auf diese Einstufungen beziehen. Ein Beispiel einer solchen Einstufungs- und Leistungsziffern
könnte
sein, dass 42,9% der Ergebnisse als hohe Genauigkeit eingestuft
werden, und diese Ergebnisse eine Genauigkeit von 96,7% haben, 21%
der Anrufe werden als mittlere Genauigkeit eingestuft, und diese
Ergebnisse haben eine Genauigkeit von 73,3%, und 35,8% der Anrufe werden
als geringe Genauigkeit eingestuft, und diese Ergebnisse haben eine
Genauigkeit von 61,4%.
-
Um
die Erkennungsergebnisse einander zu überlagern muss jede Liste mit
Kandidaten für
die Erkennung wie unten beschrieben mit einer gemeinsamen Darstellung
in Verbindung gebracht werden. Zum Beispiel können Namen von Verwaltungsbezirken
und Postleitzahl-Buchstaben
auf die äußeren Codes
abgebildet werden. Die Beziehung zwischen Name des Verwaltungsbezirks
und Buchstaben des äußeren Codes
ist komplex, wobei manche Buchstaben des äußeren Codes Gebieten entsprechen,
die die Grenzen eines Verwaltungsbezirks überschreiten, während manche
Verwaltungsbezirke in mehrere Gebiete aufgeteilt werden können, die
jeweils verschiedene Buchstaben des äußeren Codes aufweisen. Ein
Diagramm, das einen Teil der Beziehung zwischen Namen von Verwaltungsbezirken
und Buchstaben des äußeren Code
in einer bestimmten Adressdatenbank des vereinigten Königreich
zeigt, ist in 6 gezeigt. In dem gezeigten
Beispiel wurden die Listen mit Namen von Verwaltungsbezirken mit
Daten erzeugt, die sich darauf beziehen, was der Benutzer sagt,
wenn er nach einem Verwaltungsbezirk gefragt wird. Zum Beispiel
antworten manche Benutzer, wenn sie gebeten werden, die Namen des
Bezirks zu sagen, „Birmingham".
-
Eine
solche Beziehung kann komfortabel in einer Datenbank gespeichert
werden, wobei die Datenbank verwendet wird, um eine Abbildung von
einer der Mengen von Erkennungsergebnisse (z. B. der erkannten Verwaltungsbezirke)
auf die andere (z. B. die Buchstaben des äußeren Code) bereitzustellen.
Die gemeinsame Darstellung kann die gleiche Darstellung wie jede
der Listen mit Kandidaten für
die Erkennung sein, wenn es eine direkte Beziehung zwischen den
Darstellungen gibt. Wird ein Benutzer zum Beispiel gebeten, einen
Städtenamen
zu sagen, und antwortet „Ipswich", dann kann die erste
Liste mit Kandidaten für
die Erkennung von dem Erkenner, wenn er dazu eingerichtet ist, Städtenamen
zu erkennen, „Ipswich,
Norwich" sein. Wenn
der Benutzer dann nach einem Straßennamen gefragt wird, und der
Benutzer „Faulkeners
Way" sagt, dann
kann die Liste mit Kandidaten für
die Erkennung „Faulkeners Way,
Falcon Way, Mariners Way" sein.
Straßennamen
können
als eine gemeinsame Darstellung verwendet werden, da die erste Liste
mit Kandidaten für die
Erkennung mit einer Liste in Verbindung gebracht werden kann, die
aus allen Straßennamen
in Ipswich und Norwich besteht.
-
Wenn
beide Elemente eine Beziehung mit einem gemeinsamen Informationselementen
haben, dann können
beide der Mengen der Erkennungsergebnisse auf die gemeinsame Darstellung
abgebildet werden, um die Überlagerung
der Erkennungsergebnisse zu erleichtern. Wenn zum Beispiel die Sprache, die
von dem Benutzer bereitgestellt wurde, einen Namen eines Verwaltungsbezirks
und eine Postleitzahl darstellt, dann können die Buchstaben des äußeren Code
als eine gemeinsame Darstellung verwendet werden. In diesem Fall
werden die Liste mit Kandidaten für die Erkennung des Namens
des Verwal tungsbezirks und die Liste mit den Kandidaten für die Erkennung
der Postleitzahl vor der Überlagerung
beide auf einen Buchstaben des äußeren Code
abgebildet.
-
Wenn
die Erkennungsergebnisse einmal auf eine gemeinsame Darstellung
abgebildet wurden, können
die abgebildeten Listen mit Ergebnissen von den zwei Erkennern auf
eine von zwei Arten überlagert
werden. Wenn es wichtig ist, dass das richtige Ergebnis in der Menge
von überlagerten
Ergebnissen vorhanden ist, dann sollte eine Vereinigung verwendet
werden, da die Wahrscheinlichkeit, dass das richtige Ergebnis in
keiner der beiden Mengen von gemeinsamen Darstellungen ist, wahrscheinlich
extrem gering ist. Wenn zum Beispiel die Wahrscheinlichkeit, dass
die Liste mit Ergebnissen der Erkennung des Verwaltungsbezirks nicht
das richtige Ergebnis enthält,
7,4% ist, und die Wahrscheinlichkeit, dass die Liste mit Ergebnissen
der Postleitzahlenerkennung nicht das richtige Ergebnis enthält, 6,1%
ist, dann ist unter der Annahme, dass die zwei Ereignisse statistisch
voneinander unabhängig
sind, die Wahrscheinlichkeit, dass keine von beiden das richtige
Ergebnis enthält,
7,4% × 6,1%
= 0,45%. Wenn ein einzelnes Ergebnis mit hoher Genauigkeit erforderlich
ist, dann sollte ein Schnitt der Listen verwendet werden. Die Liste
von überlagerten
Ergebnissen der Erkennung ist kürzer,
als wenn die Überlagerung über eine
Vereinigung ausgeführt
wird, da die überlagerten
Ergebnisse eine Liste liefern, für
die die Erkennung von zwei verschiedenen Äußerungen in einem Ergebnis übereinstimmt.
Die Genauigkeit ist deswegen höher,
aber es besteht eine Möglichkeit, dass
es keine Ergebnisse in der überlagerten
Liste gibt.
-
Auf
die Überlagerung
der Ergebnisse der Erkennung unter Verwendung von einem Schnitt
wird sich in dieser Beschreibung als Kreuzprüfung bezogen. Das Ergebnis
der Kreuzsicherung ist eine Liste von kreuzweisen Übereinstimmungen,
auf die sich in dieser Beschreibung auch als übereinstimmende Ergebnisse
bezogen werden.
-
Wenn
mit den Ergebnissen von zwei Erkennungsprozessen eine Kreuzsicherung
ausgeführt wird,
ist die Länge
der Kandidatenlisten, die überlagert
werden, maßgeblich,
weil die Verwendung von nur den besten Kandidaten die Chance auf
eine kreuzweise Übereinstimmung
begrenzt, wogegen die Verwendung von längere Listen die Chance von mehr
als einer kreuzweise Übereinstimmung,
die miteinander in Konflikt stehen, erhöht.
-
Überlagern
von Ergebnissen aus den Erkennungsergebnissen, die durch die Erkennung
von verschiedenen Äußerungen
erhalten wurden, liefert wie folgt ein Ergebnis mit höherer Genauigkeit.
Wenn die Genauigkeit eines Erkenners von Buchstaben des äußeren Codes
78,9% beträgt,
und die Genauigkeit eines Erkenners für die Namen von Verwaltungsbezirken
79,1%, dann ergibt die Verwendung von entweder dem einem oder dem
anderen eine ziemlich geringe Erkennungsgenauigkeit. Wenn die Erkennungsergebnisse
auf eine gemeinsame Darstellung abgebildet werden und die Ergebnisse
mit einem Schnitt den abgebildeten Ergebnisse überlagert werden, ist es möglich, ein
Ergebnis mit höherer
Genauigkeit zu erhalten, wenn die Erkenner in einem einzelnen Ergebnis übereinstimmen.
Wenn es jedoch keine Ergebnisse in der überlagerten Menge gibt, ist
es nicht möglich,
darauf zu schließen,
welche, wenn überhaupt
irgendeine, Menge mit Erkennungsergebnissen das richtige Ergebnis
enthält.
Wenn es mehr als ein übereinstimmendes
Ergebnis gibt, ist es ebenso nicht möglich, darauf zu schließen, welches
richtig ist, obwohl relative Rangzuordnungen oder Bewertungszahlen
(wenn sie verfügbar
sind) verwendet werden können,
um die übereinstimmenden
Ergebnisse in eine Rangordnung zu bringen.
-
Wenn
die Erkennungsergebnisse, die durch die Erkennung von verschiedenen Äußerungen
erhalten werden, überlagert
werden, hängt
die erreichte Leistung von der Anzahl von Kandidaten ab, die aus
jeder Liste einbezogen werden. Es kann vorteilhaft erscheinen, die
maximale Anzahl von Erkennungsergebnissen, die von jedem Erkenner
geliefert werden, einzubeziehen, und so die höchste Wahrscheinlichkeit zu
bekommen, dass das richtige Erkennungsergebnis in jedem Satz enthalten
ist. Da jedoch die Anzahl von betrachteten Kandidaten ansteigt,
steigt auch die Wahrscheinlichkeit einer zufälligen Übereinstimmung. Zufällige Übereinstimmungen
verringern die Wahrscheinlichkeit, dass eine Übereinstimmungen richtig ist.
Mit längeren
Kandidatenlisten gibt es auch eine erhöhte Wahrscheinlichkeit von
mehr als einer Übereinstimmung.
Es gibt eine optimale Anzahl von Erkennungsergebnissen, die aus
jeder Liste mit Erkennungsergebnissen überlagert werden sollte, um
die Wahrscheinlichkeit zu maximieren, nur ein übereinstimmendes richtiges
Ergebnis zu erhalten.
-
Um
die optimale Listenlänge
für die
Verwendung in der bevorzugten Ausführung der Erfindung zu bestimmen,
wird die Wahrscheinlichkeit von zufälligen kreuzweisen Übereinstimmungen
bestimmt. Wenn verschiedene Anzahlen von Elementen zufällig aus
dem Vokabular von jedem Erkenner ausgewählt und diese zufällig ausgewählten Elemente
auf ein gemeinsames Vokabular abgebildet werden, dann kann die Anzahl
von zufälligen
kreuzweisen Übereinstimmungen
bestimmt werden. Wenn viele zufällige
Auswahlen ausgeführt
werden (in einer so genannten Monte-Carlo-Simulation), dann ist
es möglich,
die Wahrscheinlichkeit einer zufälligen
kreuzweisen Übereinstimmung
zu schätzen. 2 zeigt
die geschätzten
Wahrscheinlichkeiten von zufälligen
kreuzweisen Übereinstimmungen
zwischen Listen mit Kandidaten für
die Erkennung von einem Erkenner für Schriftzeichen von Postleitzahlen
und Listen mit Kandidaten für
die Erken nung von einem Erkenner für die Namen von Verwaltungsbezirken.
Bei einer Länge
der Kandidatenliste von 10 wird die Wahrscheinlichkeit einer zufälligen kreuzweise Übereinstimmung
auf 80% geschätzt.
-
Um
die theoretische Genauigkeit für
eine Erkennungsvorrichtung zu berechnen, die überlagerte Ergebnisse nutzt,
ist es erforderlich, anzunehmen, dass die Erkennungsergebnisse von
der Erkennung von verschiedenen Wörtern (in diesem Fall Namen des
Verwaltungsbezirks und Postleitzahl) voneinander unabhängig sind.
In der Praxis kann es vorkommen, dass die Sprachsignale bestimmter
Benutzer sowohl bei der Postleitzahl, als auch dem Verwaltungsbezirk
schlecht erkannt werden (wegen eines Akzents oder einer schwierig
zu verstehenden Stimme), und deshalb liefert die Berechnung der
Erkennungsgenauigkeit, als ob die Erkennungsergebnisse unabhängig wären, nur
eine Schätzung
der erreichten Genauigkeit.
-
3 zeigt
den geschätzten
Prozentsatz von Anrufen, die zu einer einzelnen kreuzweisen Übereinstimmung
führen,
für eine
Erkennungsvorrichtung, die abgebildete Ergebnisse von einem Erkenner
des Namens des Verwaltungsbezirks und von einem Erkenner von Postleitzahlen überlagert.
-
4 zeigt
die theoretische Genauigkeit des überlagerten Erkennungsergebnisses,
wenn eine kreuzweise Übereinstimmung
zwischen den abgebildeten Kandidatenlisten gefunden wird, als eine
Funktion der Listenlängen.
Für maximale
Genauigkeit der überlagerten
Erkennungsergebnisse ist es erforderlich, die Längen der Listen mit Kandidaten
für die
Erkennung zu minimieren, was folglich die Chance einer zufälligen Übereinstimmung
verringert. 4 zeigt, dass die Genauigkeit
des überlagerten
Ergebnisses signifikant mit der Erhöhung der Länge der Kandidatenlisten fällt. Folglich
sollten lange Kandidatenlisten vermieden werden, wenn Ergebnisse
unter Verwendung eines Schnittes überlagert werden, da die Genauigkeit
der überlagerten
Ergebnisse dramatisch abfällt.
-
4a zeigt
die geschätzte
Genauigkeit des überlagerten
Ergebnisses für
den Erkenner in 3 und 4. Ein theoretisches
Maximum wird gefunden, wenn die abgebildete Liste mit Buchstaben
des äußeren Codes,
die aus der Liste mit Kandidaten für die Erkennung der Postleitzahl
erhalten wird, auf 3 begrenzt ist, und die Kandidatenliste von dem
Erkenner des Namens des Verwaltungsbezirks auf 2 begrenzt ist. Die
Form dieser Oberfläche
kann folgendermaßen
verstanden werden. Bei kurzen Listen ist die Genauigkeit durch die
Genauigkeit der einzelnen Erkenner begrenzt, d. h. die Wahrscheinlichkeit,
dass das richtige Ergebnis in der Kandidatenliste auftritt, wird
von jedem Erkenner geliefert. Für
kürzere
Listen gibt es eine geringe Chance für eine zufällige kreuzweise Übereinstimmung
zwischen Listen mit Kandidaten für
die Erkennung. Wenn längere
Kandidatenlisten verwendet werden, steigt die Wahrscheinlichkeit,
dass die Liste mit Kandidaten für
die Erkennung die richtigen Kandidaten enthält, aber ebenso steigt die
Wahrscheinlichkeit einer zufälligen
kreuzweisen Übereinstimmung.
-
In
der Ausführung
nach der hier beschriebenen Erfindung werden die Listen mit Kandidaten
für die
Erkennung von einem Erkenner für
den Namen des Verwaltungsbezirks und einem Postleitzahlenerkenner überlagert,
um eine Liste mit Buchstaben des äußeren Codes bereitzustellen.
Wenn die Liste mit Buchstaben des äußeren Codes durch Überlagerung der
abgebildeten Ergebnisse erhalten wurde, ist es möglich, ein zweites Postleitzahlenvokabular
basierend auf den erhaltenen Buchstaben des äußeren Codes zu erzeugen. Die
ursprüngliche Äußerung der Postleitzahl
wird dann mit einem begrenzten Vo kabular erkannt, das auf alle Postleitzahlen
mit dem Anfangsbuchstaben oder Anfangsbuchstabenpaar der erhaltenen
Buchstaben des äußeren Codes
begrenzt ist. Experimente haben gezeigt, dass das Hinzunehmen eines
solchen Vorerkennungsprozesses die Genauigkeit der erkannten Postleitzahl
verbessert. Der Grund für
diese Steigerung der Genauigkeit liegt darin, dass das Vokabular,
das von dem Erkenner für die
Vorerkennung verwendet wird, im allgemeinen kleiner als das Vokabular
ist, das (wie in 7 gezeigt) für die erste Erkennung der Postleitzahl
verwendet wird.
-
Die
nächste
Stufe in der Adresserkennung ist, den Straßennamen zu identifizieren.
Das Vokabular, das für
den Erkenner des Straßennamens
verwendet wird, wird unter Verwendung der vorangehenden Ergebnisse,
die für
die Postleitzahl erhalten wurden, und der vorangehenden Ergebnisse,
die für den äußeren Code
erhalten wurden, festgelegt (es sei bemerkt, dass in dieser besonderen
Ausführung der äußere Code
verwendet wird, statt den Buchstaben des äußeren Codes). Eine Beziehung,
die in einer Datenbank definiert wird, wird verwendet, um alle Straßennamen
zu bestimmen, die allen Postleitzahlen in einer Liste mit Kandidaten
für die
Erkennung entspricht, die von einem vorangehenden Erkennungsprozess
geliefert wurde. Ein zweites Vokabular wird mittels einer Beziehung
bereitgestellt, die in einer Datenbank definiert ist, um alle Straßennamen
zu bestimmen, die einem der äußeren Codes
in einer anderen Liste mit Kandidaten für die Erkennung entspricht.
-
Die
Genauigkeit einer Erkennung von Straßennamen hängt davon ab, wie die Postleitzahl
oder die äußeren Codes
bestimmt werden, die verwendet werden, um die Vokabulare mit Straßennamen
aufzubauen. In der Ausführung
der hier beschriebenen Erfindung wird die Äußerung des Straßennamens
mit einem Erkenner erkannt, der mit zwei verschiedenen Vokabularen
konfiguriert ist. Das erste besteht aus einem kurzen Vokabular,
das aus einer Liste mit Kandidaten für die Erkennung von Postleitzahlen
abgeleitet wird, während
das zweite aus einem viel größeren Vokabular
besteht, das aus einer Liste mit Kandidaten für die Erkennung von äußeren Codes
abgeleitet ist. Die Listen mit Kandidaten für die Erkennung von den zwei
Erkennungsprozessen werden durch Schneiden der zwei Listen überlagert.
-
Beziehen
wir uns nun auf 5, die eine funktionelle Darstellung
der Prozessschritte in einer Erkennungsvorrichtung als Ausführung der
Erfindung zeigt. Die Erkennungsprozesse 1, 2, 3, 4 und 5 sind jeder
dazu eingerichtet, ein Vokabular von Postleitzahlen 6,
Namen von Verwaltungsbezirken 7, Postleitzahlen 8,
Straßennamen 9 und
Straßennamen 10 zu
erkennen. Das Erkennungsvokabular kann Elemente in einem besonderen
Feld in einer Datenbank enthalten oder kann durch einen Abbildungsprozess, zum
Beispiel 14 oder 15, erzeugt werden.
-
Der
Erkennungsprozess 2 ist dazu eingerichtet, ein Vokabular
mit Namen von Verwaltungsbezirken 7 zu erkennen, das mit
Maschinendarstellung von Elementen in dem Verwaltungsbezirk-Feld
der Einträge
in der Datenbank 100 erzeugt wird. Eine Liste mit Kandidaten
für Namen
von Verwaltungsbezirken 20 wird von dem Erkennungsprozess 2 als
Reaktion auf ein erstes Sprachsignal vom Benutzer erzeugt, das dem
ersten empfangenen Sprachsignal dieser Erfindung entspricht. Die
Liste von Kandidaten mit Namen von Verwaltungsbezirken wird verwendet, um
eine abgebildete Kandidatenliste 18 mit Buchstaben des äußeren Codes
mit einem Abbildungsprozess 12 zu erzeugen, die der ersten
Menge von Elementen dieser Erfindung entspricht. In der bevorzugten
Ausführung
wird die Liste mit Kandidaten für
den Namen vor dem Abbildungsprozess 12 auf eine Länge von
2 begrenzt. Der Abbildungsprozess erzeugt eine abgebildete Kandidatenliste
aus Elementen in einem Feld der Datenbank mit Buchstaben des äußeren Codes
für alle
Datenbankeinträge,
die in dem Verwaltungsbezirk-Feld einen der Verwaltungsbezirke in
der Liste mit Kandidaten für
den Namen des Verwaltungsbezirkes aufweisen. In Varianten verwendet
der Abbildungsprozess eine definierte Beziehung, um die abgebildete
Kandidatenliste zu erzeugen, oder er verwendet Informationen in
einer anderen Datenbank oder Nachschlagetabelle.
-
Ebenso
ist der Erkennungsprozess 1 dazu eingerichtet, ein Postleitzahlenvokabular 6 zu
erkennen, das mit Maschinendarstellungen von Elementen in dem Postleitzahlen-Feld
von Einträgen
in der Datenbank 100 erzeugt wurde. Eine Liste mit Kandidaten
für Postleitzahlen 19 wird
von dem Erkennungsprozess 1 als Reaktion auf ein zweites
Sprachsignal vom Benutzer erzeugt, das dem zweiten empfangenen Sprachsignal
dieser Erfindung entspricht. Die Liste mit Kandidaten für Postleitzahlen
wird verwendet, um eine abgebildete Kandidatenliste 17 mit Buchstaben
des äußeren Code
mit einem Abbildungsprozess 11, der zu dem Abbildungsprozess 12 analog
ist, zu erzeugen, die der zweiten Menge dieser Erfindung entspricht.
In Varianten verwendet der Abbildungsprozess eine definierte Beziehung,
um die abgebildete Kandidatenliste zu erzeugen, oder er verwendet
Informationen in anderen Datenbanken oder Nachschlagetabellen. Im
Falle einer Übersetzung
von einer Postleitzahl in äußeren Code
oder Buchstaben von äußerem Code
sollte z. B. eine Trunkierung der Postleitzahl verwendet werden.
Die abgebildete Liste von Buchstaben des äußeren Codes 11 wird
vor der Überlagerung
auf eine Länge
von 3 begrenzt. Es sei angemerkt, dass in der bevorzugten Ausführung die
Liste mit Kandidaten für
Namen des Verwaltungsbezirks 20 vor dem Abbildungsprozess 12 in
der Länge
begrenzt wird, während
die Liste mit Kandidaten für
die Postleitzahl 19 auf Buchstaben des äußeren Codes abgebildet, und
dann die Länge der
Liste mit Kandidaten für
Buchstaben des äußeren Codes
begrenzt wird.
-
Wenn
die Liste mit Kandidaten für
die Erkennung 19 jede einmal auf eine gemeinsame Darstellung 17 beziehungsweise 18 abgebildet
wurden (in diesem Fall eine Liste mit Buchstaben des äußeren Codes),
werden die abgebildeten Listen durch einen Schnittprozess 21 überlagert,
der der kombinatorischen Funktion dieser Erfindung entspricht. Das
Ergebnis des Schnittprozesses ist eine Liste mit Kandidaten für Buchstaben
des äußeren Codes 8,
die der abgebildeten Menge dieser Erfindung entspricht, mit äußeren Codes,
die sowohl in der Liste mit äußeren Codes 17,
als auch der Liste mit äußeren Codes 18 auftreten.
-
Die
Liste mit Kandidaten für
Buchstaben des äußeren Codes
wird dann in eine Zwischenliste mit Kandidaten für die Postleitzahl 23 durch
einen Abbildungsprozess 22 abgebildet. Wenn die Liste mit
Kandidaten für
den äußeren Code 8 keine
Elemente enthält,
d.h. es gab keine kreuzweise Übereinstimmung in
den Listen mit äußeren Codes 17 und 18 dann
wird das erste Element in der Liste mit Buchstaben des äußeren Codes 17 verwendet,
um eine Zwischenliste mit Kandidaten für die Postleitzahl 23 zu
erzeugen. Die abgebildete Liste mit Kandidaten für die Postleitzahl 23 wird
verwendet, um ein Vokabular zu erzeugen, das verwendet wird, um
einen Erkennungsprozess 3 zu konfigurieren. Der Erkennungsprozess 3 erzeugt
eine zweite Liste mit Kandidaten für Postleitzahlen 24 als
Reaktion auf das zweite Sprachsignal des Benutzers. Folglich wird
das zweite Sprachsignal des Benutzers mit einem kleineren Vokabular
als in dem vorangehenden Erkennungsprozess 1 erneut erkannt,
was im allgemeinen ein genaueres Ergebnis erzeugt. Die zweite Liste
mit Kandidaten für
Postleitzahlen 24 und die erste Liste mit Kandidaten für Postleitzah len 19 werden
dann mit einem Vereinigungsprozess überlagert, um eine dritte Liste
mit Kandidaten für
Postleitzahlen 31 zu erzeugen. Die dritte Liste mit Kandidaten
für Postleitzahlen 31 wird
dann von einem Abbildungsprozess 14 verwendet, um ein Vokabular
für Straßennamen 9 zu
erzeugen.
-
Die
zweite Kandidatenliste für
Postleitzahlen 24 wird von einem Abbildungsprozess 13 verwendet, um
eine entsprechende zweite Liste mit Kandidaten für den äußeren Code 25 zu erzeugen,
die dann von einem Abbildungsprozess 15 verwendet wird,
um ein Vokabular für
Straßennamen 10 zu
erzeugen. In der bevorzugten Ausführung wird die Liste mit Kandidaten
für den äußeren Code
auf eine Länge
von eins vor der Erzeugung des Vokabulars für Straßennamen begrenzt. Die Listen
mit Kandidaten für
Straßennamen 9 und 10 werden
verwendet, um die Erkennungsprozesse 4 und 5 zu
konfigurieren. Die Erkennungsprozesse 4 und 5 erzeugen
dann entsprechende Listen mit Kandidaten für Straßennamen 26 bzw. 27 als
Reaktion auf das selbe Sprachsignal des Benutzers, das einen Straßennamen
darstellt. Da die Listen mit Kandidaten für den Straßennamen schon eine gemeinsame
Darstellung miteinander teilen, gibt es keine Notwendigkeit eines
Abbildungsprozesses vor der Überlagerung,
die einen Schnittprozess 28 verwendet. In der bevorzugten
Ausführung
ist eine Postleitzahlenidentifikation erforderlich, folglich werden
die Listen mit Kandidaten für
die Straßennamen 26 und 27 vor
dem Schnittprozess auf Listen mit Postleitzahlen 32 und 33 abgebildet.
Weil sich in dieser Ausführung
ein Straßenname
auf mehr als eine Postleitzahl beziehen kann, wird die Liste mit
Kandidaten für
die Postleitzahl 31 auch in den Schnittprozess 28 einbezogen,
um sicherzustellen, dass sich die identifizierte Postleitzahl auf
das zweite Sprachsignal bezieht, das von dem Benutzer bereitgestellt wird,
statt auf eine andere Postleitzahl, der sich auf den selben Straßennamen
bezieht.
-
Nach
dem Schnittprozess 28 es möglich, die erforderliche Postleitzahl
zu identifizieren.
-
Die
identifizierte Postleitzahl wird von dem Überlagerer 106 in 1 ausgegeben
und in dem Speicher 109 gespeichert. Ein Einstufungssignal
wird ebenso bereitgestellt und entsprechend dem Ergebnis des Schnittprozesses
gespeichert. Wenn eine kreuzweise Übereinstimmung gefunden wird,
und das übereinstimmende
Ergebnis dem besten Kandidaten in der Liste mit Kandidaten für Straßennamen 26 und 27 entspricht,
dann wird ein Signal gespeichert, das hohe Genauigkeit darstellt.
Wenn eine kreuzweise Übereinstimmung
gefunden wird, die nicht dem besten Kandidaten in beiden Listen
mit Kandidaten für
Straßennamen
sind, dann wird ein Signal gespeichert, das mittlere Genauigkeit
darstellt. Wenn mehr als eine kreuzweise Übereinstimmung gefunden wird,
wird der wahrscheinlichste in der Liste mit kreuzweise übereinstimmenden
Kandidaten verwendet und das Ergebnis wird als geringe Genauigkeit
eingestuft. Wenn keine kreuzweise Übereinstimmung gefunden wird,
dann wird der wahrscheinlichste Kandidat aus der Liste mit Kandidaten
für Straßennamen 26 verwendet,
und ein Signal, das geringe Genauigkeit darstellt, wird gespeichert.
-
In
einer anderen Ausführung
der Erfindung werden Sprachsignale mit verschiedenen Erkennern erkannt,
zum Beispiel Spracherkenner, die mit voneinander verschiedenen Trainingsdaten
trainiert wurden, oder Spracherkennungsvorrichtungen, die von verschiedenen
Firmen geliefert wurden, bevor Listen mit Kandidaten für die Erkennung überlagert
werden.
-
In
einer anderen Ausführung
der Erfindung werden Sprachsignale, die voneinander verschieden sind,
mit Erkennern erkannt, die dazu eingerichtet sind, das gleiche Vokabular
wie der jeweils andere zu erkennen, bevor die Listen mit Kandidaten
für die
Erkennung überlagert
werden.