DE102021122068A1 - Verbessern von spracherkennungstranskriptionen - Google Patents

Verbessern von spracherkennungstranskriptionen Download PDF

Info

Publication number
DE102021122068A1
DE102021122068A1 DE102021122068.8A DE102021122068A DE102021122068A1 DE 102021122068 A1 DE102021122068 A1 DE 102021122068A1 DE 102021122068 A DE102021122068 A DE 102021122068A DE 102021122068 A1 DE102021122068 A1 DE 102021122068A1
Authority
DE
Germany
Prior art keywords
phonemes
computer
transcription
processors
utterance
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
DE102021122068.8A
Other languages
English (en)
Inventor
Andrew R. Freed
Marco Noel
Aishwarya Hariharan
Martha Hollomann
Mohammad Gorji-Sefidmazgi
Daniel Zyska
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of DE102021122068A1 publication Critical patent/DE102021122068A1/de
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/06Creation of reference templates; Training of speech recognition systems, e.g. adaptation to the characteristics of the speaker's voice
    • G10L15/063Training
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/22Procedures used during a speech recognition process, e.g. man-machine dialogue
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/06Creation of reference templates; Training of speech recognition systems, e.g. adaptation to the characteristics of the speaker's voice
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/06Creation of reference templates; Training of speech recognition systems, e.g. adaptation to the characteristics of the speaker's voice
    • G10L15/065Adaptation
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • G10L15/16Speech classification or search using artificial neural networks
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • G10L15/18Speech classification or search using natural language modelling
    • G10L15/183Speech classification or search using natural language modelling using context dependencies, e.g. language models
    • G10L15/187Phonemic context, e.g. pronunciation rules, phonotactical constraints or phoneme n-grams
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/26Speech to text systems
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • G10L15/18Speech classification or search using natural language modelling
    • G10L15/1822Parsing for meaning understanding
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L25/00Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
    • G10L25/48Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 specially adapted for particular use

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • Machine Translation (AREA)
  • Auxiliary Devices For Music (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

Bereitgestellt werden kann ein Ansatz zum Korrigieren von Transkriptionen von Spracherkennungsmodellen. Für einen bestimmten Knoten, der einem virtuellen Assistenten zugehörig ist, kann eine Liste ähnlich klingender Phoneme für Phoneme häufig vorkommender Begriffe erzeugt werden. Eine Äußerung kann transkribiert werden und einen Konfidenz-Score erhalten, der auf Grundlage von Audiometrie und anderen Faktoren die Korrektheit der Transkription angibt. Die Phoneme der Äußerung können mit den Phonemen der häufig vorkommenden Begriffe aus der Liste verglichen werden, und ein Klangähnlichkeits-Score für die übereinstimmenden Phoneme und ähnlich klingenden Phoneme kann ermittelt werden. Wenn ermittelt wird, dass der Klangähnlichkeits-Score für einen Begriff aus der Liste häufig vorkommender Begriffe über einem Schwellenwert liegt, kann die Transkription durch den Begriff ersetzt werden, wodurch eine korrigierte Transkription bereitgestellt wird.

Description

  • HINTERGRUND DER ERFINDUNG
  • Die vorliegende Erfindung bezieht sich im Allgemeinen auf das Gebiet der Spracherkennung und im Besonderen auf ein Verbessern der Transkription von Äußerungen bei der Spracherkennung.
  • Spracherkennungsmodelle versuchen seit langer Zeit, den Benutzern über Äußerungen oder gesprochene Befehle eine Interaktion mit Datenverarbeitungseinheiten zu ermöglichen. Verbesserungen bei den Verarbeitungsfähigkeiten und der Arbeitsspeicherkapazität haben dazu geführt, dass die Fähigkeit von Sprachassistenten zur Verarbeitung von gesprochenen Befehlen und Äußerungen im vergangenen Jahrzehnt enorm zugenommen hat. Diese Verbesserungen haben die Entwicklung einer neuen Benutzerschnittstelle ermöglicht, bei der gesprochene Befehle und Äußerungen der Datenverarbeitungseinheit Anweisungen zur Verfügung stellen können. Bei manchen Modellen bezieht die Spracherkennung ein Empfangen von Schallwellen und ein Identifizieren von Phonemen in den Schallwellen sowie ein Zuweisen einer Bedeutung zu den Phonemen ein, die für einen Computer verständlich ist.
  • KURZDARSTELLUNG
  • Ausführungsformen der vorliegenden Offenbarung enthalten ein computerrealisiertes Verfahren, Computerprogrammprodukt und ein System zum Verbessern der Spracherkennung eines Sprachassistenten. Die Spracherkennung kann ein Transkribieren einer Äußerung in Text, ein Erzeugen eines Transkriptions-Konfidenz-Scores auf Grundlage der Transkription und der Audiometrie, wenn er auf den Transkriptions-Konfidenz-Score reagiert, der unter einem Schwellenwert liegt, ein Vergleichen von Phonemen in der Äußerung mit Phonemen in mindestens einem Begriff aus einer Liste häufig vorkommender Begriffe enthalten. Zusätzlich können Ausführungsformen auf Grundlage des Vergleichens ein Erzeugen eines Klangähnlichkeits-Scores für Phoneme in dem mindestens einen Begriff aus einer Liste häufig vorkommender Begriffe enthalten. Des Weiteren können manche Ausführungsformen die ursprüngliche Transkription durch den mindestens einen Begriff aus der Liste häufig vorkommender Begriffe ersetzen, wenn der Klangähnlichkeits-Score über einem Schwellenwert liegt.
  • Die obige Kurzdarstellung ist nicht dafür gedacht, jede veranschaulichte Ausführungsform einer jeden Realisierung der vorliegenden Offenbarung zu beschreiben.
  • Figurenliste
    • 1 ist ein funktionales Blockschaubild, das auf allgemeine Weise eine Umgebung für die Korrektur einer Spracherkennungstranskription gemäß einer Ausführungsform der vorliegenden Erfindung darstellt.
    • 2 ist ein funktionales Blockschaubild, das eine Transkriptionskorrektur-Engine gemäß einer Ausführungsform der vorliegenden Erfindung darstellt.
    • 3 ist ein funktionales Blockschaubild ist, das ein Modul für die automatische Spracherkennung gemäß einer Ausführungsform der vorliegenden Erfindung darstellt.
    • 4 ist ein Ablaufplan, der ein Verfahren zum Erzeugen einer Klangähnlichkeits-Liste gemäß einer Ausführungsform der vorliegenden Erfindung darstellt.
    • 5 ist ein Ablaufplan, der ein Verfahren zum Korrigieren einer Spracherkennungstranskription gemäß einer Ausführungsform der vorliegenden Erfindung darstellt.
    • 6 ist ein funktionales Blockschaubild eines beispielhaften Datenverarbeitungssystems innerhalb einer Umgebung für die Korrektur einer Spracherkennungstranskription gemäß einer Ausführungsform der vorliegenden Erfindung.
    • 7 ist eine Darstellung, die eine Cloud-Computing-Umgebung gemäß einer Ausführungsform der vorliegenden Erfindung darstellt.
    • 8 ist ein funktionales Blockschaubild, das Schichten eines Abstraktionsmodells gemäß einer Ausführungsform der vorliegenden Erfindung darstellt.
  • Obwohl die hier beschriebenen Ausführungsformen für verschiedene Abwandlungen und alternative Formen offen sind, wurden Besonderheiten hiervon in den Zeichnungen beispielhaft gezeigt und werden im Detail beschrieben. Dabei versteht sich jedoch von selbst, dass die beschriebenen bestimmten Ausführungsformen nicht in einem beschränkenden Sinne zu verstehen sind. Vielmehr sollen alle Abwandlungen, Entsprechungen und Alternativen, die unter den gedanklichen Wesensgehalt und inhaltlichen Umfang der Offenbarung fallen, abgedeckt sein.
  • AUSFÜHRLICHE BESCHREIBUNG
  • Die dargestellten Ausführungsformen ermöglichen einen Ansatz zum Korrigieren von Spracherkennungstranskriptionen, im Besonderen zum Vergleichen der Phoneme einer Transkription mit niedrigerer Konfidenz mit Phonemen von erwarteten häufig vorkommenden Begriffen und zum Korrigieren der Transkription mit geringer Konfidenz auf Grundlage des Vergleichs.
  • Bei einer Ausführungsform der Erfindung wird ein Protokoll mit historischen Aufzeichnungen von Benutzeräußerungen und Audiometrie in einem spezifischen Knoten eines virtuellen Assistenten (VA) empfangen. Ein VA kann ein Frage/Antwort-Programm sein (z.B. Watson° von International Business Machines, Inc., Siri® von Apple, Inc., Alexa® von Amazon, LLC, usw.), oder ein VA kann ein Computerprogramm sein, das einem Benutzer zugehörig ist, dem Aufforderungen bereitgestellt werden und der mit Äußerungen oder Befehlen auf Aufforderungen reagiert, wie dies z.B. bei einem Anruf bei einer Kundenservice-Telefonnummer der Fall ist. Zusätzlich kann ein Knoten die durch den VA bereitgestellte isolierte Aufforderung oder Frage sein, auf die der VA bestimmte Reaktionen erwartet. Die Aufzeichnungen werden auf Grundlage des durch einen Benutzer geäußerten Begriffs identifiziert, der durch den VA ermittelt wird. Auch die am häufigsten vorkommenden Äußerungen werden identifiziert. Aus den am häufigsten vorkommenden Äußerungen werden die jeweiligen Phoneme extrahiert. Ein bzw. mehrere extrahierte Phoneme können isoliert werden, und eine Liste ähnlich klingender Phoneme kann für das Phonem erzeugt werden. Ein Ähnlichkeits-Konfidenz-Score kann erzeugt werden, der angibt, wie groß die Ähnlichkeit zwischen dem extrahierten Phonem und der Liste ähnlich klingender Phoneme ist. Die Klangähnlichkeitsliste kann in einem Daten-Repository gespeichert werden, das dem betreffenden VA-Knoten entspricht.
  • Bei einer weiteren Ausführungsform der Erfindung kann auf Grundlage einer Aufforderung von einem VA eine Äußerungsaufzeichnung in einem Knoten empfangen werden. Die Äußerung kann durch ein Modul für die automatische Spracherkennung (Automatic Speech Recognition, ASR) transkribiert werden, und auf Grundlage der erwarteten Reaktion auf die Aufforderung des VA-Knotens und/oder der Audiometrie der Aufzeichnung kann ein Konfidenz-Score zugewiesen werden. Wenn der Konfidenz-Score unter einem Schwellenwert liegt, wird die Transkription als „fehlgeschlagen“ betrachtet. Gelungene potenzielle Transkriptionen aus einer „Klangähnlichkeitsliste“ von Reaktionen mit häufig vorkommenden Begriffen für den Knoten können aus einem Daten-Repository geladen werden. Die fehlgeschlagene Transkription kann auf Grundlage der erwarteten häufig vorkommenden Begriffe auf eine Übereinstimmung mit gelungenen Transkriptionen geprüft werden, wobei die Phoneme des „Fehlschlags“ mit Phonemen der potentiell gelungenen Transkriptionen verglichen werden. Die übereinstimmenden Transkriptionen erhalten einen Score auf Grundlage von einwandfrei deckungsgleichen Phonemen. Die „fehlgeschlagene“ Transkription kann durch die potenziell gelungene Transkription mit der höchsten Wertung ersetzt werden, wenn der Score für die Übereinstimmung über einem Schwellenwert liegt.
  • 1 ist ein funktionales Blockschaubild, das auf allgemeine Weise eine Umgebung 100 für die Korrektur einer Spracherkennungstranskription darstellt. Die Umgebung 100 für die Korrektur einer Spracherkennungstranskription weist ein auf einem Server 102 betriebenes Modul 104 für die automatische Spracherkennung (ASR) und eine Transkriptionskorrektur-Engine 106, ein auf dem Server 102 gespeichertes Daten-Repository 108, einen Client-Computer 112 sowie ein Netzwerk 110 auf, das eine Datenübertragung zwischen dem Server 102 und dem Client-Computer 112 unterstützt. Es wird darauf verwiesen, dass die alleinige Nennung des Servers 102 ausschließlich aus Gründen der Vereinfachung erfolgt, da mehrere Server und andere Datenverarbeitungseinheiten (d.h. 1, 2, n...n+1) innerhalb der Umgebung enthalten sein können, auf die über das Netzwerk 110 zugegriffen werden kann.
  • Der Server 102 und der Client-Computer 112 können eine eigenständige Datenverarbeitungseinheit, ein Verwaltungs-Server, ein Web-Server, eine mobile Datenverarbeitungseinheit oder eine beliebige andere elektronische Einheit bzw. ein beliebiges anderes elektronisches Datenverarbeitungssystem sein, die bzw. das in der Lage ist, Daten zu empfangen, zu senden und zu verarbeiten. Bei anderen Ausführungsformen können der Server 102 und der Client-Computer 112 für ein Server-Datenverarbeitungssystem stehen, das mehrere Computer als ein Server-System verwendet. Bei einer weiteren Ausführungsform können der Server 102 und der Client-Computer 112 ein Laptop Computer, ein Tablet Computer, ein Personal Computer, ein Desktop Computer oder eine beliebige andere programmierbare, elektronische Einheit sein, die in der Lage ist, mit anderen (nicht gezeigten) Datenverarbeitungseinheiten innerhalb der Umgebung 100 für die Korrektur einer Spracherkennungstranskription über das Netzwerk 110 Daten auszutauschen.
  • Bei einer weiteren Ausführungsform stehen der Server 102 und der Client-Computer 112 für ein Datenverarbeitungssystem, das geclusterte Computer und Komponenten (z.B. Datenbank-Server-Computer), Anwendungs-Server-Computer usw.) verwendet und das als ein einziger Pool von nahtlosen Ressourcen dienen kann, wenn innerhalb der Umgebung 100 für die Korrektur einer Spracherkennungstranskription darauf zugegriffen wird. Der Server 102 und der Computer 112 können interne und externe Hardware-Komponenten enthalten, wie dies mit Blick auf 6 ausführlicher dargestellt und beschrieben wird.
  • Das Modul 104 für die automatische Spracherkennung (ASR) kann ein Computermodul sein, das in der Lage ist, eine Äußerung oder einen Befehl zu empfangen und in ein (weiter unten beschriebenes) computerlesbares Format umzuwandeln. Obwohl das ASR-Modul 104 in 1 als in dem Server 102 betrieben gezeigt wird, sollte klar sein, dass es in einer beliebigen Datenverarbeitungseinheit, die über das Netzwerk 110 mit der Transkriptionskorrektur-Engine 106 Daten austauscht, bzw. in einer lokalen Datenverarbeitungseinheit mit der Transkriptionskorrektur-Engine 106 betrieben werden kann.
  • Die Transkriptionskorrektur-Engine 106 kann ein Modul zum Empfangen von historischen Datenprotokollen sein. Historische Datenprotokolle können die Aufzeichnungen von Benutzeräußerungen enthalten. Zum Beispiel kann es sich hierbei um die Aufzeichnungen von Benutzeräußerungen handeln, die einem oder mehreren Knoten innerhalb eines virtuellen Assistentensystems zugehörig sind. Historische Datenprotokolle können auch die Audiometrie enthalten, die den aufgezeichneten Benutzeräußerungen entspricht. Audiometrie kann Informationen zur Qualität der Aufzeichnung enthalten, z.B. Signal-Rausch-Verhältnis, Hintergrundgeräusch, Sprachquote, Höhenverlust, Gleichstromversatz, Clipping-Rate, Sprachpegel und nichtsprachlicher Pegel. Audiometrie kann durch Software bereitgestellt werden, z.B. durch den Watson ® Speech-to-Text-Dienst von International Business Machines, Inc., der Audiometriemerkmale extrahiert. Zusätzlich kann die Transkriptionskorrektur-Engine 106 in der Lage sein, die Begriffe zu identifizieren, die innerhalb eines bestimmten Zeitraums (z.B. ein Monat, zwei Wochen oder benutzerdefiniert) in den historischen Datenprotokollen am häufigsten vorkommen. Des Weiteren kann die Transkriptionskorrektur-Engine 106 aus den Benutzeräußerungen der am häufigsten vorkommenden Begriffe die Phoneme der Begriffe isolieren. Eine Liste von Phonemen, die ähnlich wie die isolierten Phoneme klingen, kann (wie weiter unten erläutert) durch die Transkriptionskorrektur-Engine 106 erzeugt werden.
  • Des Weiteren kann die Transkriptionskorrektur-Engine 106 eine Benutzeräußerung und Audiometrie für die Äußerung über eine Aufzeichnung oder in Echtzeit für einen bestimmten VA-Knoten empfangen und die Äußerung in eine Transkription übersetzen. Für die Transkription kann auf Grundlage der erwarteten Reaktion auf die Äußerung und auf Grundlage der Audiometrie ein Transkriptions-Konfidenz-Score erzeugt werden. Des Weiteren kann die Transkriptionskorrektur-Engine 106 die Transkription (wie weiter unten beschrieben) auf Grundlage der Klangähnlichkeitsliste korrigieren. Obwohl die Transkriptionskorrektur-Engine 104 in 1 als in nur einer einzigen Datenverarbeitungseinheit betrieben gezeigt wird, sollte klar sein, dass die Transkriptionskorrektur-Engine 106 bei manchen Ausführungsformen in einer oder mehreren Datenverarbeitungseinheiten oder innerhalb eines Cloud-Computing-Systems betrieben werden kann. Die Transkriptionskorrektur-Engine 106 kann manche der oben beschriebenen Aktionen in derselben Datenverarbeitungseinheit oder in verschiedenen Datenverarbeitungseinheiten durchführen.
  • Das Daten-Repository 108 kann eine Datenbank sein, die in der Lage ist, Daten zu speichern, z.B. erzeugte „Klangähnlichkeitslisten“, Phonem-Konfidenz-Scores, Transkriptions-Konfidenz-Scores, Äußerungen und entsprechende Audiometrie für einen bestimmten VA-Knoten, ohne jedoch hierauf beschränkt zu sein. Obwohl das Daten-Repository 108 in 1 als auf dem Server 102 befindlich gezeigt wird, sollte klar sein, dass das Daten-Repository 108 bei manchen Ausführungsformen in einer oder mehreren Datenverarbeitungseinheiten oder innerhalb eines Cloud-Computing-Systems angeordnet sein kann.
  • Das Netzwerk 110 kann zum Beispiel ein lokales Netzwerk (Local Area Network, LAN), ein Weitverkehrsnetzwerk (Wide Area Network, WAN) wie beispielsweise das Internet oder eine Kombination hiervon sein und kann drahtgebundene, drahtlose oder Lichtwellenleiterverbindungen enthalten. Im Allgemeinen kann das Netzwerk 110 jede beliebige Kombination aus Verbindungen und Protokollen sein, die eine Datenübertragung zwischen dem Server 102 und dem Client-Computer 112 unterstützt.
  • 2 ist ein funktionales Blockschaubild 200 einer Transkriptionskorrektur-Engine 106. Ein Begriffsidentifizierungsmodul 202 und ein Phonemvergleichsmodul 204 werden als innerhalb der Transkriptionskorrektur-Engine 106 betrieben gezeigt.
  • Das Begriffsidentifizierungsmodul 202 ist ein Computermodul, das in der Lage ist, in ihren Phoneme und Audiometrie aufgeschlüsselte Äußerungen aus dem Daten-Repository 108 zu empfangen oder abzurufen. Zusätzlich kann das Begriffsidentifizierungsmodul 202 auch Echtzeit-Benutzeräußerungen von dem ASR-Modul 104 empfangen, die in Phoneme und Audiometrie aufgeschlüsselt wurden. Bei manchen Ausführungsformen kann das Begriffsidentifizierungsmodul 202 die häufig vorkommenden Äußerungen aus historischen Audioprotokollen und die entsprechenden Begriffe für einen spezifischen Knoten eines VAs identifizieren. Des Weiteren kann das Begriffsidentifizierungsmodul 202 den Prozentsatz ermitteln, mit dem ein Begriff über einen Zeitraum hinweg in einem bestimmten Knoten verwendet wurde. Der Zeitraum kann je nach Konfiguration statisch oder dynamisch sein. Zum Beispiel soll ein Kundenservice-VA für ein Finanzinstitut über einen bestimmten Monat hinweg den Benutzern vier Aufforderungen zur Auswahl stellen: 1) Girokonto, 2) Spareinlagen, 3) Rente oder 4) Kredite. Das Begriffsidentifizierungsmodul 202 kann ermitteln, welche der aufgezeichneten historischen Äußerungen einem jeden Begriff entspricht und den Prozentsatz erzeugen, zu dem jeder Begriff durch einen Benutzer verwendet wird (z.B. Girokonto 55 %, Spareinlagen 25 %, Rente 10 % und Kredite 10 %. Zusätzlich kann das Begriffsidentifizierungsmodul 202 Äußerungen identifizieren, die aufgrund von mangelhafter Audiometrie, aufgrund von Akzenten oder fehlerhafter Aussprache nicht exakt übereinstimmen (z.B. wenn ein Benutzer „Girokonten“ anstatt „Girokonto“ oder „Sparanlagen“ anstatt „Spareinlagen“ sagt). Das Begriffsidentifizierungsmodul 202 kann die häufig vorkommenden Begriffe und die den Begriffen entsprechenden Äußerungen identifizieren und die Begriffe an das Phonemvergleichsmodul 204 senden.
  • Das Phonemvergleichsmodul 204 kann ein Computermodul mit der Fähigkeit sein, Phoneme zu analysieren, die aus historischen Äußerungen und Echtzeit-Benutzeräußerungen extrahiert werden. Bei einer Ausführungsform kann das Phonemvergleichsmodul die häufig vorkommenden Begriffe und Phoneme für Äußerungen für einen VA-Knoten von dem Begriffsidentifizierungsmodul 202 empfangen oder abrufen. Des Weiteren kann das Phonemvergleichsmodul 204 auf Grundlage der Begriffe des VA-Knotens eine Klangähnlichkeitsliste für die Phoneme der Äußerungen erzeugen. So gibt es zum Beispiel im Englischen 44 Phoneme. Das Phonemvergleichsmodul 204 kann die Phoneme eines Begriffs ermitteln und Phoneme finden, die Ähnlichkeit mit dem Begriff haben, um eine „Klangähnlichkeitsliste“ von Phonemen zu erzeugen. Bei manchen Ausführungsformen kann jedem Phonem in der Liste ein Ähnlichkeits-Score zugewiesen werden. Der Ähnlichkeits-Score kann auf einer Phonemliste, die von einem Menschen annotiert wird, oder auf einer Analyse der Ähnlichkeit beruhen, die das Audiosignal-Spektrogramm der beiden Phoneme aufweist. Bei manchen Ausführungsformen kann der Ähnlichkeits-Score ein regionales Dialektmerkmal enthalten, das auf einem Identifizieren des Akzents des Benutzers beruht, der die Äußerung tätigt.
  • Bei manchen Ausführungsformen kann das Phonemvergleichsmodul 204 von dem ASR-Modul 104 eine Echtzeit-Transkription einer Benutzeräußerung sowie die extrahierten Phoneme der Äußerung mit einem Transkriptions-Konfidenz-Score empfangen, der unter einem Schwellenwert liegt. Das Phonemvergleichsmodul 204 kann die Phoneme aus der Äußerung analysieren, um eine potenziell „gelungene“ Transkription für die Echtzeit-Benutzeräußerung zu erzeugen. Bei manchen Ausführungsformen wird die Anzahl von Phonemen mit der Anzahl von erwarteten Phonemen für einen erwarteten Begriff für den VA-Knoten abgeglichen. Begriffe mit mehr oder weniger Phonemen werden zurückgewiesen. Wenn ein Benutzer zum Beispiel „au-thor-i-za-tion“ sagen möchte und das ASR-Modul 104 dies als „of-her-i-say-shun“ transkribiert, würde das Phonemvergleichsmodul 204 erkennen, dass die Äußerung fünf Phoneme enthält und die häufig vorkommenden Begriffe in der Liste außer Betracht lassen, die vier oder weniger Phoneme sowie sechs oder mehr Phoneme aufweisen. Des Weiteren können die verbleibenden Begriffe analysiert werden, um zu ermitteln, welche Phoneme übereinstimmen. Die nicht übereinstimmenden Phoneme werden mit den Phonemen aus der „Klangähnlichkeitsliste“ für den erwarteten Begriff verglichen. Im obigen Beispiel wäre „i-say-shun“ eine Übereinstimmung aus der Klangähnlichkeitsliste. Die verbleibenden zwei Phoneme „of“ und „her“ würden mit den ähnlich klingenden Phonemen aus der Klangähnlichkeitsliste für „authorization“ verglichen. In diesem Beispiel ist „of“ in der Klangähnlichkeitsliste für das Phonem „au“ enthalten. Allerdings ist „her“ nicht in der Klangähnlichkeitsliste für das Phonem enthalten, das „thor“ entspricht. Alle übereinstimmenden Begriffe erhalten einen Score für die Phonem-Deckungsgleichheit, und wenn der Score für die Phonem-Deckungsgleichheit über einem (vorgegeben oder auf Grundlage von Audiometrie dynamischen) Schwellenwert liegt, können die Phoneme, deren Deckungsgleichheit neu festgestellt wird, die ursprüngliche Transkription ersetzen. Ein Score für die Phonem-Deckungsgleichheit kann berechnet werden, indem der Prozentsatz der einwandfrei deckungsgleichen Phoneme der ursprünglichen Transkription ermittelt und der Prozentsatz mit dem Klangähnlichkeits-Score des einen bzw. der mehreren nicht deckungsgleichen Phoneme faktorisiert wird. Die neue Transkription kann zur Aktualisierung des ASR-Moduls 104 verwendet werden.
  • 3 ist ein funktionales Blockschaubild 300 des ASR-Moduls 104 gemäß einer Ausführungsform der Erfindung. Das ASR-Modul 104 kann aus einem Sprachübersetzer 302, einem Sprach-Transkriptor 304, einem Token-Erzeuger 306, einem POS-Tagger (Part Of Speech, Wortart) 308, einem Identifikator 310 für semantische Beziehungen und einem Identifikator 312 für syntaktische Beziehungen bestehen. Bei manchen Ausführungsformen kann das ASR-Modul 104 ein neuronales Netzwerk oder ein Hidden-Markov-Modell oder ein hybrides neuronales Netzwerk/Hidden-Markov-Modell sein, das in der Lage ist, Äußerungen zu empfangen und die Phoneme aus den Äußerungen zu extrahieren und Text aus den extrahierten Phonemen zu transkribieren.
  • Der Sprachübersetzer 302 kann Äußerungen von einem Benutzer empfangen oder abrufen. Die Äußerungen können in Echtzeit als ein Schallwellenmodell aufgezeichnet oder empfangen werden. Der Sprachübersetzer 302 kann das Wellenmodell für eine weitere Analyse in ein Audiosignal-Spektrogramm umwandeln. Das Audiosignal-Spektrogramm kann eine visuelle Darstellung der Dauer, Amplitude und Frequenz einer Äußerung in einer zweidimensionalen Darstellung bereitstellen. Der Sprachübersetzer 302 kann auf Grundlage einer Analyse des Audiosignal-Spektrogramms Phoneme ermitteln. Zusätzlich kann das Spektrogramm in kleinere Zeiträume (z.B. 10 Millisekunden) unterteilt werden, um die Ermittlung der Phoneme aus der Äußerung zu verbessern.
  • Der Sprach-Transkriptor 304 ist ein Computermodul, das in der Lage ist, Text auf Grundlage einer Analyse von Phonemen zu erzeugen, die von dem Sprachübersetzer 302 empfangen oder abgerufen werden. Manche Ausführungsformen der Erfindung können über die Fähigkeit verfügen, ein Wort auf Grundlage eines Vorhersagemodells zu ermitteln, wobei das vorhergehende Phonem bzw. die vorhergehenden Phoneme bei der Vorhersage berücksichtigt werden. Im Zuge der Texttranskription kann der Sprachtranskriptor des Weiteren eine Eingabe von dem Token-Erzeuger 306, dem POS-Tagger 308, dem Identifikator 310 für semantische Beziehungen und dem Identifikator 312 für syntaktische Beziehungen empfangen. Der Sprachtranskriptor kann außerdem die Fähigkeit bereitstellen, der Transkription auf Grundlage der Audiometrie, die der Äußerung entspricht, einen Transkriptions-Konfidenz-Score zuzuweisen. Bei manchen Ausführungsformen kann der Transkriptions-Konfidenz-Score eine Evaluierung des Signal-Rausch-Verhältnisses, des Hintergrundgeräuschs, der Sprachquote, des Höhenverlusts, des Gleichstromversatzes, der Clipping-Rate, des Sprachpegels und des nichtsprachlichen Pegels sein. Bei manchen anderen Ausführungsformen kann der Konfidenz-Score durch den Kontext bestimmt werden, wobei der Score auf der erwarteten Reaktion für einen spezifischen VA-Knoten beruht. Des Weiteren kann die erwartete Reaktion darin bestehen, wie sehr die Transkription mit den erwarteten Reaktionen übereinstimmt.
  • Bei manchen Ausführungsformen kann der Token-Erzeuger 306 ein Computermodul sein, das eine lexikalische Analyse durchführt. Der Token-Erzeuger 306 kann eine Sequenz von Zeichen in eine Sequenz von Token umwandeln. Ein Token kann eine Zeichenkette sein, die in einer Aufzeichnung enthalten ist und als ein bedeutungsvolles Symbol kategorisiert wird. Des Weiteren kann der Token-Erzeuger 306 bei manchen Ausführungsformen Wortgrenzen in einer Äußerung identifizieren und einen beliebigen Text innerhalb des Korpus in seine einzelnen Textelemente wie z.B. Wörter, Mehrwort-Token, Zahlen und Satzzeichen zerlegen. Bei manchen Ausführungsformen kann der Token-Erzeuger 306 eine Zeichenkette empfangen, die Lexeme in der Kette identifizieren und sie in Token kategorisieren.
  • Im Einklang mit verschiedenen Ausführungsformen kann der POS-Tagger 308 ein Computermodul sein, das ein Wort in einer Transkription als einer bestimmten Wortart entsprechend kennzeichnet. Der POS-Tagger 308 kann die Transkription der Äußerung analysieren und jedem Wort oder anderem Token eine Wortart zuweisen. Auf Grundlage der Definition des Worts und des Kontexts des Worts kann der POS-Tagger 308 die Wortart ermitteln, der ein Wort entspricht. Als Grundlage für den Kontext eines Worts kann seine Beziehung zu benachbarten und verwandten Wörtern in einer Phrase, einem Satz oder einem Absatz dienen. Bei manchen Ausführungsformen kann der Kontext eines Worts von einem oder mehreren zuvor analysierten Wörtern in dem Korpus abhängig sein. Beispiele von Wortarten, die Wörtern zugewiesen sein können, enthalten Nomen, Verben, Adjektive, Adverbien und dergleichen, ohne darauf beschränkt zu sein. Beispiele für andere Wortartkategorien, die der POS-Tagger 308 zuweisen kann, enthalten Komparativ- und Superlativformen von Adverbien, Frageadverbien, Konjunktionen, Bestimmungswörter, Negationspartikel, Possessivpronomen, Präpositionen, Fragepronomen und dergleichen, ohne darauf beschränkt zu sein. Bei manchen Ausführungsformen kann der POS-Tagger 308 Token von „an“-Wörtern in einem Korpus mit Wortartkategorien versehen oder anderweitig annotieren. Bei manchen Ausführungsformen kann der POS-Tagger 308 Token oder Wörter eines Korpus, der durch den Sprach-Transkriptor 304 geparst werden soll, mit einer Markierung versehen.
  • Bei manchen Ausführungsformen kann der Identifikator 310 für semantische Beziehungen ein Computermodul sein, das konfiguriert werden kann, um semantische Beziehungen von erkannten Elementen (z.B. Wörtern, Phrasen, Bildern usw.) in einem Korpus zu identifizieren. Bei manchen Ausführungsformen kann der Identifikator 310 für semantische Beziehungen funktionale Abhängigkeiten zwischen Entitäten und andere semantische Beziehungen innerhalb der Transkription ermitteln.
  • Im Einklang mit verschiedenen Ausführungsformen kann der Identifikator 312 für syntaktische Beziehungen ein Computermodul sein, das konfiguriert werden kann, um syntaktische Beziehungen in einem aus Token bestehenden Korpus zu identifizieren. Der Identifikator 312 für syntaktische Beziehungen kann die grammatikalische Struktur von Sätzen ermitteln, zum Beispiel, welche Gruppen von Wörtern Phrasen zugehörig sind und welches Wort das Subjekt oder Objekt eines Verbs ist. Der Identifikator 312 für syntaktische Beziehungen kann einer formalen Grammatik entsprechen.
  • 4 ist ein Ablaufplan, der ein Verfahren zum Erzeugen einer „Klangähnlichkeitsliste“ darstellt. In 402 werden historische Äußerungen und die entsprechende Audiometrie in der Transkriptionskorrektur-Engine 106 empfangen.
  • In 404 identifiziert die Transkriptionskorrektur-Engine 106 die häufig vorkommenden Begriffe aus den historischen Äußerungen und der Audiometrie. Die häufig vorkommenden Begriffe können durch das Begriffsidentifizierungsmodul 202 durch eine Analyse der Häufigkeit identifiziert werden, mit welcher der Begriff in einem VA-Knoten innerhalb eines Zeitraums gewählt wurde. Des Weiteren kann bei manchen Ausführungsformen die Audiometrie durch das Begriffsidentifizierungsmodul evaluiert werden, um zu ermitteln, ob der Begriff gewählt wurde, und wenn die Audiometrie für eine bestimmte Äußerung mangelhaft ist, kann die Äußerung bei der abschließenden Analyse außer Betracht gelassen werden.
  • In 406 kann das ASR-Modul 104 die identifizierten häufig vorkommenden Begriffe in die entsprechenden Phoneme aufschlüsseln. Bei manchen Ausführungsformen evaluiert das Akustikwellenmodell eine zuvor aufgezeichnete Äußerung, und der Sprachübersetzer 302 wandelt das Akustikwellenmodell in ein Audiosignal-Spektrogramm um und isoliert Phoneme aus dem Audiosignal-Spektrogramm. Der Sprachtranskriptor 304 kann die isolierten Phoneme mit einer Eingabe von dem Token-Erzeuger 306, dem POS-Tagger 308, dem Identifikator 310 für semantische Beziehungen und dem Identifikator 312 für syntaktische Beziehungen umwandeln, sodass sichergestellt ist, dass der transkribierte Text semantisch und syntaktisch korrekt ist.
  • In 408 erzeugt das Phonemvergleichsmodul 204 eine „Klangähnlichkeitsliste“ für die Phoneme der häufig vorkommenden Begriffe, die durch das ASR-Modul 104 transkribiert werden. Des Weiteren kann das Phonemvergleichsmodul 204 der Liste ähnlich klingender Phoneme für jedes Phonem aus den häufig vorkommenden Begriffen einen Konfidenz-Score zuweisen.
  • 5 ist ein Ablaufplan, der ein Verfahren 500 zum Korrigieren einer Transkription unter Verwendung einer Klangähnlichkeitsliste darstellt. In 502 kann das ASR-Modul 104 eine Äußerung und Audiometrie empfangen. Die Äußerung kann für einen spezifischen VA-Knoten oder innerhalb eines offenen Dialog-Frameworks für einen VA vorliegen. Bei manchen Ausführungsformen kann die Äußerung innerhalb eines spezifischen Kontextes aus einem automatisierten, telefonischen Kunden-Support vorliegen. Bei einer weiteren Ausführungsform kann die Äußerung aus einem offenen Dialog-Framework stammen, bei dem der VA durch eine spezifische Äußerung und einen vorab vorhandenen Befehl oder durch eine Frage aus einem bestimmten Fachgebiet ausgelöst wird.
  • In 504 kann das ASR-Modul 104 die empfangene Äußerung transkribieren. Bei manchen Ausführungsformen kann das ASR-Modul 104 die Äußerung in ihre Phoneme aufschlüsseln und den Text auf Grundlage der Phoneme erzeugen. Bei manchen Ausführungsformen kann der Text unter Verwendung eines prädiktiven Modells erzeugt werden, wobei das Modell ein tiefes neuronales Netzwerk ist.
  • In 506 kann das ASR-Modul 104 der Transkription der Äußerung einen Transkriptions-Konfidenz-Score zuweisen. Bei manchen Ausführungsformen kann der Transkriptions-Konfidenz-Score auf einer Evaluierung der Audiometrie beruhen oder auf Grundlage der erwarteten Reaktion kontextbezogen sein, oder er kann eine Kombination aus beidem sein.
  • In 508 ermittelt die Transkriptionskorrektur-Engine 106, ob der Transkriptions-Konfidenz-Score über einem Schwellenwert liegt. Der Schwellenwert kann statisch oder dynamisch sein. Wenn der Schwellenwert statisch ist, kann er durch einen Benutzer auf Grundlage seines jeweiligen Ermessens oder seiner jeweiligen Erfordernisse konfiguriert werden. Der Schwellenwert kann auf Grundlage zahlreicher Faktoren dynamisch konfiguriert werden, z.B. der jeweils verfügbaren Datenverarbeitungsressourcen, der Länge der Äußerungen, der Auslastung des VA-Knotens zum Zeitpunkt des Empfangs der Äußerung usw. Wenn der Transkriptions-Konfidenz-Score unter einem Schwellenwert liegt, wird die Transkription als „fehlgeschlagen“ betrachtet und zur weiteren Verarbeitung weitergeleitet. Wenn der Konfidenz-Score über einem Schwellenwert liegt, endet das Transkriptionsverfahren.
  • In 510 vergleicht das Phonemvergleichsmodul 204 die Phoneme in der „fehlgeschlagenen“ Transkription mit Phonemen von häufig vorkommenden Begriffen für einen bestimmten Knoten. Bei manchen Ausführungsformen kann das Phonemvergleichsmodul konfiguriert werden, um die Anzahl der Phoneme in der Transkription zu analysieren und zu ermitteln, welche häufig vorkommenden Begriffe dieselbe Anzahl von Phonemen enthalten. Das Phonemvergleichsmodul 204 kann des Weiteren ermitteln, ob etwaige Phoneme in der Transkription mit den Phonemen in den häufig vorkommenden Begriffen übereinstimmen. Phoneme aus den häufig vorkommenden Begriffen, die nicht mit den Phonemen in der Transkription übereinstimmen, können mit Phonemen aus einer „Klangähnlichkeitsliste“ verglichen werden, um zu ermitteln, ob eine Übereinstimmung der Phoneme festgestellt werden kann. Zusätzlich kann das Phonemvergleichsmodul 204 die Zahl der übereinstimmenden Phoneme und der übereinstimmenden Phoneme mit „ähnlichem Klang“ mit einem Score versehen. Dieser Score kann ein Prozentsatz von übereinstimmenden Phonemen und ein Faktor von übereinstimmenden Phonemen mit „ähnlichem Klang“ sein.
  • In 512 wird die „fehlgeschlagene“ Transkription durch die Transkription ersetzt, die den übereinstimmenden Phonemen entspricht, wenn der Score für übereinstimmende Phoneme über einem (statisch oder dynamisch zugewiesenen) Schwellenwert liegt. Die neu entwickelte Transkription kann zur Aktualisierung des ASR-Moduls 104 verwendet werden.
  • In 514 endet das Verfahren.
  • 6 stellt ein Computersystem 600 dar, ein Beispiel-Computersystem, das für den Server 102 und das Daten-Repository 108 oder eine beliebige andere Datenverarbeitungseinheit innerhalb einer Ausführungsform der Erfindung steht. Das Computersystem 600 enthält eine Datenübertragungsstruktur, die eine Datenübertragung zwischen einem bzw. mehreren Computerprozessoren 14, einem Arbeitsspeicher 16, einem persistenten Speicher 18, einem Netzwerkadapter 28 und einer bzw. mehreren Eingabe/Ausgabe(E/A)-Schnittstellen 26 bereitstellt. Die Datenübertragungsstruktur 12 kann mit einer beliebigen Architektur realisiert werden, die dafür entworfen wurde, zwischen Prozessoren (wie z.B. Mikroprozessoren, Datenübertragungs- und Netzwerkprozessoren usw.), einem Systemarbeitsspeicher, Peripherieeinheiten und beliebigen anderen Hardware-Komponenten innerhalb eines Systems Daten und/oder Steuerungsinformationen weiterzuleiten. Die Datenübertragungsstruktur 12 kann zum Beispiel mit einem oder mehreren Bussen realisiert werden.
  • Das Computersystem 600 enthält die Prozessoren 14, den Cache 22, den Arbeitsspeicher 16, die Netzwerkadapter 28, die eine bzw. die mehreren Eingabe/Ausgabe(E/A)-Schnittstellen 26 und die Datenübertragungsstruktur 12. Die Datenübertragungsstruktur 12 stellt eine Datenübertragung zwischen dem Cache 22, dem Arbeitsspeicher 16, dem persistenten Speicher 18, dem Netzwerkadapter 28 und der einen bzw. den mehreren Eingabe/Ausgabe(E/A)-Schnittstellen 26 bereit. Die Datenübertragungsstruktur 12 kann mit einer beliebigen Architektur realisiert werden, die dafür entworfen wurde, zwischen Prozessoren (wie z.B. Mikroprozessoren, Datenübertragungs- und Netzwerkprozessoren usw.), einem Systemarbeitsspeicher, Peripherieeinheiten und beliebigen anderen Hardware-Komponenten innerhalb eines Systems Daten und/oder Steuerungsinformationen weiterzuleiten. Die Datenübertragungsstruktur 12 kann zum Beispiel mit einem oder mehreren Bussen oder einem Kreuzschienen-Schalter realisiert werden.
  • Der Arbeitsspeicher 16 und der persistente Speicher 18 sind computerlesbare Speichermedien. Bei dieser Ausführungsform enthält der Arbeitsspeicher 16 den persistenten Speicher 18, einen Direktzugriffsspeicher (RAM) 20, den Cache 22 und ein Programmmodul 24. Im Allgemeinen kann der Arbeitsspeicher 16 alle geeigneten flüchtigen oder nicht flüchtigen computerlesbaren Speichermedien enthalten. Der Cache 22 ist ein schneller Arbeitsspeicher, der die Leistung der Prozessoren 14 verbessert, indem er Daten, auf die kürzlich zugegriffen wurde, sowie Daten in der Nähe von Daten, auf die kürzlich zugegriffen wurde, aus dem Arbeitsspeicher 16 speichert. Wie weiter unten ausführlicher dargestellt und beschrieben wird, kann der Arbeitsspeicher 16 mindestens ein Programmmodul 24 enthalten, das konfiguriert wird, um die Funktionen von Ausführungsformen der Erfindung durchzuführen.
  • Zum Beispiel und ohne als Beschränkung gedacht zu sein, kann das Programm/Dienstprogramm mit mindestens einem Programmmodul 24 in dem Arbeitsspeicher 16 gespeichert werden, ebenso wie ein Betriebssystem, ein oder mehrere Anwendungsprogramme, andere Programmmodule und Programmdaten. Jedes der Betriebssysteme, das eine oder die mehreren Anwendungsprogramme, die anderen Programmmodule und die Programmdaten oder eine Kombination hiervon können jeweils eine Realisierung einer Netzwerkumgebung enthalten. Das Programmmodul 24 führt im Allgemeinen die Funktionen und/oder Verfahrensweisen von Ausführungsformen der hier beschriebenen Erfindung aus.
  • Programmanweisungen und Daten zur praktischen Umsetzung von Ausführungsformen der vorliegenden Erfindung können in dem persistenten Speicher 18 und dem Arbeitsspeicher 16 gespeichert werden, um über den Cache 22 durch einen oder mehrere der betreffenden Prozessoren 14 ausgeführt zu werden. Bei einer Ausführungsform enthält der persistente Speicher 18 ein magnetisches Festplattenlaufwerk. Alternativ oder zusätzlich zu einem magnetischen Festplattenlaufwerk kann der persistente Speicher 18 eine Halbleiter-Festplatte, eine Halbleiter-Speichereinheit, einen Festwertspeicher (Read-Only Memory, ROM), einen löschbaren programmierbaren ROM (Erasable Programmable Read-Only Memory, EPROM), einen Flash-Speicher oder jedes andere computerlesbare Speichermedium enthalten, das in der Lage ist, Programmbefehle oder digitale Informationen zu speichern.
  • Die durch den persistenten Speicher 18 verwendeten Medien können auch entfernbar sein. So kann zum Beispiel ein entfernbares Festplattenlaufwerk als der persistente Speicher 18 verwendet werden. Andere Beispiele enthalten optische und Magnetplatten, USB-Sticks und Smartcards, die in ein Laufwerk eingeführt werden, um eine Übertragung auf ein weiteres computerlesbares Speichermedium vorzunehmen, das ebenfalls Teil des persistenten Speichers 18 ist.
  • Der Netzwerkadapter 28 stellt in diesen Beispielen eine Datenübertragung mit anderen Datenverarbeitungssystemen oder-einheiten bereit. In diesen Beispielen enthält der Netzwerkadapter 28 eine oder mehrere Netzwerkschnittstellenkarten. Der Netzwerkadapter 28 kann eine Datenübertragung sowohl über physische als auch über drahtlose Datenübertragungsverbindungen bereitstellen. Programmanweisungen und Daten zur praktischen Umsetzung von Ausführungsformen der vorliegenden Erfindung können über den Netzwerkadapter 28 in den persistenten Speicher 18 heruntergeladen werden.
  • Die eine bzw. die mehreren E/A-Einheiten 26 ermöglichen die Eingabe und Ausgabe von Daten in/aus einer bzw. mehreren anderen Einheiten, die mit jedem einzelnen Computersystem verbunden werden können. So kann die E/A-Schnittstelle 26 z.B. eine Verbindung zu den externen Einheiten 30 wie beispielsweise zu einer Tastatur, einem Tastenfeld, einem berührungsempfindlichen Bildschirm und/oder einer anderweitigen geeigneten Eingabeeinheit bereitstellen. Die externen Einheiten 30 können auch tragbare computerlesbare Speichermedien wie z.B. USB-Sticks, tragbare optische oder Magnetplatten und Speicherkarten enthalten. Software und Daten zur praktischen Umsetzung von Ausführungsformen der vorliegenden Erfindung können auf derartigen tragbaren computerlesbaren Speichermedien gespeichert und über die eine bzw. die mehreren E/A-Schnittstellen 26 in den persistenten Speicher 18 geladen werden. Die eine bzw. die mehreren E/A-Schnittstellen 26 werden auch mit einer Anzeige 32 verbunden.
  • Die Anzeige 32 stellt einen Mechanismus bereit, um einem Benutzer Daten anzuzeigen, und kann zum Beispiel ein Computermonitor oder eine virtuelle grafische Benutzerschnittstelle sein.
  • Die hier beschriebenen Komponenten werden auf Grundlage der Anwendung identifiziert, für die sie in einer spezifischen Ausführungsform der Erfindung realisiert werden. Dabei sollte jedoch klar sein, dass jede hier genannte konkrete Komponenten-Nomenklatur lediglich zum Zwecke der Vereinfachung verwendet wird und dass die Erfindung nicht darauf zu beschränken ist, ausschließlich in einer wie auch immer gearteten spezifischen Anwendung verwendet zu werden, die durch eine solche Nomenklatur angegeben und/oder impliziert wird.
  • Bei der vorliegenden Erfindung kann es sich um ein System, ein Verfahren und/oder ein Computerprogrammprodukt handeln. Das Computerprogrammprodukt kann ein computerlesbares Speichermedium (oder -medien) mit darauf gespeicherten computerlesbaren Programmanweisungen enthalten, um einen Prozessor dazu zu veranlassen, Aspekte der vorliegenden Erfindung auszuführen.
  • Bei dem computerlesbaren Speichermedium kann es sich um eine physische Einheit handeln, die Anweisungen zur Verwendung durch eine Anweisungsausführungseinheit enthalten und speichern kann. Bei dem computerlesbaren Speichermedium kann es sich zum Beispiel um eine elektronische Speichereinheit, eine magnetische Speichereinheit, eine optische Speichereinheit, eine elektromagnetische Speichereinheit, eine Halbleiterspeichereinheit oder jede geeignete Kombination daraus handeln, ohne auf diese beschränkt zu sein. Zu einer nicht erschöpfenden Liste spezifischerer Beispiele des computerlesbaren Speichermediums gehören die Folgenden: eine tragbare Computerdiskette, eine Festplatte, ein RAM, ein ROM, ein löschbarer programmierbarer Nur-Lese-Speicher (EPROM bzw. Flash-Speicher), ein statischer Direktzugriffsspeicher (SRAM), ein tragbarer CD-ROM, eine DVD (Digital Versatile Disc), ein Speicher-Stick, eine Diskette, eine mechanisch kodierte Einheit wie zum Beispiel Lochkarten oder erhabene Strukturen in einer Rille, auf denen Anweisungen gespeichert sind, und jede geeignete Kombination daraus. Ein computerlesbares Speichermedium soll in der Verwendung hierin nicht als flüchtige Signale an sich aufgefasst werden, wie zum Beispiel Funkwellen oder andere sich frei ausbreitende elektromagnetische Wellen, elektromagnetische Wellen, die sich durch einen Wellenleiter oder ein anderes Übertragungsmedium ausbreiten (z.B. durch ein Lichtwellenleiterkabel geleitete Lichtimpulse) oder durch einen Draht übertragene elektrische Signale.
  • Hierin beschriebene computerlesbare Programmanweisungen können von einem computerlesbaren Speichermedium auf jeweilige Datenverarbeitungs-/Verarbeitungseinheiten oder über ein Netzwerk wie zum Beispiel das Internet, ein lokales Netzwerk, ein Weitverkehrsnetzwerk und/oder ein drahtloses Netzwerk auf einen externen Computer oder eine externe Speichereinheit heruntergeladen werden. Das Netzwerk kann Kupferübertragungskabel, Lichtwellenübertragungsleiter, drahtlose Übertragung, Leitwegrechner, Firewalls, Vermittlungseinheiten, Gateway Computer und/oder Edge-Server aufweisen. Eine Netzwerkadapterkarte oder Netzwerkschnittstelle in jeder Datenverarbeitungs-/Verarbeitungseinheit empfängt computerlesbare Programmanweisungen aus dem Netzwerk und leitet die computerlesbaren Programmanweisungen zur Speicherung in einem computerlesbaren Speichermedium innerhalb der entsprechenden Datenverarbeitungs-/Verarbeitungseinheit weiter.
  • Bei computerlesbaren Programmanweisungen zum Ausführen von Operationen der vorliegenden Erfindung kann es sich um Assembler-Anweisungen, ISA-Anweisungen (Instruction-Set-Architecture), Maschinenanweisungen, maschinenabhängige Anweisungen, Mikrocode, Firmware-Anweisungen, zustandssetzende Daten oder entweder Quellcode oder Objektcode handeln, die in einer beliebigen Kombination aus einer oder mehreren Programmiersprachen geschrieben werden, darunter objektorientierte Programmiersprachen wie Smalltalk, C++ o.ä. sowie herkömmliche prozedurale Programmiersprachen wie die Programmiersprache „C“ oder ähnliche Programmiersprachen. Die computerlesbaren Programmanweisungen können vollständig auf dem Computer des Benutzers, teilweise auf dem Computer des Benutzers, als eigenständiges Software-Paket, teilweise auf dem Computer des Benutzers und teilweise auf einem entfernt angeordneten Computer oder vollständig auf dem entfernt angeordneten Computer oder Server ausgeführt werden. In letzterem Fall kann der entfernt angeordnete Computer mit dem Computer des Benutzers durch eine beliebige Art Netzwerk verbunden sein, darunter ein lokales Netzwerk (Local Area Network, LAN) oder ein Weitverkehrsnetzwerk (Wide Area Network, WAN), oder die Verbindung kann mit einem externen Computer hergestellt werden (zum Beispiel über das Internet unter Verwendung eines Internet-Diensteanbieters). Bei manchen Ausführungsformen können elektronische Schaltungen, darunter zum Beispiel programmierbare Logikschaltungen, im Feld programmierbare Gatter-Anordnungen (FPGA) oder programmierbare Logikanordnungen (PLA, Programmable Logic Arrays) die computerlesbaren Programmanweisungen ausführen, indem sie Zustandsinformationen der computerlesbaren Programmanweisungen nutzen, um die elektronischen Schaltungen zu personalisieren, um Aspekte der vorliegenden Erfindung durchzuführen.
  • Aspekte der vorliegenden Erfindung werden hier unter Bezugnahme auf Darstellungen von Ablaufplänen und/oder Blockschaubilder von Verfahren, Vorrichtungen (Systemen) und Computerprogrammprodukten gemäß Ausführungsformen der Erfindung beschrieben. Es wird darauf hingewiesen, dass jeder Block der Ablaufpläne und/oder der Blockschaubilder sowie Kombinationen von Blöcken in den Ablaufplänen und/oder den Blockschaubildern mittels computerlesbaren Programmanweisungen ausgeführt werden können.
  • Diese computerlesbaren Programmanweisungen können einem Prozessor eines Universalcomputers, eines Spezialcomputers oder einer anderen programmierbaren Datenverarbeitungsvorrichtung bereitgestellt werden, um eine Maschine zu erzeugen, sodass die über den Prozessor des Computers bzw. der anderen programmierbaren Datenverarbeitungsvorrichtung ausgeführten Anweisungen ein Mittel zur Umsetzung der in dem Block bzw. den Blöcken des Ablaufplans und/oder des Blockschaubilds festgelegten Funktionen/Schritte erzeugen. Diese computerlesbaren Programmanweisungen können auch auf einem computerlesbaren Speichermedium gespeichert sein, das einen Computer, eine programmierbare Datenverarbeitungsvorrichtung und/oder andere Einheiten so steuern kann, dass sie auf eine bestimmte Art funktionieren, sodass das computerlesbare Speichermedium, auf dem Anweisungen gespeichert sind, ein Herstellungsprodukt aufweist, darunter Anweisungen, welche Aspekte der/des in dem Block bzw. den Blöcken der Ablaufpläne und/oder Blockschaubilder angegebenen Funktion/Schritts umsetzen.
  • Die computerlesbaren Programmanweisungen können auch auf einen Computer, eine andere programmierbare Datenverarbeitungsvorrichtung oder eine andere Einheit geladen werden, um das Ausführen einer Reihe von Prozessschritten auf dem Computer bzw. der anderen programmierbaren Vorrichtung oder anderen Einheit zu verursachen, um einen computerrealisierten Prozess zu erzeugen, sodass die auf dem Computer, einer anderen programmierbaren Vorrichtung oder einer anderen Einheit ausgeführten Anweisungen die in dem Block bzw. den Blöcken der Ablaufpläne und/oder Blockschaubilder festgelegten Funktionen/Schritte umsetzen.
  • Die Ablaufpläne und die Blockschaubilder in den Figuren veranschaulichen die Architektur, die Funktionalität und den Betrieb möglicher Ausführungen von Systemen, Verfahren und Computerprogrammprodukten gemäß verschiedenen Ausführungsformen der vorliegenden Erfindung. In diesem Zusammenhang kann jeder Block in den Ablaufplänen oder Blockschaubildern ein Modul, ein Segment oder einen Teil von Anweisungen darstellen, die eine oder mehrere ausführbare Anweisungen zur Ausführung der bestimmten logischen Funktion bzw. Funktionen aufweisen. Bei manchen alternativen Ausführungsformen können die in dem Block erwähnten Funktionen in einer anderen Reihenfolge als der in den Figuren genannten auftreten. Zwei nacheinander gezeigte Blöcke können zum Beispiel in Wirklichkeit im Wesentlichen gleichzeitig ausgeführt werden, oder die Blöcke können manchmal je nach entsprechender Funktionalität in umgekehrter Reihenfolge ausgeführt werden. Es ist ferner anzumerken, dass jeder Block der Blockschaubilder und/oder der Ablaufpläne sowie Kombinationen aus Blöcken in den Blockschaubildern und/oder den Ablaufplänen durch spezielle auf Hardware beruhende Systeme umgesetzt werden können, welche die festgelegten Funktionen oder Schritte durchführen, oder Kombinationen aus Spezial-Hardware und Computeranweisungen ausführen.
  • Es sei klargestellt, dass das Umsetzen der hierin angeführten Lehren nicht auf eine Cloud-Computing-Umgebung beschränkt ist, obwohl diese Offenbarung eine ausführliche Beschreibung von Cloud-Computing enthält. Vielmehr können Ausführungsformen der vorliegenden Erfindung gemeinsam mit jeder beliebigen Art von jetzt bekannter oder später entwickelter Datenverarbeitungsumgebung umgesetzt werden.
  • Cloud-Computing ist ein Servicebereitstellungsmodell zum Ermöglichen eines problemlosen bedarfsgesteuerten Netzwerkzugriffs auf einen gemeinsam genutzten Pool von konfigurierbaren Datenverarbeitungsressourcen (z.B. Netzwerke, Netzwerkbandbreite, Server, Verarbeitung, Hauptspeicher, Speicher, Anwendungen, virtuelle Maschinen und Dienste), die mit minimalem Verwaltungsaufwand bzw. minimaler Interaktion mit einem Anbieter des Service schnell bereitgestellt und freigegeben werden können. Dieses Cloud-Modell kann mindestens fünf Eigenschaften, mindestens drei Dienstmodelle und mindestens vier Implementierungsmodelle enthalten.
  • Bei den Eigenschaften handelt es sich um die Folgenden:
    • On-Demand Self-Service: Ein Cloud-Nutzer kann einseitig automatisch nach Bedarf für Datenverarbeitungsfunktionen wie Serverzeit und Netzwerkspeicher sorgen, ohne dass eine menschliche Interaktion mit dem Anbieter der Dienste erforderlich ist.
  • Broad Network Access: Es sind Funktionen über ein Netzwerk verfügbar, auf die durch Standardmechanismen zugegriffen wird, welche die Verwendung durch heterogene Thin- oder Thick-Client-Plattformen (z.B. Mobiltelefone, Laptops und PDAs) unterstützen.
  • Resource-Pooling: Die Datenverarbeitungsressourcen des Anbieters werden zusammengeschlossen, um mehreren Nutzern unter Verwendung eines Multi-Tenant-Modells zu dienen, wobei verschiedene physische und virtuelle Ressourcen dynamisch nach Bedarf zugewiesen und neu zugewiesen werden. Es gibt eine gefühlte Standortunabhängigkeit, da der Nutzer allgemein keine Kontrolle bzw. Kenntnis über den genauen Standort der bereitgestellten Ressourcen hat, aber in der Lage sein kann, einen Standort auf einer höheren Abstraktionsebene festzulegen (z.B. Land, Staat oder Rechenzentrum).
  • Rapid Elasticity: Funktionen können für eine schnelle horizontale Skalierung (Scale-out) schnell und elastisch bereitgestellt werden, in einigen Fällen auch automatisch, und für ein schnelles Scale-in schnell freigegeben werden. Für den Nutzer erscheinen die für das Bereitstellen verfügbaren Funktionen häufig unbegrenzt und sie können jederzeit in jeder beliebigen Menge gekauft werden.
  • Measured Service: Cloud-Systeme steuern und optimieren die Verwendung von Ressourcen automatisch, indem sie eine Messfunktion auf einer gewissen Abstraktionsebene nutzen, die für die Art von Dienst geeignet ist (z.B. Speicher, Verarbeitung, Bandbreite sowie aktive Nutzerkonten). Der Ressourcenverbrauch kann überwacht, gesteuert und gemeldet werden, wodurch sowohl für den Anbieter als auch für den Benutzer des verwendeten Dienstes Transparenz geschaffen wird.
  • Bei den Dienstmodellen handelt es sich um die Folgenden:
    • Software as a Service (SaaS): Die dem Nutzer bereitgestellte Funktion besteht darin, die in einer Cloud-Infrastruktur laufenden Anwendungen des Anbieters zu verwenden. Die Anwendungen sind über eine Thin-Client-Schnittstelle wie einen Web-Browser (z.B. auf dem Web beruhende E-Mail) von verschiedenen Client-Einheiten her zugänglich. Der Nutzer verwaltet bzw. steuert die zugrunde liegende Cloud-Infrastruktur nicht, darunter das Netzwerk, Server, Betriebssysteme, Speicher bzw. sogar einzelne Anwendungsfunktionen, mit der möglichen Ausnahme von eingeschränkten Nutzerspezifischen Anwendungskonfigurationseinstellungen.
  • Platform as a Service (PaaS): Die dem Nutzer bereitgestellte Funktion besteht darin, durch einen Nutzer erstellte bzw. erhaltene Anwendungen, die unter Verwendung von durch den Anbieter unterstützten Programmiersprachen und Tools erstellt wurden, in der Cloud-Infrastruktur einzusetzen. Der Nutzer verwaltet bzw. steuert die zugrunde liegende Cloud-Infrastruktur nicht, darunter Netzwerke, Server, Betriebssysteme bzw. Speicher, hat aber die Kontrolle über die eingesetzten Anwendungen und möglicherweise über Konfigurationen Application Hosting Environment.
  • Infrastructure as a Service (laaS): Die dem Nutzer bereitgestellte Funktion besteht darin, das Verarbeiten, Speicher, Netzwerke und andere grundlegende Datenverarbeitungsressourcen bereitzustellen, wobei der Nutzer in der Lage ist, beliebige Software einzusetzen und auszuführen, zu der Betriebssysteme und Anwendungen gehören können. Der Nutzer verwaltet bzw. steuert die zugrunde liegende Cloud-Infrastruktur nicht, hat aber die Kontrolle über Betriebssysteme, Speicher, eingesetzte Anwendungen und möglicherweise eine eingeschränkte Kontrolle über ausgewählte Netzwerkkomponenten (z.B. Host-Firewalls).
  • Bei den Einsatzmodellen handelt es sich um die Folgenden:
    • Private Cloud: Die Cloud-Infrastruktur wird einzig und allein für eine Organisation betrieben. Sie kann durch die Organisation oder einen Dritten verwaltet werden und kann sich in den eigenen Räumen oder in fremden Räumen befinden.
  • Community Cloud: Die Cloud-Infrastruktur wird von mehreren Organisationen gemeinsam genutzt und unterstützt eine spezielle Benutzergemeinschaft, die gemeinsame Angelegenheiten hat (z.B. Zielsetzung, Sicherheitsanforderungen, Richtlinien sowie Überlegungen bezüglich der Einhaltung von Vorschriften). Sie kann durch die Organisationen oder einen Dritten verwaltet werden und sich in den eigenen Räumen oder in fremden Räumen befinden.
  • Public Cloud: Die Cloud-Infrastruktur wird der allgemeinen Öffentlichkeit oder einer großen Industriegruppe zur Verfügung gestellt und sie gehört einer Cloud-Dienste verkaufenden Organisation.
  • Hybrid Cloud: Die Cloud-Infrastruktur ist eine Zusammensetzung aus zwei oder mehreren Clouds (privat, Nutzergemeinschaft oder öffentlich), die zwar einzelne Einheiten bleiben, aber durch eine standardisierte oder proprietäre Technologie miteinander verbunden sind, die Daten- und Anwendungsportierbarkeit ermöglicht (z.B. Cloud-Zielgruppenverteilung für den Lastenausgleich zwischen Clouds).
  • Eine Cloud-Computing-Umgebung ist dienstorientiert mit Fokus auf Statusunabhängigkeit, geringer Kopplung, Modularität und semantischer Interoperabilität. Im Mittelpunkt des Cloud Computing steht eine Infrastruktur, die ein Netzwerk aus zusammengeschalteten Knoten enthält.
  • 7 ist eine Darstellung, die eine Cloud-Computing-Umgebung 50 gemäß mindestens einer Ausführungsform der vorliegenden Erfindung darstellt. Die Cloud-Computing-Umgebung 50 enthält einen oder mehrere Cloud-Computing-Knoten 10, mit denen von Cloud-Nutzern verwendete lokale Datenverarbeitungseinheiten wie der persönliche digitale Assistent (PDA, Personal Digital Assistant) oder das Mobiltelefon 54A, der Desktop Computer 54B, der Laptop Computer 54C und/oder das Automobil-ComputerSystem 54N Daten austauschen können. Die Knoten 10 können miteinander Daten austauschen. Sie können physisch oder virtuell in einem oder mehreren Netzwerken wie Private, Community, Public oder Hybrid Clouds zusammengefasst werden (nicht gezeigt), wie vorstehend beschrieben wurde, oder aber in einer Kombination daraus. Dies ermöglicht es der Cloud-Computing-Umgebung 50, Infrastruktur, Plattformen und/oder Software als Dienst anzubieten, für die ein Cloud-Benutzer keine Ressourcen auf einer lokalen Datenverarbeitungseinheit vorhalten muss. Es sei darauf hingewiesen, dass die Arten von in 6 gezeigten Datenverarbeitungseinheiten 54A bis N lediglich veranschaulichend sein sollen und dass die Datenverarbeitungsknoten 10 und die Cloud-Computing-Umgebung 50 über eine beliebige Art Netzwerk und/oder über eine beliebige Art von über ein Netzwerk aufrufbarer Verbindung (z.B. unter Verwendung eines Web-Browsers) mit einer beliebigen Art von computergestützter Einheit Daten austauschen können.
  • 8 ist ein Blockschaubild, das einen Satz von funktionalen Abstraktionsmodellschichten zeigt, die durch die in 6 dargestellte Cloud-Computing-Umgebung 50 gemäß mindestens einer Ausführungsform der vorliegenden Erfindung bereitgestellt werden. Es sollte von vornherein klar sein, dass die in 7 gezeigten Komponenten, Schichten und Funktionen lediglich veranschaulichend sein sollen und Ausführungsformen der Erfindung nicht darauf beschränkt sind. Wie abgebildet ist, werden die folgenden Schichten und entsprechenden Funktionen bereitgestellt:
  • Eine Hardware- und Software-Schicht 60 enthält Hardware- und Software-Komponenten. Zu Beispielen für Hardware-Komponenten gehören: Mainframe Computer 61; auf der RISC-Architektur (Reduced Instruction Set Computer) beruhende Server 62; Server 63; Blade-Server 64; Speichereinheiten 65; und Netzwerke sowie Netzwerkkomponenten 66. In einigen Ausführungsformen enthalten Software-Komponenten eine Netzwerk-Anwendungsserver-Software 67 und eine Datenbank-Software 68.
  • Eine Virtualisierungsschicht 70 stellt eine Abstraktionsschicht bereit, aus der die folgenden Beispiele für virtuelle Einheiten bereitgestellt werden können: virtuelle Server 71, virtueller Speicher 72, virtuelle Netzwerke 73, darunter virtuelle private Netzwerke, virtuelle Anwendungen und Betriebssysteme 74; und virtuelle Clients 75.
  • In einem Beispiel kann eine Verwaltungsschicht 80 die nachfolgend beschriebenen Funktionen bereitstellen. Eine Ressourcen-Bereitstellung 81 stellt die dynamische Beschaffung von Datenverarbeitungsressourcen sowie anderen Ressourcen bereit, die zum Durchführen von Aufgaben innerhalb der Cloud-Computing-Umgebung verwendet werden. Ein Messen und eine Preisfindung 82 stellen die Kostenverfolgung beim Verwenden von Ressourcen innerhalb der Cloud-Computing-Umgebung sowie die Abrechnung oder Rechnungsstellung für den Verbrauch dieser Ressourcen bereit. In einem Beispiel können diese Ressourcen Anwendungs-Software-Lizenzen aufweisen. Eine Sicherheit stellt die Identitätsüberprüfung für Cloud-Nutzer und Aufgaben sowie Schutz für Daten und andere Ressourcen bereit. Ein Benutzerportal 83 stellt Nutzern und Systemadministratoren einen Zugriff auf die Cloud-Computing-Umgebung bereit. Eine Verwaltung des Dienstumfangs 84 stellt die Zuordnung und Verwaltung von Cloud-Computing-Ressourcen bereit, sodass die benötigten Dienstziele erreicht werden. Ein Planen und Erfüllen von Vereinbarungen zum Dienstumfang (Service Level Agreement, SLA) 85 stellt die Vorab-Anordnung und die Beschaffung von Cloud-Computing-Ressourcen, für die eine zukünftige Anforderung vorausgesehen wird, gemäß einer SLA bereit.
  • Eine Arbeitslastenschicht 90 stellt Beispiele für die Funktionalität bereit, für welche die Cloud-Computing-Umgebung verwendet werden kann. Zu Beispielen für Arbeitslasten und Funktionen, die von dieser Schicht bereitgestellt werden können, gehören: Abbildung und Navigation 91; Software-Entwicklung und Lebenszyklusverwaltung 92; Bereitstellung von Ausbildung in virtuellen Klassenzimmern 93; Datenanalytikverarbeitung 94; Transaktionsverarbeitung 95; und Korrektur einer Spracherkennungstranskription 96.
  • Die Beschreibungen der verschiedenen Ausführungsformen der vorliegenden Erfindung wurden zum Zwecke der Veranschaulichung vorgelegt und sind nicht als vollständig oder auf die offenbarten Ausführungsformen beschränkt zu verstehen. Der Fachmann weiß, dass zahlreiche Änderungen und Abwandlungen möglich sind, ohne vom inhaltlichen Umfang und gedanklichen Wesensgehalt der Erfindung abzuweichen. Die hier verwendete Begrifflichkeit wurde gewählt, um die Grundsätze der Ausführungsform, die praktische Anwendung oder technische Verbesserung gegenüber marktgängigen Technologien bestmöglich zu erläutern bzw. anderen Fachleuten das Verständnis der hier offenbarten Ausführungsformen zu ermöglichen.

Claims (9)

  1. Computerrealisiertes Verfahren zum Trainieren eines Modells zum Verbessern einer Spracherkennung, wobei das computerrealisierte Verfahren aufweist: Transkribieren einer Äußerung in Text durch den einen oder die mehreren Prozessoren; Erzeugen eines Transkriptions-Konfidenz-Scores auf Grundlage der Transkription und der Audiometrie durch den einen oder die mehreren Prozessoren; als Reaktion darauf, dass der Transkriptions-Konfidenz-Score unter einem Schwellenwert liegt, Vergleichen von Phonemen in der Äußerung mit Phonemen in mindestens einem Begriff aus einer Liste häufig vorkommender Begriffe durch den einen oder die mehreren Prozessoren; Erzeugen eines Klangähnlichkeits-Scores für Phoneme in dem mindestens einen Begriff aus einer Liste häufig vorkommender Begriffe durch den einen oder die mehreren Prozessoren; und Ersetzen der Transkription durch den mindestens einen Begriff aus der Liste häufig vorkommender Begriffe, wenn der Klangähnlichkeits-Score über einem Schwellenwert liegt, durch den einen oder die mehreren Prozessoren.
  2. Computerrealisiertes Verfahren nach Anspruch 1, wobei das Vergleichen des Weiteren aufweist: Ermitteln einer Anzahl von Phonemen in der Äußerung durch den einen oder die mehreren Prozessoren; Außerachtlassen von häufig vorkommenden Begriffen, die nicht dieselbe Anzahl von Phonemen aufweisen wie die Äußerung, durch den einen oder die mehreren Prozessoren; und Prüfen der Phoneme von verbleibenden häufig vorkommenden Begriffen auf Übereinstimmung mit den Phonemen in der Äußerung durch den einen oder die mehreren Prozessoren.
  3. Computerrealisiertes Verfahren nach Anspruch 2, des Weiteren aufweisend: als Reaktion darauf, dass die Phoneme nicht übereinstimmen, Ermitteln durch den einen oder die mehreren Prozessoren, ob das Phonem der Äußerung, das nicht mit den häufig vorkommenden Begriffen übereinstimmt, mit Phonemen aus einer Klangähnlichkeitsliste für das entsprechende Phonem häufig vorkommender Begriffe übereinstimmt.
  4. Computerrealisiertes Verfahren nach Anspruch 1, wobei die Audiometrie mindestens eines der folgenden aufweist: Signal-Rausch-Verhältnis, Hintergrundgeräusch, Sprachquote, Höhenverlust, Gleichstromversatz, Clipping-Rate, Sprachpegel oder nichtsprachlicher Pegel.
  5. Computerrealisiertes Verfahren nach Anspruch 1, wobei das Transkribieren durch ein Modul für die automatische Spracherkennung auf Grundlage eines tiefen neuronalen Netzwerks durchgeführt wird.
  6. Computerrealisiertes Verfahren nach Anspruch 1, des Weiteren aufweisend: Empfangen der Äußerung durch den einen oder die mehreren Prozessoren.
  7. Computerrealisiertes Verfahren nach Anspruch 6, wobei das Empfangen durch einen virtuellen Assistenten in einem spezifischen Knoten des virtuellen Assistenten durchgeführt wird, wobei die häufig vorkommenden Begriffe über einen Zeitraum hinweg für den spezifischen Knoten identifiziert wurden.
  8. Computersystem zum Verbessern von Spracherkennungstranskriptionen, wobei das System aufweist: einen oder mehrere Prozessoren; ein oder mehrere computerlesbare Speichermedien; Computerprogrammanweisungen, um; eine Äußerung in Text zu transkribieren; auf Grundlage der Transkription und der Audiometrie einen Transkriptions-Konfidenz-Score zu erzeugen; als Reaktion darauf, dass der Transkriptions-Konfidenz-Score unter einem Schwellenwert liegt, Phoneme in der Äußerung durch den einen oder die mehreren Prozessoren mit Phonemen in mindestens einem Begriff aus einer Liste häufig vorkommender Begriffe zu vergleichen; auf Grundlage des Vergleichens durch den einen oder die mehreren Prozessoren einen Klangähnlichkeits-Score für Phoneme in dem mindestens einen Begriff aus einer Liste häufig vorkommender Begriffe zu erzeugen; und die Transkription durch den mindestens einen Begriff aus der Liste häufig vorkommender Begriffe zu ersetzen, wenn der Klangähnlichkeits-Score über einem Schwellenwert liegt.
  9. Computerprogrammprodukt zum Verbessern von Spracherkennungstranskriptionen, wobei das Computerprogrammprodukt ein computerlesbares Speichermedium und Programmanweisungen aufweist, die in dem computerlesbaren Speichermedium geordnet sind, wobei die Programmanweisungen Anweisungen enthalten, um: auf Grundlage der Transkription und der Audiometrie einen Transkriptions-Konfidenz-Score zu erzeugen; als Reaktion darauf, dass der Transkriptions-Konfidenz-Score unter einem Schwellenwert liegt, Phoneme in der Äußerung durch den einen oder die mehreren Prozessoren mit Phonemen in mindestens einem Begriff aus einer Liste häufig vorkommender Begriffe zu vergleichen; auf Grundlage des Vergleichens durch den einen oder die mehreren Prozessoren einen Klangähnlichkeits-Score für Phoneme in dem mindestens einen Begriff aus einer Liste häufig vorkommender Begriffe zu erzeugen; und die Transkription durch den mindestens einen Begriff aus der Liste häufig vorkommender Begriffe zu ersetzen, wenn der Klangähnlichkeits-Score über einem Schwellenwert liegt.
DE102021122068.8A 2020-09-28 2021-08-26 Verbessern von spracherkennungstranskriptionen Pending DE102021122068A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US17/034,114 US20220101835A1 (en) 2020-09-28 2020-09-28 Speech recognition transcriptions
US17/034,114 2020-09-28

Publications (1)

Publication Number Publication Date
DE102021122068A1 true DE102021122068A1 (de) 2022-03-31

Family

ID=78536407

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102021122068.8A Pending DE102021122068A1 (de) 2020-09-28 2021-08-26 Verbessern von spracherkennungstranskriptionen

Country Status (3)

Country Link
US (1) US20220101835A1 (de)
DE (1) DE102021122068A1 (de)
GB (1) GB2604675B (de)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US12008048B2 (en) * 2021-01-04 2024-06-11 Oracle International Corporation Drill back to original audio clip in virtual assistant initiated lists and reminders
US11875780B2 (en) * 2021-02-16 2024-01-16 Vocollect, Inc. Voice recognition performance constellation graph
US11620993B2 (en) * 2021-06-09 2023-04-04 Merlyn Mind, Inc. Multimodal intent entity resolver

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE19545633C1 (de) * 1995-12-07 1997-06-19 Wesumat Gmbh Verfahren und Vorrichtung zur Abscheidung von Flüssigkeiten aus Schlamm
US6785417B1 (en) * 2000-08-22 2004-08-31 Microsoft Corp Method and system for searching for words in ink word documents
JP2005131562A (ja) * 2003-10-31 2005-05-26 Kuraray Co Ltd 固液分離システム
JP2007136400A (ja) * 2005-11-22 2007-06-07 Subaru Enterprise Co Ltd 排泥水の減容処理方法
US20110184723A1 (en) * 2010-01-25 2011-07-28 Microsoft Corporation Phonetic suggestion engine
US20130277312A1 (en) * 2012-04-19 2013-10-24 Non Sequitur Engineering Global (NSEG) Capillary action water treatment system
US10540957B2 (en) * 2014-12-15 2020-01-21 Baidu Usa Llc Systems and methods for speech transcription
US20170229124A1 (en) * 2016-02-05 2017-08-10 Google Inc. Re-recognizing speech with external data sources
US10481863B2 (en) * 2016-07-06 2019-11-19 Baidu Usa Llc Systems and methods for improved user interface
US10403268B2 (en) * 2016-09-08 2019-09-03 Intel IP Corporation Method and system of automatic speech recognition using posterior confidence scores
US9959864B1 (en) * 2016-10-27 2018-05-01 Google Llc Location-based voice query recognition
US20180315415A1 (en) * 2017-04-26 2018-11-01 Soundhound, Inc. Virtual assistant with error identification
GB2563952A (en) * 2017-06-29 2019-01-02 Cirrus Logic Int Semiconductor Ltd Speaker identification
US20190294973A1 (en) * 2018-03-23 2019-09-26 Google Llc Conversational turn analysis neural networks
US20190385711A1 (en) * 2018-06-19 2019-12-19 Ellipsis Health, Inc. Systems and methods for mental health assessment
US11288598B2 (en) * 2019-08-09 2022-03-29 Oracle International Corporation Third-party analytics service with virtual assistant interface
US11443734B2 (en) * 2019-08-26 2022-09-13 Nice Ltd. System and method for combining phonetic and automatic speech recognition search
US11244696B2 (en) * 2019-11-06 2022-02-08 Microsoft Technology Licensing, Llc Audio-visual speech enhancement
US20220059077A1 (en) * 2020-08-19 2022-02-24 Sorenson Ip Holdings, Llc Training speech recognition systems using word sequences

Also Published As

Publication number Publication date
US20220101835A1 (en) 2022-03-31
GB2604675A (en) 2022-09-14
GB2604675B (en) 2023-10-25

Similar Documents

Publication Publication Date Title
DE112021004353B4 (de) Verbessern von spracherkennungstranskriptionen
DE112018005421T5 (de) Automatisches blockieren von in einem audio-datenstrom enthaltenen sensiblen daten
US10789552B2 (en) Question answering system-based generation of distractors using machine learning
DE112019001533T5 (de) Erweiterung von trainingsdaten für die klassifikation von natürlicher sprache
US11269965B2 (en) Extractive query-focused multi-document summarization
DE102021122068A1 (de) Verbessern von spracherkennungstranskriptionen
DE112018005167T5 (de) Aktualisieren von trainingsdaten
US10162812B2 (en) Natural language processing system to analyze mobile application feedback
DE112020003698T5 (de) Erzeugen akustischer sequenzen über neuronale netze unter verwendung verknüpfter prosodieinformationen
DE112012005177T5 (de) Erzeugens eines Verarbeitungsmodells für natürliche Sprache für einen Informationsbereich
DE112020005726T5 (de) Segmentieren von videos auf der grundlage eines gewichteten wissensgraphen
US11481442B2 (en) Leveraging intent resolvers to determine multiple intents
DE112018003236T5 (de) Domänenspezifischer lexikalisch gesteuerter prä-parser
US20190079916A1 (en) Using syntactic analysis for inferring mental health and mental states
CN111177350A (zh) 智能语音机器人的话术形成方法、装置和系统
WO2022237376A1 (en) Contextualized speech to text conversion
US20220188525A1 (en) Dynamic, real-time collaboration enhancement
DE112020004925T5 (de) Aktualisieren und umsetzen eines dokuments aus einem audiovorgang
DE112020005296T5 (de) Durchsuchen von gesprächsprotokollen eines systems mit virtuellen dialogagenten nach kontrastierenden zeitlichen mustern
DE112021005230T5 (de) Erzeugen alternativer veränderlicher kennsätze
DE112021003184T5 (de) Ermittlung von laufzeitumgebungen für software-container
DE112019001493T5 (de) Ermitteln der abfrageerkennungsresilienz in virtuellen agentensystemen
DE112018005844T5 (de) Phonetische Muster zum Fuzzy Matching bei Verarbeitung natürlicher Sprache
US11704493B2 (en) Neural parser for snippets of dynamic virtual assistant conversation
DE112020003661T5 (de) Anpassen eines gesprächsflusses auf grundlage des verhaltens in einerkognitiven mensch-maschine-interaktion

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R079 Amendment of ipc main class

Free format text: PREVIOUS MAIN CLASS: G10L0015180000

Ipc: G10L0015060000

R016 Response to examination communication