Spracherkennung
Hinweis
Weitere Details finden Sie auf der Registerkarte "Text und Bilder ".
Mit der Spracherkennung, auch als Sprach-zu-Text bezeichnet, können Anwendungen gesprochene Sprache in geschriebenen Text konvertieren. Der Weg von Soundwelle zu Text umfasst sechs koordinierte Phasen: Aufzeichnen von Audio, Vorbereiten von Features, Modellieren von akustischen Mustern, Anwenden von Sprachregeln, Decodieren der höchstwahrscheinlichen Wörter und Verfeinern der endgültigen Ausgabe.
Audioaufnahme: Analogaudio in digital konvertieren
Die Spracherkennung beginnt, wenn ein Mikrofon Schallwellen in ein digitales Signal konvertiert. Das System beschreibt die analogen Audiodaten tausendmal pro Sekunde – in der Regel 16.000 Samples pro Sekunde (16 kHz) für Sprachanwendungen – und speichert jede Messung als numerischen Wert.
Hinweis
Warum Samplingrate wichtig ist:
- Höhere Raten (z. B. 44,1 kHz für Musik) erfassen mehr Details, erfordern jedoch mehr Verarbeitung.
- Die Spracherkennung gleicht Klarheit und Effizienz bei 8 kHz bis 16 kHz aus.
- Hintergrundgeräusche, Mikrofonqualität und Abstand vom Lautsprecher wirken sich direkt auf die nachgeschaltete Genauigkeit aus.
Bevor Sie zur nächsten Stufe wechseln, wendet das System häufig grundlegende Filter an, um Hums, Klicks oder andere Hintergrundgeräusche zu entfernen, die das Modell verwirren könnten.
Vorverarbeitung: Extrahieren aussagekräftiger Features
Unformatierte Audiobeispiele enthalten zu viele Informationen zur effizienten Mustererkennung. Die Vorverarbeitung wandelt die Wellenform in eine kompakte Darstellung um, die Sprachmerkmale hervorhebung, während irrelevante Details wie absolute Lautstärke verworfen werden.
Mel-Frequency Cepstral Coefficients (MFCCs)
MFCC ist die am häufigsten verwendete Featureextraktionsmethode bei der Spracherkennung. Es imitiert, wie das menschliche Ohr Klang wahrnimmt, indem es Frequenzen hervorhebt, in denen Sprachenergie konzentriert ist, und weniger wichtige Bereiche komprimiert.
Funktionsweise von MFCC:
- Teilen Sie Audio in Frames auf: Teilen Sie das Signal in überlappende 20-30 Millisekundenfenster auf.
- Fouriertransformation anwenden: Konvertieren Sie jeden Frame von der Zeitdomäne in eine Häufigkeitsdomäne, wodurch angezeigt wird, welche Pitches vorhanden sind.
- Karte zur Mel-Skala: Passen Sie die Frequenzbänder an die Empfindlichkeit des menschlichen Gehörs an – wir unterscheiden tiefe Töne besser als hohe.
- Extraktkoeffizienten: Berechnen Sie eine kleine Gruppe von Zahlen (häufig 13 Koeffizienten), die die spektrale Form jedes Frames zusammenfassen.
Das Ergebnis ist eine Abfolge von Featurevektoren – eine pro Frame –, die erfasst, wie die Audiowiedergabe aussieht, ohne jedes Beispiel zu speichern. Diese Vektoren werden zur Eingabe für die akustische Modellierung.
Die Vektoren werden spaltenweise extrahiert, wobei jeder Vektor die 13 MFCC-Funktionskoeffizientenwerte für jeden Zeitrahmen darstellt:
Frame 1: [ -113.2, 45.3, 12.1, -3.4, 7.8, ... ] # 13 coefficients
Frame 2: [ -112.8, 44.7, 11.8, -3.1, 7.5, ... ]
Frame 3: [ -110.5, 43.9, 11.5, -2.9, 7.3, ... ]
Akustische Modellierung: Erkennen von Phonemen
Akustische Modelle lernen die Beziehung zwischen Audiofeatures und Phonemen kennen – die kleinsten Klangeinheiten, die Wörter unterscheiden. Englisch verwendet ca. 44 Phoneme; Beispielsweise umfasst das Wort "Katze" drei Phoneme: /k/, /æ/, und /t/.
Von Features zu Phonemes
Moderne akustische Modelle verwenden Transformatorarchitekturen, eine Art Deep Learning-Netzwerk, das bei Sequenzaufgaben exceliert. Der Transformator verarbeitet die MFCC-Funktionsvektoren und prognostiziert, welche Phoneme zu jedem Zeitpunkt am wahrscheinlichsten sind.
Transformatormodelle erzielen eine effektive Phoneme-Vorhersage durch:
- Aufmerksamkeitsmechanismus: Das Modell untersucht umgebende Frames, um Mehrdeutigkeit zu lösen. Beispielsweise klingt das Phoneme /t/ am Anfang von "top" anders als das Ende von "Bat".
- Parallele Verarbeitung: Im Gegensatz zu älteren wiederkehrenden Modellen analysieren Transformatoren mehrere Frames gleichzeitig, verbessern die Geschwindigkeit und Genauigkeit.
- Kontextbezogene Vorhersagen: Das Netzwerk lernt, dass bestimmte Phoneme-Sequenzen häufig in natürlicher Sprache auftreten.
Die Ausgabe der akustischen Modellierung ist eine Wahrscheinlichkeitsverteilung über Phoneme für jedes Audio-Frame. Frame 42 kann beispielsweise 80% Konfidenz für /æ/, 15% für /ɛ/und 5% für andere Phoneme anzeigen.
Hinweis
Phoneme sind sprachspezifisch. Ein Modell, das auf englischen Phonemen trainiert wurde, kann Mandarin-Töne nicht erkennen, ohne neu zu trainieren.
Sprachmodellierung: Vorhersagen von Wortsequenzen
Phoneme-Vorhersagen allein garantieren keine genaue Transkription. Das akustische Modell könnte „seit“ und „seid“ verwechseln, da sie identische Phoneme haben. Sprachmodelle lösen Mehrdeutigkeit durch die Anwendung von Vokabular, Grammatik und gängigen Wortmustern. Einige Möglichkeiten, wie das Modell die Wortabfolgevorhersage leitet, sind:
- Statistische Muster: Das Modell weiß, dass „Gehen Sie zur nächsten Seite“ häufiger in den Trainingsdaten vorkommt als „Gehen Sie zur nächsten Saite“.
- Kontextbewusstsein: Nach dem Hören von „Ich muss“, erwartet das Modell Verben wie „gehen“ oder „beenden“, nicht Nomen wie „Tabelle“.
- Domänenanpassung: Benutzerdefinierte Sprachmodelle, die auf medizinischer oder rechtlicher Terminologie trainiert wurden, verbessern die Genauigkeit für spezielle Szenarien.
Decodieren: Auswählen der besten Texthypothese
Decodierungsalgorithmen durchsuchen Millionen möglicher Wortsequenzen, um die Transkription zu finden, die am besten mit akustischen und Sprachmodellvorhersagen übereinstimmt. Diese Stufe gleicht zwei konkurrierende Ziele aus: Treu zum Audiosignal zu bleiben und dabei lesbaren, grammatikalisch korrekten Text zu erzeugen.
Strahlensuch-Dekodierung:
Die am häufigsten verwendete Technik, Beam Search, führt eine Shortlist (den "Beam") mit den höchsten Bewertungen der partiellen Transkriptionen, während sie jeden Audioframe verarbeitet. Bei jedem Schritt erweitert es jede Hypothese um das nächstwahrscheinlichste Wort, entfernt Pfade mit niedriger Punktzahl und behält nur die besten Kandidaten bei.
Für eine drei Sekunden lange Äußerung könnte der Decoder Tausende von Hypothesen bewerten, bevor er „Sicherstellen, dass“ gegenüber Alternativen wie „Sicherstellen, das“ auswählt.
Vorsicht
Die Decodierung ist rechenintensiv. Echtzeitanwendungen ausgleichen Genauigkeit und Latenz, indem die Breite des Balkens und die Hypothesentiefe begrenzt werden.
Nachbearbeitung: Optimierung der Ausgabe
Der Decoder erzeugt rohen Text, der häufig vor der Präsentation bereinigt werden muss. Nachbearbeitung wendet Formatierungsregeln und Korrekturen an, um die Lesbarkeit und Genauigkeit zu verbessern.
Allgemeine Nachbearbeitungsaufgaben:
- Großschreibung: „hallo, mein name ist sam“ in „Hallo, mein Name ist Sam“ umwandeln.
- Interpunktionswiederherstellung: Fügen Sie Punkte, Kommas und Fragezeichen basierend auf Prosodie und Grammatik hinzu.
- Zahlenformatierung: Ändern Sie "eintausendundzwanzig drei" in "1.023".
- Profanitätsfilterung: Sperren oder entfernen Sie unangemessene Wörter, wenn dies durch die Richtlinie erforderlich ist.
- Umgekehrte Textnormalisierung: Wandeln Sie gesprochene Formen wie "3 p m" in "3 Pm" um.
- Vertrauensbewertung: Kennzeichnen Sie Wörter mit geringer Zuverlässigkeit zur menschlichen Überprüfung bei kritischen Anwendungen wie der medizinischen Transkription.
Azure Speech gibt die endgültige Transkription zusammen mit Metadaten wie Zeitstempel und Konfidenzbewertungen auf Wortebene zurück, sodass Ihre Anwendung unsichere Segmente hervorheben oder Fallbackverhalten auslösen kann.
Wie die Pipeline zusammenarbeitet
Jede Phase baut auf dem vorherigen auf:
- Die Audioaufnahme stellt das rohe Signal bereit.
- Vorverarbeitung extrahiert MFCC-Features , die Sprachmuster hervorheben.
- Die akustische Modellierung prognostiziert Phoneme-Wahrscheinlichkeiten mithilfe von Transformatornetzwerken.
- Die Sprachmodellierung wendet Vokabular und Grammatikkenntnisse an.
- Beim Decodieren wird nach der besten Wortsequenz gesucht.
- Nachbearbeitung formatiert den Text für menschliche Leser.
Durch die Trennung von Bedenken erzielen moderne Spracherkennungssysteme eine hohe Genauigkeit zwischen Sprachen, Akzenten und akustischen Bedingungen. Wenn die Transkriptionsqualität kurz fällt, können Sie das Problem häufig auf eine Stufe nachverfolgen – schlechte Audioaufnahme, unzureichendes Sprachmodelltraining oder übermäßig aggressive Nachbearbeitung – und passen sie entsprechend an.