DE112021004353T5 - Verbessern von spracherkennungstranskriptionen - Google Patents

Verbessern von spracherkennungstranskriptionen Download PDF

Info

Publication number
DE112021004353T5
DE112021004353T5 DE112021004353.6T DE112021004353T DE112021004353T5 DE 112021004353 T5 DE112021004353 T5 DE 112021004353T5 DE 112021004353 T DE112021004353 T DE 112021004353T DE 112021004353 T5 DE112021004353 T5 DE 112021004353T5
Authority
DE
Germany
Prior art keywords
utterance
computer
phonemes
utterances
transcription
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
DE112021004353.6T
Other languages
English (en)
Inventor
Andrew R. Freed
Marco Noel
Aishwarya Hariharan
Martha Audrey Holloman
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 DE112021004353T5 publication Critical patent/DE112021004353T5/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/08Speech classification or search
    • G10L15/10Speech classification or search using distance or distortion measures between unknown speech and reference templates
    • 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/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

Landscapes

  • Engineering & Computer Science (AREA)
  • Computational Linguistics (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Artificial Intelligence (AREA)
  • Machine Translation (AREA)
  • Auxiliary Devices For Music (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

Ein Ansatz zum Korrigieren von Transkriptionen von Spracherkennungsmodellen wird möglicherweise bereitgestellt. Eine Liste von ähnlich klingenden Phonemen, die den Phonemen von Ausdrücken mit hoher Häufigkeit zugehörig sind, kann für einen bestimmten Knoten erzeugt werden, der einem virtuellen Assistenten zugehörig ist. Eine Äußerung kann transkribiert werden und auf der Grundlage von Audiomaßzahlen und anderen Faktoren einen Vertrauenspunktwert bezüglich der Korrektheit der Transkription erhalten. Die Phoneme der Äußerung können mit den Phonemen der Ausdrücke mit hoher Häufigkeit aus der Liste verglichen werden, und ein Punktwert für übereinstimmende Phoneme und ähnlich klingenden Phoneme kann ermittelt werden. Wenn festgestellt wird, dass der Klingt-ähnlich-Punktwert für einen Ausdruck aus der Liste von Ausdrücken mit hoher Häufigkeit oberhalb eines Schwellenwerts liegt, kann die Transkription durch den Ausdruck ersetzt werden, wodurch eine korrigierte Transkription bereitgestellt wird.

Description

  • HINTERGRUND DER ERFINDUNG
  • Die vorliegende Erfindung betrifft allgemein das Gebiet der Spracherkennung und insbesondere ein Verbessern der Transkription von Äußerungen in der Spracherkennung. Spracherkennungsmodelle versuchen seit Langem, Benutzern ein Interagieren mit Datenverarbeitungseinheiten über Äußerungen oder gesprochene Befehle zu ermöglichen. Die Fähigkeit von Sprachassistenten, gesprochene Befehle und Äußerungen zu verarbeiten, hat im Zuge der Verbesserungen bei den Verarbeitungskapazitäten und der Speicherkapazität in den vergangenen zehn Jahren enorm zugenommen. Diese Verbesserungen haben die Entwicklung einer neuen Benutzerschnittstelle ermöglicht, bei der gesprochene Befehle und Äußerungen der Datenverarbeitungseinheit Anweisungen bereitstellen können. Bei einigen Modellen ist Spracherkennung mit einem Empfangen von Schallwellen und Erkennen von Phonemen aus den Schallwellen und einem Zuweisen einer für einen Computer verständlichen Bedeutung zu den Phonemen verbunden.
  • KURZDARSTELLUNG
  • Ausführungsformen der vorliegenden Offenbarung umfassen ein mittels Computer realisiertes Verfahren, ein Computerprogrammprodukt und ein System zum Trainieren eines Modells zum Verbessern der Spracherkennung eines Sprachassistenten. Das Trainieren des Modells zum Verbessern der Spracherkennung kann mit einem Empfangen einer Historie von Äußerungen und entsprechenden Audiomaßzahlen für die Äußerungen und mit einem Erzeugen einer Klingt-ähnlich-Liste für mindestens eine Äußerung auf der Grundlage der Historie von Äußerungen und der Audiomaßzahlen für die Äußerungen verbunden sein.
  • Mit der vorstehenden Kurzdarstellung ist nicht beabsichtigt, jede veranschaulichte Ausführungsform jeder Realisierungsform der vorliegenden Offenbarung zu beschreiben.
  • Figurenliste
    • 1 ist ein Funktionsblockschema, das eine Korrekturumgebung für Spracherkennungstranskriptionen gemäß einer Ausführungsform der vorliegenden Erfindung allgemein bildlich darstellt.
    • 2 ist ein Funktionsblockschema, das eine Transkriptionskorrektur-Steuerungsroutine (transcription correction engine) gemäß einer Ausführungsform der vorliegenden Erfindung bildlich darstellt.
    • 3 ist ein Funktionsblockschema, das ein automatisches Spracherkennungsmodul gemäß einer Ausführungsform der vorliegenden Erfindung bildlich darstellt.
    • 4 ist ein Flussdiagramm, das ein Verfahren zum Erzeugen einer Klingt-ähnlich-Liste gemäß einer Ausführungsform der vorliegenden Erfindung bildlich darstellt.
    • 5 ist ein Flussdiagramm, das ein Verfahren zum Korrigieren einer Spracherkennungstranskription gemäß einer Ausführungsform der vorliegenden Erfindung bildlich darstellt.
    • 6 ist ein Funktionsblockschema eines beispielhaften Datenverarbeitungssystems innerhalb der Korrekturumgebung für Spracherkennungstranskriptionen gemäß einer Ausführungsform der vorliegenden Erfindung eines beispielhaften Computersystems.
    • 7 ist ein Darstellung, die eine Cloud-Computing-Umgebung gemäß Ausführungsformen der vorliegenden Erfindung bildlich darstellt.
    • 8 ist ein Funktionsblockschema, das Abstraktionsmodellschichten gemäß einer Ausführungsform der vorliegenden Erfindung bildlich darstellt.
  • Zwar können an den hierin beschriebenen Ausführungsformen verschiedene Modifikationen vorgenommen werden, und die Ausführungsformen können alternative Formen annehmen, deren Besonderheiten jedoch sind beispielhaft in den Zeichnungen gezeigt und werden ausführlich beschrieben. Es sollte jedoch klar sein, dass die bestimmten beschriebenen Ausführungsformen nicht in einem einschränkenden Sinne zu verstehen sind. Im Gegenteil, die Offenbarung soll alle Modifikationen, Äquivalente und Alternativen einschließen, die in den Grundgedanken und Schutzumfang der Erfindung fallen.
  • AUSFÜHRLICHE BESCHREIBUNG
  • Die bildlich dargestellten Ausführungsformen ermöglichen einen Ansatz zum Korrigieren von Spracherkennungstranskriptionen, insbesondere ein Vergleichen der Phoneme einer Transkription mit niedrigem Vertrauen mit erwarteten Ausdrücken mit hoher Häufigkeit und zum Korrigieren der Transkription mit niedrigem Vertrauen auf der Grundlage des Vergleichs.
  • Bei einer Ausführungsform der Erfindung wird ein Protokoll von historischen Aufzeichnungen von Benutzeräußerungen und Audiomaßzahlen an einem bestimmten Knoten eines virtuellen Assistenten (VA) empfangen. Bei einem VA kann es sich um ein Frage-Antwort-Programm (z.B. Watson® von International Business Machines, Inc., Siri® von Apple, Inc., Alexa® von Amazon, LLC usw.) handeln, oder bei einem VA kann es sich um ein Computerprogramm handeln, das mit einem Benutzer in Zusammenhang steht, dem Aufforderungen bereitgestellt werden und der in einer Weise auf Aufforderungen mit Äußerungen oder Befehlen antwortet, als würde der Benutzer eine Kundendienstnummer anrufen. Darüber hinaus kann sich bei einem Knoten um die durch den VA bereitgestellte abgetrennte Aufforderung oder Frage handeln, wobei der VA bestimmte Antworten erwartet. Die Aufzeichnungen werden auf der Grundlage des Ausdrucks erkannt, der durch einen Benutzer geäußert wurde, der durch den VA ermittelt wurde. Die Äußerungen mit der höchsten Häufigkeit werden ebenfalls erkannt. Die Äußerungen mit der höchsten Häufigkeit werden in ihre jeweiligen Phoneme extrahiert. Ein extrahiertes Phonem/extrahierte Phoneme kann/können abgetrennt werden, und eine Liste von ähnlich klingenden Phonemen kann für das Phonem erzeugt werden. Ein Ähnlichkeitsvertrauenspunktwert kann für eine Ähnlichkeit des Phonems in den Listenklängen mit dem extrahierten Phonem erzeugt werden. Die Liste ähnlicher Klänge kann in einem Datendepot (data repository) gespeichert werden, das dem jeweiligen VA-Knoten entspricht.
  • Bei einer weiteren Ausführungsform der Erfindung kann an einem Knoten eine Äußerungsaufzeichnung auf der Grundlage einer Aufforderung von einem VA empfangen werden. Die Aufzeichnung kann durch ein automatisches Spracherkennungsmodul (ASR-Modul) (ASR = Automatic Speech Recognition) transkribiert werden, und ein Vertrauenspunktwert für die Transkription kann auf der Grundlage der erwarteten Antwort auf die Aufforderung des VA-Knotens und/oder der Audiomaßzahlen der Aufzeichnung zugewiesen werden. Wenn der Vertrauenspunktwert unterhalb eines Schwellenwerts liegt, wird die Transkription als „Fehlschlag“ betrachtet. Gute potenzielle Transkriptionen aus einer „Klingt ähnlich“-Liste von Antworten mit Ausdrücken mit hoher Häufigkeit für den Knoten können aus einem Datendepot geladen werden. Die fehlgeschlagene Transkription kann auf der Grundlage der erwarteten Ausdrücke mit hoher Häufigkeit mit guten Transkriptionen abgeglichen werden, wobei Phoneme aus dem „Fehlschlag“ mit Phonemen aus den potenziellen guten Transkriptionen verglichen werden. Die abgeglichenen Transkriptionen werden auf der Grundlage korrekt ausgerichteter Phoneme mit Punkten bewertet. Die „Fehlschlag“-Transkription kann durch die potenzielle gute Transkription mit der höchsten Punktbewertung ersetzt werden, wenn der abgeglichene Punktwert oberhalb des Schwellenwerts liegt.
  • 1 ist ein Funktionsblockschema, das allgemein eine Korrekturumgebung 100 für Spracherkennungstranskriptionen bildlich darstellt. Die Korrekturumgebung 100 für Spracherkennungstranskriptionen weist ein automatisches Spracherkennungsmodul (ASR-Modul) 104 und eine auf einem Server 102 betriebsfähige Transkriptionskorrektur-Steuerungsroutine 106, ein auf dem Server 102 gespeichertes Datendepot 108, einen Client-Computer 112 und ein Netzwerk 110 auf, das Datenübertragung zwischen dem Server 102 und dem Client-Computer 112 unterstützt. Es sollte beachtet werden, dass zur Vereinfachung dies nur auf dem Server 102 erfolgt, jedoch mehrere Server und andere Datenverarbeitungseinheiten innerhalb der Umgebung (d.h. 1, 2, n...n+1) enthalten sein können, auf die über das Netzwerk 110 zugegriffen werden kann.
  • Bei dem Server 102 und dem Client-Computer 112 kann es sich um eine eigenständige Datenverarbeitungseinheit, einen Verwaltungsserver, einen Webserver, eine mobile Datenverarbeitungseinheit oder eine beliebige elektronische Einheit oder ein beliebiges elektronisches Datenverarbeitungssystem handeln, die in der Lage sind, 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 Server-System nutzt. Bei einer weiteren Ausführungsform kann es sich bei dem Server 102 und dem Client-Computer 112 um einen Laptop-Computer, einen Tablet-Computer, einen Netbook-Computer, einen Personal Computer, einen Desktop-Computer oder eine beliebige programmierbare elektronische Einheit handeln, die in der Lage ist, Daten mit anderen Datenverarbeitungseinheiten (nicht gezeigt) innerhalb der Korrekturumgebung 100 für Spracherkennungstranskriptionen über das Netzwerk 110 auszutauschen.
  • Bei einer weiteren Ausführungsform stehen der Server 102 und der Client-Computer 112 für ein Datenverarbeitungssystem, das geclusterte (zu Gruppen zusammengefasste) Computer und Komponenten (z.B. Datenbankserver-Computer, Anwendungsserver-Computer usw.) nutzt, die als ein einziger Pool von nahtlosen Ressourcen fungieren, wenn auf diese innerhalb der Korrekturumgebung 100 für Spracherkennungstranskriptionen zugegriffen wird. Der Server 102 und der Client-Computer 112 können interne und externe Hardwarekomponenten umfassen, wie bildlich dargestellt und ausführlicher in Bezug auf 6 beschrieben.
  • Bei dem automatischen Spracherkennungsmodul (ASR-Modul) 104 kann es sich um ein Computermodul handeln, das in der Lage ist, eine Äußerung oder einen Befehl zu empfangen und diese bzw. diesen in ein durch einen Computer lesbares Format zu übersetzen (nachstehend ausführlicher beschrieben). Es sollte beachtet werden, dass in 1 das ASR-Modul 104 zwar als auf dem Server 102 betriebsfähig gezeigt ist, jedoch auf einer beliebigen Datenverarbeitungseinheit, die mit der Transkriptionskorrektur-Steuerungsroutine 106 Daten über das Netzwerk 110 austauscht, oder auf einer beliebigen lokalen Datenverarbeitungseinheit mit der Transkriptionskorrektur-Steuerungsroutine 106 betriebsfähig sein kann.
  • Bei der Transkriptionskorrektur-Steuerungsroutine 106 kann es sich um ein Modul zum Empfangen historischer Datenprotokolle handeln. Zu historischen Datenprotokollen können die Aufzeichnungen von Benutzeräußerungen gehören. Zum Beispiel die Aufzeichnungen von Benutzeräußerungen, die mit einem oder mehreren Knoten innerhalb eines virtuellen Assistenzsystems in Zusammenhang stehen. Zu historischen Datenprotokollen können außerdem die Audiomaßzahlen hören, die den aufgezeichneten Benutzeräußerungen entsprechen. Zu Audiomaßzahlen können Informationen bezüglich der Qualität der Aufzeichnung gehören, unter anderem Signal-Rausch-Verhältnis, Hintergrundgeräusche, Sprechverhältnis, Hochfrequenzverlust, Gleichstrom-Offset, Begrenzungsrate, Sprechpegel und Nicht-Sprechpegel. Audiomaßzahlen können durch Software bereitgestellt werden, unter anderem und ohne auf diesen beschränkt zu sein, durch den Sprache-in-Text-Dienst Watson® von International Business Machines, Inc., der Audiomaßzahlmerkmale extrahiert. Darüber hinaus kann die Transkriptionskorrektur-Steuerungsroutine 106 in der Lage sein, die Ausdrücke mit der höchsten Häufigkeit aus den historischen Datenprotokollen innerhalb eines bestimmten Zeitrahmens (z.B. ein Monat, zwei Wochen oder benutzerdefiniert) zu erkennen. Ferner kann die Transkriptionskorrektur-Steuerungsroutine 106 die Benutzeräußerungen der häufigsten Ausdrücke in die Phoneme der Ausdrücke auftrennen. Eine Liste von Phonemen, die den aufgetrennten Phonemen ähnlich klingen, kann durch die Transkriptionskorrektur-Steuerungsroutine 106 erzeugt werden (nachstehend ausführlicher erläutert).
  • Ferner kann die Transkriptionskorrektur-Steuerungsroutine 106 eine Benutzeräußerung und Audiomaßzahlen 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. Ein Transkriptionsvertrauenspunktwert kann für die Transkription auf der Grundlage der erwarteten Antwort auf die Äußerung und der Audiomaßzahlen erzeugt werden. Ferner kann die Transkriptionskorrektur-Steuerungsroutine 106 die Transkription auf der Grundlage der Klingt-ähnlich-Liste (nachstehend ausführlicher erläutert). Es sollte beachtet werden, dass 1 die Transkriptionskorrektur-Steuerungsroutine 106 zwar als auf einer oder mehreren Datenverarbeitungseinheiten betriebsfähig zeigt, die Transkriptionskorrektur-Steuerungsroutine 106 bei einigen Ausführungsformen jedoch auf einer oder mehreren Datenverarbeitungseinheiten oder innerhalb eines Cloud-Computing-Systems betriebsfähig sein kann. Die Transkriptionskorrektur-Steuerungsroutine 106 kann einige vorstehend beschriebene Aktionen auf derselben Datenverarbeitungseinheit oder in unterschiedlichen Datenverarbeitungseinheiten durchführen.
  • Bei dem Datendepot 108 kann es sich um eine Datenbank handeln, die zum Speichern von Daten in der Lage ist, unter anderem und ohne auf diese beschränkt zu sein, von „Klingt ähnlich“-Listen, Phonemvertrauenspunktwerten, Transkriptionsvertrauenspunktwerten, Äußerungen und entsprechenden Audiomaßzahlen für einen bestimmten VA-Knoten. Es sollte beachtet werden, dass 1 das Datendepot 108 zwar als auf dem Server 102 befindlich zeigt, das Datendepot 108 bei einigen Ausführungsformen sich jedoch auf einer oder mehreren Datenverarbeitungseinheiten oder innerhalb eines Cloud-Computing-Systems befinden kann.
  • Bei dem Netzwerk 110 kann es sich zum Beispiel um ein lokales Netzwerk (local area network, LAN), ein Weitverkehrsnetzwerk (wide area network, WAN) wie z.B. das Internet oder um eine Kombination aus beiden handeln, und es kann kabelgebundene, kabellose und/oder lichtwellenleitergebundene Verbindungen umfassen. Im Allgemeinen kann es sich bei dem Netzwerk 110 um eine beliebige Kombination aus Verbindungen und Protokollen handeln, die Datenübertragung zwischen dem Server 102 und dem Client-Computer 112 unterstützen.
  • 2 ist ein Funktionsblockschema 200 einer Transkriptionskorrektur-Engine 106. Ein Ausdruckserkennungsmodul 202 und ein Phonemvergleichsmodul 204 sind als innerhalb der Transkriptionskorrektur-Engine 106 betriebsfähig gezeigt.
  • Bei dem Ausdruckserkennungsmodul 202 handelt es sich um ein Computermodul, das in der Lage ist, auf ihre Phoneme aufgegliederte Äußerungen sowie Audiomaßzahlen von dem Datendepot 108 zu empfangen oder abzurufen. Darüber hinaus kann das Ausdruckserkennungsmodul 202 auch in Phoneme aufgegliederte Echtzeit-Benutzeräußerungen und Audiomaßzahlen von dem ASR-Modul 104 empfangen. Bei einigen Ausführungsformen kann das Ausdruckserkennungsmodul 202 die Äußerungen mit hoher Häufigkeit aus historischen Audioprotokollen und ihre entsprechenden Ausdrücke für einen bestimmten Knoten eines VA erkennen. Ferner kann das Ausdruckserkennungsmodul 202 den Prozentsatz ermitteln, mit dem ein Ausdruck an einem bestimmten Knoten über einen Zeitraum hinweg verwendet wurde. Der Zeitraum kann je nach Konfiguration statisch oder dynamisch sein. Wenn zum Beispiel über einen bestimmten Monat hinweg ein Kundendienst-VA für ein Finanzinstitut Benutzern vier Aufforderungen bereitstellt, aus denen eine Auswahl zu treffen ist: 1) checking (Kontrolle), 2) savings (Rücklagen), 3) retirement (Ausbuchung) oder 4) Ioans (Darlehen). Das Ausdruckserkennungsmodul 202 kann ermitteln, welche der historischen aufgezeichneten Äußerungen jedem Ausdruck entspricht, und den Prozentsatz erzeugen, mit dem jeder Ausdruck durch einen Benutzer ausgewählt wird (z.B. checking 55 %, savings 25 %, retirement 10 % und loans 10 %). Darüber hinaus kann das Ausdruckserkennungsmodul 202 Äußerungen erkennen, die aufgrund schlechter Audiomaßzahlen, von Akzenten oder fehlerhafter Aussprache nicht exakt übereinstimmen (z.B. gibt ein Benutzer „refirement“ anstelle von „retirement“ oder „sabings“ anstelle von „savings“ an). Das Ausdruckserkennungsmodul 202 kann die Ausdrücke mit hoher Häufigkeit und Äußerungen erkennen, die den Ausdrücken entsprechen, und die Ausdrücke an das Phonemvergleichsmodul 204 senden.
  • Bei dem Phonemvergleichsmodul 204 kann es sich um ein Computermodul mit der Fähigkeit zum Analysieren von Phonemen handeln, die aus historischen Äußerungen und Echtzeit-Benutzeräußerungen extrahiert wurden. Bei einer Ausführungsform kann das Phonemvergleichsmodul die Ausdrücke und Phoneme für Äußerungen für einen VA-Knoten des Ausdruckserkennungsmoduls 202 empfangen oder abrufen. Ferner kann das Phonemvergleichsmodul 204 eine Klingt-ähnlich-Liste für die Phoneme der Äußerungen auf der Grundlage der Ausdrücke des VA-Knotens erzeugen. Zum Beispiel gibt es im Englischen 44 Phoneme. Das Phonemvergleichsmodul 204 kann die Phoneme eines Ausdrucks ermitteln und Phoneme finden, die diesem Ausdruck ähnlich sind, um eine „Klingt ähnlich“-Liste von Phonemen zu erzeugen. Bei einigen Ausführungsformen kann jedem Phonem auf der Liste ein Ähnlichkeitspunktwert zugewiesen werden. Der Ähnlichkeitspunktwert kann auf einer durch einen Menschen mit Anmerkungen versehenen Phonemliste oder auf einer Analyse der Ähnlichkeit eines Audiospektrogramms zwischen den beiden Phonemen beruhen. Bei einigen Ausführungsformen kann der Ähnlichkeitspunktwert ein regionales Dialektmerkmal enthalten, das auf einem Erkennen des Akzents des Benutzers beruht, der sich äußert.
  • Bei einigen Ausführungsformen kann das Phonemvergleichsmodul 204 von dem ASR-Modul 104 eine Echtzeit-Transkription einer Benutzeräußerung und die extrahierten Phoneme der Äußerung mit einem Transkriptionsvertrauenspunktwert unterhalb eines Schwellenwerts empfangen. Das Phonemvergleichsmodul 204 kann die Phoneme aus der Äußerung analysieren, um eine potenzielle „gute“ Transkription für die Echtzeit-Benutzeräußerung zu erzeugen. Bei einigen Ausführungsformen wird die Anzahl von Phonemen gegen die Anzahl von erwarteten Phonemen für einen erwarteten Ausdruck für den VA-Knoten geprüft. Ausdrücke mit zwei oder mehr Phonemen werden zurückgewiesen. Wenn zum Beispiel ein Benutzer „au-thor-i-za-tion“ zu sagen beabsichtigt und das ASR-Modul 104 dies als „of-her-i-say-shun“ transkribiert, würde das Phonemvergleichsmodul 204 verstehen, dass fünf Phoneme in der Äußerung vorliegen, und die Ausdrücke mit hoher Häufigkeit aus der Liste entfernen, die vier oder weniger Phoneme und 6 oder mehr Phoneme enthalten. Ferner können die verbliebenen Ausdrücke analysiert werden, um zu ermitteln, welche Phoneme übereinstimmen. Die Phoneme, die nicht übereinstimmen, werden mit den Phonemen aus der „Klingt ähnlich“-Liste für den erwarteten Ausdruck verglichen. Bei dem vorstehenden Beispiel würde es sich bei „i-say-shun“ um eine Übereinstimmung mit der Klingt-ähnlich-Liste handeln. Die verbliebenen beiden Phoneme „of” und „her“ würden mit den Phonemen verglichen werden, die in der Klingt-ähnlich-Liste ähnlich wie „authorization“ klingen. Bei diesem Beispiel steht „of“ in der Klingt-ähnlich-Liste für das Phonem und „au“. Jedoch steht „her“ nicht in der Klingt-ähnlich-Liste für das Phonem, das „thor“ entspricht. Beliebige Ausdrücke, die übereinstimmen, erhalten einen Phonemausrichtungspunktwert, und wenn der Phonemausrichtungspunktwert oberhalb eines Schwellenwerts liegt (vorgegeben oder auf der Grundlage von Audiomaßzahlen dynamisch), können die neu ausgerichteten Phoneme die ursprüngliche Transkription ersetzen. Ein Phonemausrichtungspunktwert kann berechnet werden, indem der Prozentsatz korrekt ausgerichteter Phoneme der ursprünglichen Transkription ermittelt wird und der Prozentsatz um den Klingt-ähnlich-Punktwert mit dem/den falsch ausgerichteten Phonem(en) berücksichtigt wird. Die neue Transkription kann zum Aktualisieren des ASR-Moduls 104 verwendet werden.
  • 3 ist ein Funktionsblockschema 300 des ASR-Moduls 104 gemäß einer Ausführungsform der Erfindung. Das ASR-Modul 104 besteht aus einer Sprachübersetzungseinheit 302, einer Sprachtranskriptionseinheit 304, einer Tokenisierungseinheit 306, einer Wortartmarkierungseinheit (POS-Markierungseinheit) (POS = part-of-speech) 308, einer Erkennungseinheit 310 für semantische Beziehungen und einer Erkennungseinheit 312 für syntaktische Beziehungen. Bei einigen Ausführungsformen kann es sich bei dem ASR-Modul 104 um ein neuronales Netz oder ein verborgenes Markowmodell oder einen Hybriden aus einem neuronalen Netz und einem verborgenen Markowmodell handeln, der 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.
  • Die Sprachübersetzungseinheit 302 kann Äußerungen von einem Benutzer empfangen oder abrufen. Die Äußerungen können in Echtzeit als Schallwellenmodell aufgezeichnet oder empfangen werden. Die Sprachübersetzungseinheit 302 kann zur weiteren Analyse das Wellenmodell in ein Audiospektrogramm umsetzen. Das Audiospektrogramm kann eine optische Darstellung der Dauer, Amplitude und Frequenz der Äußerungen in einer zweidimensionalen Darstellung bereitstellen. Die Sprachübersetzungseinheit 302 kann auf der Grundlage einer Analyse des Audiospektrogramms Phoneme ermitteln. Darüber hinaus kann das Spektrogramm in kleinere Zeitrahmen (z.B. 10 Millisekunden) aufgegliedert werden, um die Ermittlung von Phonemen aus der Äußerung zu verbessern.
  • Bei der Sprachtranskriptionseinheit 304 handelt es sich um ein Computermodul, das in der Lage ist, Text auf der Grundlage einer Analyse von Phonemen zu erzeugen, die von der Sprachübersetzungseinheit 302 empfangen oder abgerufen wurden. Einige Ausführungsformen der Erfindung können Eigenschaften haben, um ein Wort auf der Grundlage eines Vorhersagemodells zu ermitteln, wobei das (die) vorhergehende(n) Phonem(e) in der Vorhersage berücksichtigt wird (werden). Ferner kann die Sprachtranskriptionseinheit bei der Entstehung von Transkribierungstext Eingaben von der Tokenisierungseinheit 306, der POS-Markierungseinheit 308, der Erkennungseinheit 310 für semantische Beziehungen und der Erkennungseinheit 312 für syntaktische Beziehungen übernehmen. Die Sprachtranskriptionseinheit kann außerdem die Fähigkeit bereitstellen, auf der Grundlage der Audiomaßzahlen, die den Äußerungen entsprechen, der Transkription einen Transkriptionsvertrauenspunktwert zuzuweisen. Bei einigen Ausführungsformen kann es sich bei dem Transkriptionsvertrauenspunktwert um eine Bewertung des Signal-Rausch-Verhältnisses, der Hintergrundgeräusche, des Sprechverhältnisses, des Hochfrequenzverlusts, des Gleichstrom-Offsets, der Begrenzungsrate, des Sprechpegels und des Nicht-Sprechpegels handeln. Bei anderen Ausführungsformen kann der Vertrauenspunktwert kontextgesteuert sein, wobei der Punktwert auf der erwarteten Antwort für einen bestimmten VA-Knoten beruht. Ferner kann die erwartete Antwort darin bestehen, wie gut die Transkription mit den erwarteten Antworten übereinstimmt.
  • Bei einigen Ausführungsformen kann es sich bei der Tokenisierungseinheit 306 um ein Computermodul handeln, das eine lexikalische Analyse durchführt. Die Tokenisierungseinheit 306 kann eine Abfolge von Zeichen in eine Abfolge von Token umwandeln. Bei einem Token kann es sich um eine Zeichenkette handeln, die in einer Aufzeichnung enthalten und als aussagekräftiges Symbol kategorisiert ist. Ferner kann die Tokenisierungseinheit 306 bei einigen Ausführungsformen Wortgrenzen in einer Aufzeichnung erkennen und beliebigen Text innerhalb des Korpus in seine jeweiligen Komponententextelemente wie z.B. Wörter, Mehrfachwort-Token, Zahlen und Interpunktionszeichen zerlegen. Bei einigen Ausführungsformen kann die Tokenisierungseinheit 306 eine Zeichenkette empfangen, die Lexeme in der Zeichenkette erkennen und sie in Token kategorisieren.
  • Gemäß verschiedenen Ausführungsformen kann es sich bei der POS-Markierungseinheit 308 um ein Computermodul handeln, das ein Wort in einer Transkription zuweist, sodass es einer bestimmten Wortart entspricht. Die POS-Markierungseinheit 308 kann die Transkription der Äußerung analysieren und jedem Wort oder jedem Token eine Wortart zuweisen. Die POS-Markierungseinheit 308 kann auf der Grundlage der Definition des Wortes und des Kontextes des Wortes die Wortart ermitteln, zu der ein Wort gehört. Der Kontext eines Wortes kann auf seiner Beziehung zu benachbarten und verwandten Wörtern in einem Satzteil, einen Satz oder einem Absatz beruhen. Bei einigen Ausführungsformen kann der Kontext eines Wortes von einem oder mehreren zuvor analysierten Wörtern in dem Korpus abhängig sein. Zu Beispielen von Wortarten, die Wörtern zugewiesen werden können, gehören Substantive, Verben, Adjektive, Adverbien und dergleichen, ohne auf diese beschränkt zu sein. Zu Beispielen von anderen Wortartkategorien, die die POS-Markierungseinheit 308 zuweisen kann, gehören Adverbien des Komparativs und Superlativs, W-Adverbien, Konjunktionen, Bestimmungswörter, Negationspartikeln, Markierungen zur Besitzanzeige, Präpositionen, W-Pronomen und dergleichen, ohne auf diese beschränkt zu sein. Bei einigen Ausführungsformen kann die POS-Markierungseinheit 308 Token eines „ein/eine“-Wortes in einem Korpus mit Wortartkategorien markieren oder anderweitig mit Anmerkungen versehen. Bei einigen Ausführungsformen kann die POS-Markierungseinheit 308 Token oder Wörter eines Korpus markieren, die durch die Sprachtranskriptionseinheit 304 analysiert werden sollen.
  • Bei einigen Ausführungsformen kann es sich bei der Erkennungseinheit 310 für semantischen Beziehungen um ein Computermodul handeln, das so konfiguriert ist, dass es semantische Beziehungen von erkannten Subjekten (z.B. Wörter, Satzteile, Bilder usw.) in einem Korpus erkennt. Bei einigen Ausführungsformen kann die Erkennungseinheit 310 für semantische Beziehungen funktionale Abhängigkeiten zwischen Entitäten und andere semantische Beziehungen innerhalb der Transkription erkennen.
  • Gemäß verschiedenen Ausführungsformen kann es sich bei der Erkennungseinheit 312 für syntaktische Beziehungen um ein Computermodul handeln, das so konfiguriert sein kann, dass es syntaktische Beziehungen in einem aus Token aufgebauten Korpus erkennt. Die Erkennungseinheit 312 für syntaktische Beziehungen kann die grammatische Struktur von Sätzen ermitteln, zum Beispiel, welche Gruppen von Wörtern zu Satzteilen zugehörig sind und welches Wort das Subjekt oder Objekt eines Verbs ist. Die Erkennungseinheit 312 für syntaktische Beziehungen kann formaler Grammatik entsprechen.
  • 4 ist ein Flussdiagramm, das ein Verfahren 400 zum Erzeugen einer „Klingt ähnlich“-Liste bildlich darstellt. Bei 402 werden historische Äußerungen und die entsprechenden Audiomaßzahlen bei der Transkriptionskorrektur-Engine 106 empfangen.
  • Bei 404 erkennt die Transkriptionskorrektur-Engine 106 aus den historischen Äußerungen und den Audiomaßzahlen die Ausdrücke mit hoher Häufigkeit. Die Ausdrücke mit hoher Häufigkeit können durch das Ausdruckserkennungsmodul 202 über eine Analyse der Anzahl erkannt werden, wie oft der Ausdruck bei einem VA-Knoten in einem Zeitrahmen ausgewählt wurde. Ferner können bei einigen Ausführungsformen die Audiomaßzahlen Ausdruckserkennung bewertet werden, um zu ermitteln, ob der Ausdruck ausgewählt wurde, und wenn die Audiomaßzahlen für eine bestimmte Äußerung schlecht sind, kann die Äußerung von der endgültigen Analyse abgezogen werden.
  • Bei 406 kann das ASR-Modul 104 die erkannten Ausdrücke mit hoher Häufigkeit in die entsprechenden Phoneme zerlegen. Bei einigen Ausführungsformen bewertet das ASR-Modul 104 das Schallwellenmodell einer Äußerung, die zuvor aufgezeichnet wurde, und die Sprachübersetzungseinheit 302 wandelt das Schallwellenmodell in ein Audiospektrogramm um und isoliert die Phoneme aus dem Audiospektrogramm. Die Sprachtranskriptionseinheit 304 kann die isolierten Phoneme mit Eingaben aus der Tokenisierungseinheit 306, der POS-Markierungseinheit 308, der Erkennungseinheit 310 für semantische Beziehungen und der Erkennungseinheit 312 für syntaktische Beziehungen in Text umwandeln, wodurch sichergestellt wird, dass der transkribierte Text semantisch und syntaktisch korrekt ist.
  • Bei 408 erzeigt das Phonemvergleichsmodul 204 eine „Klingt ähnlich“-Liste für die Phoneme mit hoher Häufigkeit, die durch das ASR-Modul 104 transkribiert wurden. Ferner kann das Phonemvergleichsmodul 204 der Liste ähnlich klingender Phoneme für jedes Phonem aus den Ausdrücken mit hoher Häufigkeit einen Vertrauenspunktwert zuweisen.
  • 5 ist ein Flussdiagramm, das ein Verfahren 500 zum Korrigieren einer Transkription unter Verwendung einer Klingt-ähnlich-Liste bildlich darstellt. Bei 502 können durch das ASR-Modul 104 eine Äußerung und Audiomaßzahlen empfangen werden. Die Äußerung kann für einen bestimmten VA-Knoten oder innerhalb einer Offener-Dialog-Umgebung für einen VA erfolgen. Bei einigen Ausführungsformen kann die Äußerung innerhalb eines bestimmten Kontextes von einer automatisierten Kundendienstrufnummer erfolgen. Bei noch einer weiteren Ausführungsform kann die Äußerung aus einer Offener-Dialog-Umgebung stammen, bei der ein Betrieb des VA durch eine bestimmte Äußerung und einen bereits vorhandenen gegebenen Befehl oder durch eine in einem bestimmten Fachgebiet gestellte Frage ausgelöst wird.
  • Bei 504 kann das ASR-Modul 104 die empfangene Äußerung transkribieren. Bei einigen Ausführungsformen kann das ASR-Modul 104 die Äußerung in ihre Phoneme aufgliedern und den Text auf der Grundlage der Phoneme erzeugen. Bei einigen Ausführungsformen kann der Text unter Verwendung eines Vorhersagemodells erzeugt werden, wobei es sich bei dem Modell um ein tiefes neuronales Netz handelt.
  • Bei 506 kann das ASR-Modul 104 der Transkription der Äußerung einen Transkriptionsvertrauenspunktwert zuweisen. Bei einigen Ausführungsformen kann der Transkriptionsvertrauenspunktwert auf einer Bewertung der Audiomaßzahlen oder auf dem Kontext auf der Grundlage der erwarteten Antwort oder auf einer Kombination der beiden beruhen.
  • Bei 508 ermittelt die Transkription-Steuerungsroutine 106, ob der Transkriptionsvertrauenspunktwert oberhalb eines Schwellenwerts liegt. Der Schwellenwert kann statisch oder dynamisch sein. Wenn der Schwellenwert statisch ist, kann er durch einen Benutzer auf der Grundlage der Beurteilung durch den Benutzer oder auf der Grundlage der Bedürfnisse zu dem Zeitpunkt konfiguriert werden. Der Schwellenwert kann auf der Grundlage zahlreicher Faktoren, unter anderem zu dem Zeitpunkt verfügbare Datenverarbeitungsressourcen, Länge der Äußerungen, Nutzung des VA-Knotens zu dem Zeitpunkt des Empfangens der Äußerung usw., dynamisch konfiguriert werden. Wenn der Transkriptionsvertrauenspunktwert unterhalb eines Schwellenwerts liegt, wird die Transkription als „Fehlschlag“ betrachtet und zur weiteren Verarbeitung gesendet. Wenn der Vertrauenspunktwert oberhalb eines Schwellenwerts liegt, endet das Transkriptionsverfahren.
  • Bei 510 vergleicht das Phonemvergleichsmodul 204 die Phoneme in der „Fehlschlag“-Transkription mit Phonemen von Ausdrücken mit hoher Häufigkeit für einen bestimmten Knoten. Bei einigen Ausführungsformen kann das Phonemvergleichsmodul so konfiguriert sein, dass es eine Anzahl von Phonemen in der Transkription analysiert und ermittelt, welche Ausdrücke mit hoher Häufigkeit aus einem/einer dieselbe Anzahl von Phonemen enthalten. Ferner kann das Phonemvergleichsmodul 204 ermitteln, ob beliebige Phoneme in der Transkription mit den Phonemen in den Ausdrücken mit hoher Häufigkeit übereinstimmen. Phoneme aus beliebigen Ausdrücken mit hoher Häufigkeit, die nicht mit den Phonemen in der Transaktion übereinstimmen, können mit Phonemen aus einer „Klingt ähnlich“-Liste verglichen werden, um zu ermitteln, ob die Phoneme abgeglichen werden können. Darüber hinaus kann das Phonemvergleichsmodul 204 die Anzahl von abgeglichenen Phonemen und abgeglichenen „Klingt ähnlich“-Phonemen mit einem Punktwert versehen. Bei diesem Punktwert kann es sich um einen Prozentsatz von abgeglichenen Phonemen und einen Faktor von abgeglichenen „Klingt ähnlich“-Phonemen handeln.
  • Bei 512 wird die „Fehlschlag“-Transkription durch die Transkription ersetzt, die den abgeglichenen vornehmen entspricht, wenn der Punktwert abgeglichener Phoneme oberhalb eines Schwellenwerts (statisch oder dynamisch zugewiesen) liegt. Die neu entstandene Transkription kann zum Aktualisieren des ASR-Moduls 104 verwendet werden.
  • Bei 514 endet das Verfahren.
  • 6 stellt ein Computersystem 600, ein beispielhaftes Computersystem, das für den Server 102 steht, und das Datendepot 108 oder eine beliebige andere Datenverarbeitungseinheit innerhalb einer Ausführungsform der vorliegenden Erfindung bildlich dar. Der Computersystem 600 umfasst eine Datenübertragungsstruktur 12, die Datenübertragung zwischen (einem) Computerprozessor(en) 14, einem Speicher 16, einem Permanentspeicher 18, einem Netzwerkadapter 28 und (einer) Eingabe/Ausgabe-Schnittstelle(n) (E/A-Schnittstelle(n)) 26 bereitstellt. Die Datenübertragungsstruktur 12 kann mit einer beliebigen Architektur realisiert sein, die auf das Weiterleiten von Daten und/oder Steuerinformationen zwischen Prozessoren (beispielsweise Mikroprozessoren, Datenübertragungs- und Netzwerkprozessoren usw.) und einem Systemhauptspeicher, Peripherieeinheiten und beliebigen anderen Hardwarekomponenten innerhalb eines Systems ausgelegt ist. Zum Beispiel kann die Datenübertragungsstruktur 12 mit einem oder mehreren Bussen realisiert sein.
  • Das Computersystem 600 umfasst Prozessoren 14, einen Cache 22, einen Speicher 16, einen Netzwerkadapter 28, (eine) Eingabe/Ausgabe-Schnittstelle(n) (E/A-Schnittstelle(n)) 26 und eine Datenübertragungsstruktur 12. Die Datenübertragungsstruktur 12 stellt Datenübertragung zwischen dem Cache 22, dem Speicher 16, dem Permanentspeicher 18, dem Netzwerkadapter 28 und der (den) Eingabe/Ausgabe-Schnittstelle(n) (E/A-Schnittstelle(n)) 26 bereit. Die Datenübertragungsstruktur 12 kann mit einer beliebigen Architektur realisiert sein, die auf das Weiterleiten von Daten und/oder Steuerinformationen zwischen Prozessoren (beispielsweise Mikroprozessoren, Datenübertragungs- und Netzwerkprozessoren usw.) und einem Systemhauptspeicher, Peripherieeinheiten und beliebigen anderen Hardwarekomponenten innerhalb eines Systems ausgelegt ist. Zum Beispiel kann die Datenübertragungsstruktur 12 mit einem oder mehreren Bussen oder mit einem Kreuzschienenschalter realisiert sein.
  • Bei dem Speicher 16 und dem Permanentspeicher 18 handelt es sich um durch einen Computer lesbare Speichermedien. Bei dieser Ausführungsform umfasst der Speicher 16 einen Permanentspeicher 18, einen Direktzugriffsspeicher (RAM) 20, einen Cache 22 und ein Programmodul 24. Im Allgemeinen kann der Hauptspeicher 16 beliebige geeignete flüchtige oder nichtflüchtige, durch einen Computer lesbare Speichermedien umfassen. Bei dem Cache 22 handelt es sich um einen schnellen Speicher, der das Leistungsvermögen der Prozessoren 14 verbessert, indem darin Daten gehalten werden, auf die aus dem Hauptspeicher 16 zugegriffen wurde, sowie Daten in der Nähe von Daten, auf die zugegriffen wurde. Wie ferner bildlich dargestellt und nachfolgend beschrieben ist, kann der Speicher 16 mindestens eines der Programmmodule 24 enthalten, das so konfiguriert ist, dass die Funktionen von Ausführungsformen der Erfindung ausgeführt werden.
  • Das Programm/Dienstprogramm, das mindestens ein Programmmodul 24 enthält, kann als Beispiel und nicht als Einschränkung im Speicher 16 sowie in einem Betriebssystem, in einem oder mehreren Anwendungsprogrammen oder in anderen Programmmodulen und Programmdaten gespeichert sein. Jedes der Betriebssysteme, ein oder mehrere Anwendungsprogramme, andere Programmmodule und Programmdaten oder eine bestimmte Kombination davon kann bzw. können eine Realisierungsform einer Vernetzungsumgebung umfassen. Das Programmmodul 24 führt allgemein die Funktionen und/oder Methodiken von Ausführungsformen der Erfindung wie hierin beschrieben aus.
  • Programmanweisungen und Daten, die zum praktischen Umsetzen von Ausführungsformen der vorliegenden Erfindung verwendet werden, können im Permanentspeicher 18 und im Hauptspeicher 16 gespeichert sein, um durch einen oder mehrere der jeweiligen Prozessoren 14 über den Cache 22 ausgeführt zu werden. Bei einer Ausführungsform umfasst der Permanentspeicher 18 ein magnetisches Festplattenlaufwerk. Alternativ oder zusätzlich zu einem magnetischen Festplattenlaufwerk kann der Permanentspeicher 18 eine Halbleiterspeicherplatte (solid state hard drive), eine Halbleiterspeichereinheit, einen Nur-Lese-Speicher (read-only memory, ROM), einen löschbaren programmierbaren Nur-Lese-Speicher (erasable programmable read-only memory, EPROM), einen Flash-Speicher oder beliebige andere durch einen Computer lesbare Speichermedien enthalten, die in der Lage sind, Programmanweisungen oder digitale Informationen zu speichern.
  • Die durch den Permanentspeicher 18 verwendeten Medien können außerdem wechselbar sein. Zum Beispiel kann als Permanentspeicher 18 ein wechselbares Festplattenlaufwerk verwendet werden. Zu anderen Beispielen gehören optische und magnetische Platten, USB-Sticks und Smart-Cards, die in ein Laufwerk zur Übertragung auf ein weiteres, durch einen Computer lesbares Speichermedium eingeführt werden, das ebenfalls Bestandteil des Permanentspeichers 18 ist.
  • Der Netzwerkadapter 28 stellt bei diesen Beispielen Datenübertragung mit anderen Datenverarbeitungssystemen oder-einheiten bereit. Bei diesen Beispielen umfasst der Netzwerkadapter 28 eine oder mehrere Netzwerkschnittstellenkarten. Der Netzwerkadapter 28 kann Datenübertragung über die Verwendung von entweder physischen Datenübertragungsverbindungen oder kabellosen Datenübertragungsverbindungen oder beidem bereitstellen. Programmanweisungen und Daten, die zum praktischen Umsetzen von Ausführungsformen der vorliegenden Erfindung verwendet werden, können über den Netzwerkadapter 28 auf den Permanentspeicher 18 heruntergeladen werden.
  • Die E/A-Schnittstelle(n) 26 ermöglicht (ermöglichen) die Eingabe und Ausgabe von Daten mit anderen Einheiten, die mit jedem Computersystem verbunden sein können. Zum Beispiel kann die E/A-Schnittstelle 26 eine Verbindung zu externen Einheiten 30 wie zum Beispiel einer Tastatur, einem Tastenfeld, einem Touchscreen und/oder einer anderen geeigneten Eingabeeinheit bereitstellen. Zu externen Einheiten 30 können außerdem transportable, durch einen Computer lesbare Speichermedien wie z.B. USB-Sticks, transportable optische oder magnetische Platten und Speicherkarten gehören. Software und Daten, die zum praktischen Umsetzen von Ausführungsformen der vorliegenden Erfindung verwendet werden, können auf derartigen transportablen, durch einen Computer lesbaren Speichermedien gespeichert sein und über die E/A-Schnittstelle(n) 26 in den Permanentspeicher 18 geladen werden. Die E/A-Schnittstelle(n) 26 stellt/stellen außerdem eine Verbindung zu der Anzeige 32 her.
  • Die Anzeige 32 stellt einen Mechanismus bereit, um einem Benutzer Daten anzuzeigen, und es kann sich dabei zum Beispiel um einen Computermonitor oder eine virtuelle grafische Benutzeroberfläche handeln.
  • Die hierin beschriebenen Komponenten sind auf der Grundlage der Anwendung bezeichnet, für die sie bei einer bestimmten Ausführungsform der Erfindung realisiert sind. Es sollte jedoch klar sein, dass hierin eine bestimmte Komponentenbenennung lediglich der Vereinfachung dient und die Erfindung daher nicht auf die Verwendung ausschließlich in einer bestimmten Anwendung begrenzt sein soll, die durch eine derartige Benennung bezeichnet oder stillschweigend darin eingeschlossen ist.
  • Bei der vorliegenden Erfindung kann es sich um ein System, ein Verfahren und/oder ein Computerprogrammprodukt handeln. Das Computerprogrammprodukt kann (ein) durch einen Computer lesbare(s) Speichermedium (oder -medien) enthalten, auf dem/denen durch einen Computer lesbare Programmanweisungen gespeichert ist/sind, um einen Prozessor zu veranlassen, Aspekte der vorliegenden Erfindung auszuführen.
  • Bei dem durch einen Computer lesbaren Speichermedium kann es sich um eine materielle Einheit handeln, auf der Anweisungen zur Verwendung durch eine Einheit zur Ausführung von Anweisungen aufbewahrt und gespeichert sein können. Bei dem durch einen Computer lesbaren Speichermedium kann es sich zum Beispiel, ohne auf diese beschränkt zu sein, um eine elektronische Speichereinheit, eine magnetische Speichereinheit, eine optische Speichereinheit, eine elektromagnetische Speichereinheit, eine Halbleiterspeichereinheit oder eine beliebige geeignete Kombination des Vorstehenden handeln. Eine nicht erschöpfende Liste genauerer Beispiele des durch einen Computer lesbaren Speichermediums umfasst Folgendes: eine transportable Computerdiskette, eine Festplatte, einen Direktzugriffsspeicher (RAM), einen Nur-Lese-Speicher (ROM), einen löschbaren programmierbaren Nur-Lese-Speicher (EPROM oder Flash-Speicher), einen statischen Direktzugriffsspeicher (SRAM), einen transportablen Nur-Lese-Speicher in Form einer Compact Disc (CD-ROM), eine Digital Versatile Disc (DVD), einen Speicherstick, eine Diskette, eine mechanisch codierte Einheit wie zum Beispiel Lochkarten oder erhöhte Strukturen in einer Rille mit darauf aufgezeichneten Anweisungen oder beliebige geeignete Kombinationen des Vorstehenden. Ein durch einen Computer lesbares Speichermedium im hierin verwendeten Sinne ist nicht so auszulegen, dass es sich dabei um flüchtige Signale an sich handelt, beispielsweise um Funkwellen oder sich frei ausbreitende elektromagnetische Wellen, um elektromagnetische Wellen, die sich durch einen Hohlleiter oder andere Übertragungsmedien ausbreiten (z.B. ein Lichtwellenleiterkabel durchlaufende Lichtimpulse) oder um elektrische Signale, die über ein Kabel übertragen werden.
  • Hierin beschriebene, durch einen Computer lesbare Programmanweisungen können über ein Netzwerk, zum Beispiel das Internet, ein lokales Netzwerk ein Weitverkehrsnetzwerk und/oder ein kabelloses Netzwerk von einem durch einen Computer lesbaren Speichermedium auf betreffende Datenverarbeitungs-/Verarbeitungseinheiten oder auf einen externen Computer oder eine externe Speichereinheit heruntergeladen werden. Das Netzwerk kann Kupferübertragungskabel, Lichtwellenübertragungsleiter, kabellose Übertragung, Router, Firewalls, Switches, Gateway-Computer und/oder Edge-Server aufweisen. Eine Netzwerkadapterkarte oder eine Netzwerkschnittstelle in der Datenverarbeitungs-/Verarbeitungseinheit empfängt durch einen Computer lesbare Programmanweisungen aus dem Netzwerk und leitet die durch einen Computer lesbaren Programmanweisungen zur Speicherung in einem durch einen Computer lesbaren
  • Speichermedium innerhalb der jeweiligen Datenverarbeitungs-/Verarbeitungseinheit weiter.
  • Durch einen Computer lesbare Programmanweisungen zum Ausführen von Operationen der vorliegenden Erfindung können Assembleranweisungen, ISA-Anweisungen (ISA = Instruction Set Architecture), Maschinenanweisungen, maschinenabhängige Anweisungen, Mikrocode, Firmware-Anweisungen, Daten zum Setzen von Zuständen oder entweder Quellcode oder Objektcode sein, die in einer beliebigen Kombination aus einer oder mehreren Programmiersprachen geschrieben sind, zu denen eine objektorientierte Programmiersprache wie beispielsweise Smalltalk, C++ oder Ähnliches und herkömmliche prozedurale Programmiersprachen wie beispielsweise die Programmiersprache „C“ oder ähnliche Programmiersprachen gehören. Die durch einen Computer lesbaren Programmanweisungen können vollständig auf dem Computer des Benutzers, teilweise auf dem Computer des Benutzers, als eigenständiges Softwarepaket, 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. Bei dem letztgenannten Szenario kann der entfernt angeordnete Computer mit dem Computer des Benutzers über eine beliebige Art von Netzwerk verbunden sein, unter anderem über ein lokales Netzwerk (Local Area Network, LAN) oder über ein Weitverkehrsnetzwerk (Wide Area Network, WAN), oder die Verbindung kann zu einem externen Computer hergestellt werden (beispielsweise über das Internet unter Nutzung eines Internetdienstanbieters (Internet Service Provider)). Bei einigen Ausführungsformen können elektronische Schaltungen, zu denen beispielsweise programmierbare Logikschaltungen, vor Ort programmierbare Gatteranordnungen (Field-Programmable Gate Arrays, FPGA) oder programmierbare Logik-Arrays (PLA) gehören, die durch einen Computer lesbaren Programmanweisungen ausführen, indem Zustandsinformationen der durch einen Computer lesbaren Programmanweisungen genutzt werden, um die elektronische Schaltung zu personalisieren, sodass Aspekte der vorliegenden Erfindung durchgeführt werden.
  • Im vorliegenden Dokument sind Aspekte der vorliegenden Erfindung unter Bezugnahme auf Ablaufpläne und/oder Blockschemata von Verfahren, Vorrichtungen (Systemen) und Computerprogrammprodukten gemäß Ausführungsformen der Erfindung beschrieben. Es versteht sich, dass jeder Block der Flussdiagramme und/oder der Blockschemata und Kombinationen von Blöcken in den Flussdiagrammen und/oder Blockschemata mit Hilfe von durch einen Computer lesbaren Programmanweisungen realisiert werden kann bzw. können.
  • Diese durch einen Computer lesbaren Programmanweisungen können einem Prozessor eines Universalcomputers, eines Spezialcomputers oder anderer programmierbaren Datenverarbeitungsvorrichtungen bereitgestellt werden, um eine Maschine zu erzeugen, sodass die Anweisungen, die über den Prozessor des Computers oder anderer programmierbarer Datenverarbeitungsvorrichtungen ausgeführt werden, Mittel schaffen, um die in einem Block bzw. in den Blöcken des Flussdiagramms bzw. der Flussdiagramme und/oder des Blockschemas bzw. der Blockschemata angegebenen Funktionen/Aktionen zu realisieren. Diese durch einen Computer lesbaren Programmanweisungen können ebenfalls in einem durch einen Computer lesbaren Medium gespeichert sein, das einen Computer, andere programmierbare Datenverarbeitungsvorrichtungen oder andere Einheiten anweisen kann, in einer bestimmten Weise zu funktionieren, sodass das durch einen Computer lesbare Medium mit darauf gespeicherten Anweisungen ein Erzeugnis aufweist, das Anweisungen enthält, die die in einem Block bzw. in den Blöcken der Flussdiagramme und/oder der Blockschemata angegebene Funktion/Aktion realisieren.
  • Die durch einen Computer lesbaren Programmanweisungen können auch in einen Computer, in andere programmierbare Datenverarbeitungsvorrichtungen oder in andere Einheiten geladen werden, um zu bewirken, dass auf dem Computer, auf anderen programmierbaren Vorrichtungen oder anderen Einheiten eine Reihe von Operationen ausgeführt wird, um einen mittels Computer realisierten Prozess zu schaffen, sodass die Anweisungen, die auf dem Computer, auf anderen programmierbaren Vorrichtungen oder Einheiten ausgeführt werden, die in einem Block bzw. in den Blöcken der Flussdiagramme und/oder der Blockschemata angegebenen Funktionen/Aktionen realisieren.
  • Die Flussdiagramme und Blockschemata in den Figuren veranschaulichen die Architektur, Funktionalität und Wirkungsweise möglicher Realisierungsformen von Systemen, Verfahren und Computerprogrammprodukten gemäß verschiedenen Ausführungsformen der vorliegenden Erfindung. In diesem Zusammenhang kann jeder Block in den Flussdiagrammen bzw. in den Blockschemata ein Modul, ein Segment oder einen Abschnitt von Anweisungen darstellen, das bzw. der eine oder mehrere ausführbare Anweisungen zum Realisieren der angegebenen Logikfunktion bzw. Logikfunktionen aufweist. Bei einigen alternativen Ausführungen können die in dem Block angegebenen Funktionen in einer anderen Reihenfolge als in den Figuren angegeben stattfinden. Beispielsweise können zwei hintereinander aufgeführte Blöcke tatsächlich im Wesentlichen gleichzeitig ausgeführt werden, oder die Blöcke können je nach der mit den Blöcken verbundenen Funktionalität manchmal in umgekehrter Reihenfolge ausgeführt werden. Darüber hinaus ist anzumerken, dass jeder Block der dargestellten Blockschemata und/oder Flussdiagramme sowie Kombinationen von Blöcken in den dargestellten Blockschemata und/oder Flussdiagrammen mit Hilfe zweckgebundener hardwaregestützter Systeme zum Ausführen der angegebenen Funktionen bzw. Aktionen oder mit Hilfe von Kombinationen aus zweckgebundener Hardware und zweckgebundenen Computeranweisungen realisiert werden kann bzw. können.
  • Es versteht sich, dass diese Offenbarung zwar eine ausführliche Beschreibung des Cloud-Computing enthält, die Realisierung der hierin vorgestellten Lehren jedoch nicht auf eine Cloud-Computing-Umgebung beschränkt ist. Vielmehr können Ausführungsformen der vorliegenden Erfindung in Verbindung mit einer beliebigen anderen Art von Datenverarbeitungsumgebung realisiert werden, die gegenwärtig bekannt ist oder in Zukunft entwickelt wird.
  • Bei Cloud-Computing handelt es sich um ein Modell zur Bereitstellung von Diensten, um einen praktischen und bei Bedarf verfügbaren Netzwerkzugriff auf ein gemeinsam genutztes Reservoir konfigurierbarer Datenverarbeitungsressourcen (z.B. Netzwerke, Netzwerkbandbreite, Server, Verarbeitung, Hauptspeicher, Speicher, Anwendungen, virtuelle Maschinen und Dienste) zu ermöglichen, die bei minimalem Verwaltungsaufwand oder minimaler Interaktion mit einem Anbieter des Dienstes schnell bereitgestellt und freigegeben werden können. Dieses Cloud-Modell kann mindestens fünf Eigenschaften, mindestens drei Dienstmodelle und mindestens vier Einsatzmodelle umfassen.
  • Bei den Eigenschaften handelt es sich um die folgenden:
  • On-demand Self Service (Selbstzuweisung bei Bedarf): Ein Cloud-Kunde kann sich einseitig Datenverarbeitungsfunktionen wie zum Beispiel Serverzeit und Netzwerkspeicher dem Bedarf entsprechend automatisch bereitstellen ohne dass eine Interaktion von Menschen mit dem Anbieter des Dienstes erforderlich ist.
  • Broad Network Access (umfassender Netzwerkzugriff): Es stehen Funktionen über ein Netzwerk zur Verfügung, auf die der Zugriff über Standardmechanismen erfolgt, die die Verwendung durch heterogene Plattformen Thin- oder Thick-Client-Plattformen (z.B. Mobiltelefone, Notebook-Computer und PDAs) unterstützen.
  • Resource Pooling (Ressourcenbündelung): Die Datenverarbeitungsressourcen des Anbieters werden gebündelt, um mehrere Kunden unter Verwendung eines Mehrfachnutzermodells mit unterschiedlichen physischen und virtuellen Ressourcen zu bedienen, die entsprechend dem Bedarf dynamisch zugewiesen und neu zugewiesen werden. Es besteht eine gefühlte Standortunabhängigkeit in der Weise, dass der Kunde im Allgemeinen keine Kontrolle oder Kenntnis über den genauen Standort der bereitgestellten Ressourcen hat, aber möglicherweise in der Lage ist, den Standort auf einer höheren Abstraktionsebene (z.B. Land, Bundesstaat oder Datenverarbeitungszentrum) anzugeben.
  • Rapid Elasticity (rasche Elastizität): Funktionen können rasch und elastisch bereitgestellt werden, in einigen Fällen automatisch, um den Funktionsumfang schnell nach oben anzupassen, und schnell freigegeben werden, um den Funktionsumfang schnell nach unten anzupassen. Für den Kunden entsteht oftmals der Eindruck, dass die zum Bereitstellen verfügbaren Funktionen unbegrenzt sind und jederzeit in jeder beliebigen Menge gekauft werden können.
  • Measured Service (bemessener Dienst): Cloud-Systeme steuern und optimieren automatisch die Ressourcenverwendung durch Nutzung einer Bemessungsfunktion auf einer bestimmten Abstraktionsebene, die für die Art des Dienstes geeignet ist (z.B. Speicher, Verarbeitung, Bandbreite und aktive Benutzerkonten). Die Ressourcennutzung kann überwacht, gesteuert und gemeldet werden, sodass Transparenz sowohl für den Anbieter als auch den Kunden des genutzten Dienstes besteht.
  • Bei den Dienstmodellen handelt es sich um die folgenden:
  • Software as a Service (SaaS) (Software als Dienst): Die dem Kunden bereitgestellte Funktion besteht darin, die auf einer Cloud-Infrastruktur ausgeführten Anwendungen des Anbieters zu nutzen. Die Anwendungen sind von verschiedenen Client-Einheiten aus über eine Thin-Client-Schnittstelle wie z.B. über einen Web-Browser (z.B. auf dem Web beruhende eMail) zugänglich. Der Kunde verwaltet oder steuert die zugrunde liegende Cloud-Infrastruktur, unter anderem Netzwerke, Server, Betriebssysteme, Speicherplatz oder sogar einzelne Anwendungsfähigkeiten, nicht, abgesehen von der möglichen Ausnahme eingeschränkter benutzerspezifischer Konfigurationseinstellungen von Anwendungen.
  • Platform as a Service (PaaS) (Plattform als Dienst): Die dem Kunden bereitgestellte Funktion besteht darin, auf der Cloud-Infrastruktur vom Kunden erzeugte oder erworbene Anwendungen einzusetzen, die unter Verwendung von Programmiersprachen und Programmierwerkzeugen erzeugt wurden, die durch den Anbieter unterstützt werden. Der Kunde verwaltet oder steuert die zugrunde liegende Cloud-Infrastruktur, unter anderem Netzwerke, Server, Betriebssysteme oder Speicherplatz, nicht, hat aber die Kontrolle über die eingesetzten Anwendungen und möglicherweise über Konfigurationen der Hosting-Umgebung der Anwendungen.
  • Infrastructure as a Service (laaS) (Infrastruktur als Dienst): Die dem Kunden bereitgestellte Funktion besteht darin, Verarbeitung, Speicherplatz, Netzwerke und andere grundlegende Datenverarbeitungsressourcen bereitzustellen, wobei der Kunde beliebige Software einsetzen und ausführen kann, zu der Betriebssysteme und Anwendungen gehören können. Der Kunde verwaltet oder steuert die zugrunde liegende Cloud-Infrastruktur nicht, hat aber die Kontrolle über Betriebssysteme, Speicherplatz sowie eingesetzte Anwendungen und möglicherweise eine eingeschränkte Kontrolle über ausgewählte Vernetzungskomponenten (z.B. Host-Firewalls).
  • Bei den Einsatzmodellen handelt es sich um die folgenden:
  • Private Cloud (private Cloud): Die Cloud-Infrastruktur wird ausschließlich für eine Organisation betrieben. Sie kann durch die Organisation oder einen Dritten verwaltet werden und in den Räumen der Organisation oder außerhalb davon vorhanden sein.
  • Community Cloud (Community-Cloud): Die Cloud-Infrastruktur wird von mehreren Organisationen genutzt und unterstützt eine bestimmte Benutzergemeinschaft, die gemeinsame Interessen hat (z.B. Gesichtspunkte im Zusammenhang mit einer Aufgabe, mit Sicherheitsanforderungen, Richtlinien und mit der Einhaltung von Gesetzen und Vorschriften). Sie kann durch die Organisationen oder einen Dritten verwaltet werden und in den Räumen der Organisation oder außerhalb davon vorhanden sein.
  • Public Cloud (öffentliche Cloud): Die Cloud-Infrastruktur wird der allgemeinen Öffentlichkeit oder einer großen Gruppe in einem Industriezweig zur Verfügung gestellt und ist Eigentum einer Organisation, die Cloud-Dienste verkauft.
  • Hybrid cloud (Hybrid-Cloud): Bei der Cloud-Infrastruktur handelt es sich um eine Mischung aus zwei oder mehreren Clouds (Private Cloud, Community Cloud oder Public Cloud), die eigenständige Entitäten bleiben, aber über eine standardisierte oder proprietäre Technologie miteinander verbunden sind, die die Portierbarkeit von Daten und Anwendungen ermöglicht (z.B. Cloud-Zielgruppenverteilung (Cloud Bursting) zum Lastausgleich zwischen Clouds).
  • Eine Cloud-Computing-Umgebung ist dienstorientiert, wobei der Schwerpunkt auf Zustandsunabhängigkeit, geringer Kopplung, Modularität und semantischer Interoperabilität liegt. Im Mittelpunkt des Cloud-Computing steht eine Infrastruktur, die ein Netzwerk aus untereinander verbundenen Knoten umfasst.
  • 7 ist ein Blockschema, das eine Cloud-Computing-Umgebung 50 gemäß Ausführungsformen der vorliegenden Erfindung bildlich darstellt. Die Cloud-Computing-Umgebung 50 umfasst einen oder mehrere Cloud-Computing-Knoten 10, mit denen durch Cloud-Kunden verwendete lokale Datenverarbeitungseinheiten wie zum Beispiel ein Personal Digital Assistant (PDA) oder Mobiltelefon 54A, ein Desktop-Computer 54B, ein Notebook-Computer 54C und/oder ein Automobil-Computersystem 54N Daten austauschen können. Die Knoten 10 können untereinander Daten austauschen. Sie können physisch oder virtuell in einem oder mehreren Netzwerken wie zum Beispiel in einer hierin oben beschriebenen Private Cloud, Community Cloud, Public Cloud oder Hybrid Cloud oder in einer Kombination davon gruppiert sein (nicht gezeigt). Dies ermöglicht der Cloud-Computing-Umgebung 50, Infrastruktur, Plattformen und/oder Software als Dienste zu bieten, für die ein Cloud-Kunde keine Ressourcen auf einer lokalen Datenverarbeitungseinheit zu verwalten braucht. Es versteht sich, 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 von Netzwerk und/oder über eine beliebige Art von Verbindung, die über ein Netzwerk aufgerufen werden kann (z.B. unter Verwendung eines Webbrowsers), mit einer beliebigen Art von computergestützter Einheit Daten austauschen können.
  • 8 ist ein Blockschema, das einen Satz von funktionalen Abstraktionsmodellschichten bildlich darstellt, die durch eine Cloud-Computing-Umgebung 50 bereitgestellt werden, die gemäß Ausführungsformen der vorliegenden Erfindung in 6 bildlich darstellt ist. 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 bildlich dargestellt ist, werden die folgenden Schichten und entsprechenden Funktionen bereitgestellt:
  • Eine Hardware- und Softwareschicht 60 umfasst Hardware- und Softwarekomponenten. Zu Beispielen von Hardwarekomponenten gehören:
    • Großrechner 61; auf der RISC-Architektur (RISC = Reduced Instruction Set Computer) beruhende Server 62; Server 63; Blade-Server 64; Speichereinheiten 65; und Netzwerke und Vernetzungskomponenten 66. Bei einigen Ausführungsformen umfassen Softwarekomponenten eine Netzwerk-Anwendungsserversoftware 67 und eine Datenbanksoftware 68.
  • Eine Virtualisierungsschicht 70 stellt eine Abstraktionsschicht bereit, von der aus die folgenden Beispiele von virtuellen Einheiten bereitgestellt sein können: virtuelle Server 71; virtueller Speicher 72; virtuelle Netzwerke 73, unter anderem virtuelle private Netzwerke; virtuelle Anwendungen und Betriebssysteme 74; und virtuelle Clients 75.
  • Bei einem Beispiel kann eine Verwaltungsschicht 80 die nachstehend beschriebenen Funktionen bereitstellen. Eine Ressourcenbereitstellung 81 stellt die dynamische Beschaffung von Datenverarbeitungsressourcen und von anderen Ressourcen bereit, die genutzt werden, um Aufgaben innerhalb der Cloud-Computing-Umgebung durchzuführen. Eine Gebührenerfassung und Preisberechnung 82 stellt eine Kostenverfolgung bereit, während Ressourcen innerhalb der Cloud-Computing-Umgebung genutzt werden, sowie eine Abrechnung und Fakturierung der Inanspruchnahme dieser Ressourcen. Bei einem Beispiel können diese Ressourcen Anwendungssoftwarelizenzen umfassen. Eine Sicherheit stellt eine Identitätsüberprüfung für Cloud-Kunden und Aufgaben sowie einen Schutz für Daten und andere Ressourcen bereit. Ein Benutzerportal 83 stellt Kunden und Systemadministratoren einen Zugriff auf die Cloud-Computing-Umgebung bereit. Eine Dienstgüteverwaltung (Service Level Management) 84 stellt eine Zuordnung und Verwaltung von Cloud-Computing-Ressourcen bereit, sodass die jeweils erforderliche Dienstgüte erreicht wird. Eine Planung und Erfüllung von Dienstgütevereinbarungen 85 (Service Level Agreement (SLA), Servicevertrag) stellt die Vorausplanung für und die Beschaffung von Cloud-Computing-Ressourcen bereit, für die auf der Grundlage eines SLA zukünftige Anforderungen erwartet werden.
  • Eine Betriebslastschicht 90 stellt Beispiele von Funktionalitäten bereit, für die die Cloud-Computing-Umgebung genutzt werden kann. Zu Beispielen von Betriebslasten und Funktionen, die von dieser Schicht aus bereitgestellt werden können, gehören: Zuordnung und Navigation 91; Softwareentwicklung und -verwaltung 92 während des Lebenszyklus; Bereitstellung 93 von Schulungen in virtuellen Schulungsräumen; Verarbeitung 94 von Datenanalysen; Transaktionsverarbeitung 95; und Korrektur 96 von Spracherkennungstranskription.
  • Die Beschreibungen der verschiedenen Ausführungsformen der vorliegenden Erfindung sollen der Veranschaulichung dienen, sind jedoch nicht als erschöpfend oder auf die offenbarten Ausführungsformen beschränkt gedacht. Für Fachleute sind viele Modifikationen und Variationen denkbar, ohne dass diese eine Abweichung vom Schutzumfang und Grundgedanken der Erfindung darstellen würden. Die hierin verwendete Terminologie wurde gewählt, um die Grundgedanken der Ausführungsform, die praktische Anwendung bzw. die technische Verbesserung gegenüber den auf dem Markt vorgefundenen Technologien auf bestmögliche Weise zu erläutern bzw. anderen mit entsprechenden Fachkenntnissen das Verständnis der hierin offenbarten Ausführungsformen zu ermöglichen.
  • ZITATE ENTHALTEN IN DER BESCHREIBUNG
  • Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.
  • Zitierte Nicht-Patentliteratur
    • On-demand Self Service (Selbstzuweisung bei Bedarf) [0060]
    • Bereitstellung 93 von Schulungen in virtuellen Schulungsräumen; Verarbeitung 94 von Datenanalysen; Transaktionsverarbeitung 95 [0080]

Claims (20)

  1. Mittels Computer realisiertes Verfahren zum Trainieren eines Modells zum Verbessern von Spracherkennung, wobei das mittels Computer realisierten Verfahren aufweist: Empfangen, durch einen oder mehrere Prozessoren, einer Historie von Äußerungen und entsprechenden Audiomaßzahlen für die Äußerungen; und Erzeugen, durch den einen oder mehrere Prozessoren, einer Klingt-ähnlich-Liste für mindestens eine Äußerung auf der Grundlage der Historie von Äußerungen und der Audiomaßzahlen für die Äußerungen.
  2. Mittels Computer realisiertes Verfahren nach Anspruch 1, wobei die Audiomaßzahlen die Häufigkeit einer Äußerung und die Häufigkeit eines oder mehrerer Ausdrücke kennzeichnen, die der Äußerung entsprechen.
  3. Mittels Computer realisiertes Verfahren nach Anspruch 1, das ferner aufweist: Umwandeln, durch den einen oder mehrere Prozessoren, der mindestens einen Äußerung in Äußerungsphoneme, wobei das Umwandeln durch ein Spracherkennungsmodell auf der Grundlage eines tiefen neuronalen Netzes durchgeführt wird.
  4. Mittels Computer realisiertes Verfahren nach Anspruch 3, das ferner aufweist: Umwandeln, durch den einen oder mehrere Prozessoren, des einen oder mehrere Ausdrücke, die der Äußerung entsprechen, in mindestens ein Phonem.
  5. Mittels Computer realisiertes Verfahren nach Anspruch 4, das ferner aufweist: Zuweisen, durch den einen oder mehrere Prozessoren, eines Klingt-ähnlich-Werts zu den Ausdrucksphonemen, der den Äußerungsphonemen entspricht.
  6. Mittels Computer realisiertes Verfahren nach Anspruch 1, wobei die Historie von Äußerungen von einem virtuellen Assistenten stammt.
  7. Mittels Computer realisiertes Verfahren nach Anspruch 1, das ferner aufweist: Speichern, durch den einen oder mehrere Prozessoren, des entsprechenden Äußerungsphonems und der Ausdrucksphoneme in einem Datendepot, wobei es sich bei dem Äußerungsphonem und den Ausdrucksphonemen um die Klingt-ähnlich-Liste handelt.
  8. Computersystem zum Verbessern von Spracherkennungstranskriptionen, wobei das System aufweist: einen oder mehrere Computerprozessoren; ein oder mehrere durch einen Computer lesbare Speichermedien; Computer Programmanweisungen zum Empfangen einer Historie von Äußerungen und entsprechenden Audiomaßzahlen für die Äußerungen; und Erzeugen einer Klingt-ähnlich-Liste für mindestens eine Äußerung auf der Grundlage der Historie von Äußerungen und der Audiomaßzahlen für die Äußerungen.
  9. Computersystem nach Anspruch 8, wobei die Audiomaßzahlen die Häufigkeit einer Äußerung und die Häufigkeit eines oder mehrerer Ausdrücke kennzeichnen, die der Äußerung entsprechen.
  10. Computersystem nach Anspruch 9, das Anweisung aufweist zum: Umwandeln der mindestens einen Äußerung in Äußerungsphoneme, wobei das Umwandeln durch ein Spracherkennungsmodell auf der Grundlage eines tiefen neuronalen Netzes durchgeführt wird.
  11. Computersystem nach Anspruch 8, das Anweisung aufweist zum: Umwandeln des einen oder mehrere Ausdrücke, die der Äußerung entsprechen, in mindestens ein Phonem.
  12. Computersystem nach Anspruch 11, das Anweisung aufweist zum: Zuweisen eines Klingt-ähnlich-Werts zu den Ausdrucksphonemen, der den Äußerungsphonemen entspricht.
  13. Computersystem nach Anspruch 8, wobei die Historie von Äußerungen von einem virtuellen Assistenten stammt.
  14. Computersystem nach Anspruch 8, wobei: durch den einen oder mehrere Prozessoren das entsprechende Äußerungsphonem und die Ausdrucksphoneme in einem Datendepot gespeichert werden, wobei es sich bei dem Äußerungsphonem und den Ausdrucksphonemen um die Klingt-ähnlich-Liste handelt.
  15. Computerprogrammprodukt zum Verbessern von Spracherkennungstranskriptionen, wobei das Computerprogrammprodukt ein durch einen Computer lesbares Speichermedium und auf dem durch einen Computer lesbaren Speichermedium geordnete Programmanweisungen aufweist, wobei die Programmanweisungen Anweisungen umfassen zum: Empfangen einer Historie von Äußerungen und von entsprechenden Audiomaßzahlen für die Äußerungen; und Erzeugen einer Klingt-ähnlich-Liste für mindestens eine Äußerung auf der Grundlage der Historie von Äußerungen und der Audiomaßzahlen für die Äußerungen.
  16. Computerprogrammprodukt nach Anspruch 15, wobei die Audiomaßzahlen die Häufigkeit einer Äußerung und die Häufigkeit eines oder mehrerer Ausdrücke kennzeichnen, die der Äußerung entsprechen.
  17. Computerprogrammprodukt nach Anspruch 16, das ferner Anweisungen aufweist zum: Umwandeln der mindestens einen Äußerung in Äußerungsphoneme, wobei das Umwandeln durch ein Spracherkennungsmodell auf der Grundlage eines tiefen neuronalen Netzes durchgeführt wird.
  18. Computerprogrammprodukt nach Anspruch 15, das ferner Anweisungen aufweist zum: Umwandeln des einen oder mehrere Ausdrücke, die der Äußerung entsprechen, in mindestens ein Phonem.
  19. Computerprogrammprodukt nach Anspruch 15, das ferner Anweisungen aufweist zum: Zuweisen eines Klingt-ähnlich-Werts zu den Ausdrucksphonemen, der den Äußerungsphonemen entspricht.
  20. Computerprogrammprodukt nach Anspruch 15, wobei die Historie von Äußerungen von einem virtuellen Assistenten stammt.
DE112021004353.6T 2020-09-28 2021-07-16 Verbessern von spracherkennungstranskriptionen Pending DE112021004353T5 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US17/034,082 US11580959B2 (en) 2020-09-28 2020-09-28 Improving speech recognition transcriptions
US17/034,082 2020-09-28
PCT/CN2021/106646 WO2022062595A1 (en) 2020-09-28 2021-07-16 Improving speech recognition transcriptions

Publications (1)

Publication Number Publication Date
DE112021004353T5 true DE112021004353T5 (de) 2023-06-15

Family

ID=80822905

Family Applications (1)

Application Number Title Priority Date Filing Date
DE112021004353.6T Pending DE112021004353T5 (de) 2020-09-28 2021-07-16 Verbessern von spracherkennungstranskriptionen

Country Status (6)

Country Link
US (1) US11580959B2 (de)
JP (1) JP2023543780A (de)
CN (1) CN116235245A (de)
DE (1) DE112021004353T5 (de)
GB (1) GB2614686A (de)
WO (1) WO2022062595A1 (de)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11580959B2 (en) 2020-09-28 2023-02-14 International Business Machines Corporation Improving speech recognition transcriptions
US11501752B2 (en) * 2021-01-20 2022-11-15 International Business Machines Corporation Enhanced reproduction of speech on a computing system
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
CN115132197B (zh) * 2022-05-27 2024-04-09 腾讯科技(深圳)有限公司 数据处理方法、装置、电子设备、程序产品及介质
US11908475B1 (en) * 2023-02-10 2024-02-20 Cephable Inc. Systems, methods and non-transitory computer readable media for human interface device accessibility

Family Cites Families (51)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4741036A (en) 1985-01-31 1988-04-26 International Business Machines Corporation Determination of phone weights for markov models in a speech recognition system
US6377927B1 (en) 1998-10-07 2002-04-23 Masoud Loghmani Voice-optimized database system and method of using same
US6418411B1 (en) * 1999-03-12 2002-07-09 Texas Instruments Incorporated Method and system for adaptive speech recognition in a noisy environment
US6785417B1 (en) 2000-08-22 2004-08-31 Microsoft Corp Method and system for searching for words in ink word documents
DE10207895B4 (de) * 2002-02-23 2005-11-03 Harman Becker Automotive Systems Gmbh Verfahren zur Spracherkennung und Spracherkennungssystem
US7606714B2 (en) 2003-02-11 2009-10-20 Microsoft Corporation Natural language classification within an automated response system
US20060106605A1 (en) * 2004-11-12 2006-05-18 Saunders Joseph M Biometric record management
WO2007121441A2 (en) 2006-04-17 2007-10-25 Vovision Llc Methods and systems for correcting transcribed audio files
JP4767754B2 (ja) 2006-05-18 2011-09-07 富士通株式会社 音声認識装置および音声認識プログラム
US8694318B2 (en) * 2006-09-19 2014-04-08 At&T Intellectual Property I, L. P. Methods, systems, and products for indexing content
US9646603B2 (en) 2009-02-27 2017-05-09 Longsand Limited Various apparatus and methods for a speech recognition system
US8335689B2 (en) * 2009-10-14 2012-12-18 Cogi, Inc. Method and system for efficient management of speech transcribers
US20110184723A1 (en) 2010-01-25 2011-07-28 Microsoft Corporation Phonetic suggestion engine
US8234111B2 (en) * 2010-06-14 2012-07-31 Google Inc. Speech and noise models for speech recognition
US20120016671A1 (en) 2010-07-15 2012-01-19 Pawan Jaggi Tool and method for enhanced human machine collaboration for rapid and accurate transcriptions
US8666726B2 (en) * 2010-12-21 2014-03-04 Nuance Communications, Inc. Sample clustering to reduce manual transcriptions in speech recognition system
US11062615B1 (en) * 2011-03-01 2021-07-13 Intelligibility Training LLC Methods and systems for remote language learning in a pandemic-aware world
US9009041B2 (en) 2011-07-26 2015-04-14 Nuance Communications, Inc. Systems and methods for improving the accuracy of a transcription using auxiliary data such as personal data
US9318110B2 (en) 2011-09-09 2016-04-19 Roe Mobile Development Llc Audio transcription generator and editor
US10354650B2 (en) 2012-06-26 2019-07-16 Google Llc Recognizing speech with mixed speech recognition models to generate transcriptions
US8494853B1 (en) * 2013-01-04 2013-07-23 Google Inc. Methods and systems for providing speech recognition systems based on speech recordings logs
US9311915B2 (en) * 2013-07-31 2016-04-12 Google Inc. Context-based speech recognition
US10540957B2 (en) 2014-12-15 2020-01-21 Baidu Usa Llc Systems and methods for speech transcription
US10229356B1 (en) * 2014-12-23 2019-03-12 Amazon Technologies, Inc. Error tolerant neural network model compression
WO2016126770A2 (en) * 2015-02-03 2016-08-11 Dolby Laboratories Licensing Corporation Selective conference digest
WO2016205296A1 (en) * 2015-06-16 2016-12-22 Dolby Laboratories Licensing Corporation Post-teleconference playback using non-destructive audio transport
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
US20180293221A1 (en) * 2017-02-14 2018-10-11 Microsoft Technology Licensing, Llc Speech parsing with intelligent assistant
US20180315415A1 (en) 2017-04-26 2018-11-01 Soundhound, Inc. Virtual assistant with error identification
US20180350390A1 (en) 2017-05-30 2018-12-06 Verbit Software Ltd. System and method for validating and correcting transcriptions of audio files
US10546583B2 (en) 2017-08-30 2020-01-28 Amazon Technologies, Inc. Context-based device arbitration
US10083006B1 (en) * 2017-09-12 2018-09-25 Google Llc Intercom-style communication using multiple computing devices
US10515637B1 (en) * 2017-09-19 2019-12-24 Amazon Technologies, Inc. Dynamic speech processing
US10672388B2 (en) * 2017-12-15 2020-06-02 Mitsubishi Electric Research Laboratories, Inc. Method and apparatus for open-vocabulary end-to-end speech recognition
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
US10699695B1 (en) * 2018-06-29 2020-06-30 Amazon Washington, Inc. Text-to-speech (TTS) processing
US20200042825A1 (en) * 2018-08-02 2020-02-06 Veritone, Inc. Neural network orchestration
US20200051582A1 (en) * 2018-08-08 2020-02-13 Comcast Cable Communications, Llc Generating and/or Displaying Synchronized Captions
US10388272B1 (en) * 2018-12-04 2019-08-20 Sorenson Ip Holdings, Llc Training speech recognition systems using word sequences
US20190318742A1 (en) * 2019-06-26 2019-10-17 Intel Corporation Collaborative automatic speech recognition
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
US20210158803A1 (en) * 2019-11-21 2021-05-27 Lenovo (Singapore) Pte. Ltd. Determining wake word strength
US11152000B1 (en) * 2019-12-19 2021-10-19 Express Scripts Strategic Development, Inc. Predictive analysis system
US11575999B2 (en) * 2020-01-16 2023-02-07 Meta Platforms Technologies, Llc Systems and methods for hearing assessment and audio adjustment
US20220059077A1 (en) 2020-08-19 2022-02-24 Sorenson Ip Holdings, Llc Training speech recognition systems using word sequences
US11580959B2 (en) 2020-09-28 2023-02-14 International Business Machines Corporation Improving speech recognition transcriptions

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Bereitstellung 93 von Schulungen in virtuellen Schulungsräumen; Verarbeitung 94 von Datenanalysen; Transaktionsverarbeitung 95
On-demand Self Service (Selbstzuweisung bei Bedarf)

Also Published As

Publication number Publication date
WO2022062595A1 (en) 2022-03-31
GB2614686A (en) 2023-07-12
US20220101830A1 (en) 2022-03-31
US11580959B2 (en) 2023-02-14
JP2023543780A (ja) 2023-10-18
CN116235245A (zh) 2023-06-06
GB202306034D0 (en) 2023-06-07

Similar Documents

Publication Publication Date Title
DE112021004353T5 (de) Verbessern von spracherkennungstranskriptionen
US10789552B2 (en) Question answering system-based generation of distractors using machine learning
JP7255811B2 (ja) オーディオ・ストリームに含まれるセンシティブ・データの自動ブロッキング
US11269965B2 (en) Extractive query-focused multi-document summarization
JP7412060B2 (ja) 自然言語分類のための訓練データの拡張
DE112016003335T5 (de) Prozessor für natürliche Sprache zum Bereitstellen von natürlichsprachlichen Signalen in einer natürlichsprachlichen Ausgabe
US10162812B2 (en) Natural language processing system to analyze mobile application feedback
DE112018005167T5 (de) Aktualisieren von trainingsdaten
US11481442B2 (en) Leveraging intent resolvers to determine multiple intents
CN111177350A (zh) 智能语音机器人的话术形成方法、装置和系统
DE112020003698T5 (de) Erzeugen akustischer sequenzen über neuronale netze unter verwendung verknüpfter prosodieinformationen
DE102021122068A1 (de) Verbessern von spracherkennungstranskriptionen
WO2022237376A1 (en) Contextualized speech to text conversion
DE112021003943T5 (de) Sprachantwortsysteme auf Grundlage eines personalisierten Wortschatzes und einer Benutzerprofilerstellung - Personalisierte linguistische KI-Engines
DE112020004925T5 (de) Aktualisieren und umsetzen eines dokuments aus einem audiovorgang
US20230359657A1 (en) Summary generation guided by pre-defined queries
US11301626B2 (en) Artificial intelligence based context dependent spellchecking
DE112021005230T5 (de) Erzeugen alternativer veränderlicher kennsätze
US20220188525A1 (en) Dynamic, real-time collaboration enhancement
US11704493B2 (en) Neural parser for snippets of dynamic virtual assistant conversation
DE112018002133T5 (de) Aktivitätsklassifizierung aufgrund der geräuschabgabe einer benutzerschnittstelle
DE112021004755T5 (de) Spracherkennung unter verwendung von datenanalyse und dilatation einer verschachtelten audioeingabe
CN116686045A (zh) 在没有完整转录本的情况下的端到端口语理解
DE112020003661T5 (de) Anpassen eines gesprächsflusses auf grundlage des verhaltens in einerkognitiven mensch-maschine-interaktion
CN114283810A (zh) 改进语音识别转录

Legal Events

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

Free format text: PREVIOUS MAIN CLASS: G10L0015187000

Ipc: G10L0015065000

R016 Response to examination communication
R016 Response to examination communication