Schreib es richtig

Hallo allerseits!
Viele von uns haben wenig Erfahrung mit dem sogenannten Voice Writing - nur Psychoanalytiker haben ihre Gedanken auf einem Diktiergerät aufgezeichnet. Jetzt wird das Diktat vertrauter - der Sprachwahldienst in Smartphones ist daran gewöhnt. Teilnahme als Product Owner an der Erstellung eines Produkts zur Erkennung der fortlaufenden russischen Sprache, Kommunikation mit Entwicklern von Algorithmen und Kunden, Durchführung verschiedener Tests von Erkennungssystemen, Beobachtung, wie Benutzer ihre Texte diktieren, und eigene Erfahrung bei der Eingabe von Text in einen Computer mithilfe von Sprache; Ich habe viele interessante Beobachtungen gemacht. Um besser zu verstehen, wie die automatische Spracherkennung richtig verwendet wird, sehen wir uns an, wie die Spracherkennung funktioniert. Die Beschreibung wird sehr vereinfacht, aber es wird helfen zu verstehen, welche Fehler Menschen beim Diktieren machen. Und auch:Ich werde diesen Artikel mit Hilfe des Diktats schreiben und Korrekturen über die Tastatur nur an den Stellen vornehmen, an denen Sie nicht darauf verzichten können.Also:
Um eine Erkennungs-Engine zu erstellen, benötigen wir akustische und sprachliche Modelle.Das akustische Modell ist dafür verantwortlich, ein Klangstück (Frame) mit dem entsprechenden Phonem zu korrelieren. Ein Phonem ist ein separater Sprachklang, z. B. "a-percussion", "t-soft", "t" und 49 andere. Das größte Problem ist, dass viele Phoneme einander sehr ähnlich sind und es ziemlich schwierig ist, das Wort „Autos“ vom Wort „Autos“ zu unterscheiden (denken Sie daran, wie oft Sie erneut fragen, wenn Ihnen ein unbekannter Name mitgeteilt wird). Daher wird das akustische Modell probabilistisch gemacht: Es berichtet, dass mit einiger Wahrscheinlichkeit das "a-Schock" -Phonem in diesem Klangfragment ausgesprochen wurde, mit einer anderen Wahrscheinlichkeit war es ein "a-Schockloses" Phonem usw. und gibt allen Phonemen Wahrscheinlichkeiten.
Um ein solches akustisches Modell zu haben, müssen wir es zuerst trainieren. Hierfür wird eine große Sprachbasis benötigt (Hunderte von Sprachstunden, die von Dutzenden von Sprechern unterschiedlichen Geschlechts und Alters auf einem Mikrofon aufgezeichnet wurden). Die Basis ist so markiert, dass bekannt ist, welches Phonem zu welchem Zeitpunkt ertönt. Und dann erhalten wir nach dem Training für jedes Phonem eine bestimmte Wahrscheinlichkeitsverteilungsfunktion, die beschreibt, wie dieses Phonem im Durchschnitt von Menschen ausgesprochen wird.SprachmodellEs ist auch probabilistisch und beschreibt die Struktur der Sprache. Es zeigt, wie wahrscheinlich (richtig) diese oder jene Phrase aus Sicht der Sprache ist. Zum Beispiel ist der Satz „Mutter hat den Rahmen gewaschen“ ganz normal, aber „die Mutter hat den Rahmen gewaschen“ ist bereits falsch (dieser Satz wird von Voco so wenig gemocht, dass er erkennt, dass „Mutter die Mutter gewaschen hat“). Nachdem wir das nächste Wort erkannt haben, bestimmt das Sprachmodell, wie dieses Wort mit zuvor erkannten Wörtern übereinstimmt.Das Sprachmodell trainiert eine große Menge an Textdaten (Gigabyte an Texten). Anhand dieser Trainingsdaten berechnen wir die Wahrscheinlichkeit des Auftretens von Wörtern in einem bestimmten Kontext basierend auf der Häufigkeit des Auftretens dieser Phrasen. Wir verwenden Phrasen, die nicht länger als 3 Wörter sind (3-Gramm-Sprachmodelle). Daher kann das Sprachmodell nicht helfen, beispielsweise ein Adjektiv mit einem Substantiv in Einklang zu bringen, wenn zwei Wörter zwischen ihnen stehen. In diesem Fall erfolgt die Anpassung nur aufgrund des akustischen Modells.Als Erkennungswörterbuch verwenden wir ungefähr 300.000 der häufigsten Wörter, die 99% der Sprache einer durchschnittlichen Person abdecken.
Lassen Sie uns nun die Anerkennung selbst behandeln
Wenn wir wissen, wie jedes Wort mit Phonemen transkribiert wird, und die Wahrscheinlichkeiten aus dem Sprachmodell kennen, können wir einen Erkennungsgraphen (Finite-State-Maschine) erstellen. Als schnelle Einführung in endliche Zustandsmaschinen ist der Abschnitt „Zustandsmaschinen“ in diesem Artikel perfekt . Die Phoneme kommen am Eingang dieser Spalte an, er übersetzt sie in Wörter und Wörter in Phrasen.Erkennungsdiagramm für Wörter: "Mutter", "Seife", "Rahmen", "Geschirr". An den Rändern des Diagramms befinden sich Phoneme als Eingabezeichen (Wort vor ':'), Wörter als Ausgabezeichen (Wort nach ':') und Gewichte aus dem Sprachmodell (Zahl nach '/'). '-' bedeutet leere Eingabe oder Ausgabe. Eine Kante vom 4. Knoten zum 0-Knoten zyklisiert den Graphen, sodass mehrere Wörter in einer Reihe erkannt werden können.Bei der Erkennung erhalten wir ein Klangfragment. Ein akustisches Modell wandelt es in eine Reihe von Phonemen mit Wahrscheinlichkeiten um, die in die Eingabe unseres Graphen fallen. Wir bewegen uns also entlang des Graphen und bilden viele Hypothesen. Jede Hypothese hat ein Gewicht, das aus den Wahrscheinlichkeiten des akustischen Modells und den Wahrscheinlichkeiten des Sprachmodells (an den Rändern des Diagramms) gebildet wird.Das reale Erkennungsdiagramm ist millionenfach größer als unser Spielzeugbeispiel, sodass es irgendwann zu viele Hypothesen gibt und nicht genügend RAM vorhanden ist, um sie alle abzurufen. Um dies zu verhindern, werden verschiedene Methoden verwendet, um die Anzahl der Hypothesen zu verringern. Oft sind dies zwei einfache Kriterien: Hypothesen sollten nicht mehr als eine bestimmte Zahl sein und jede Hypothese sollte nicht zu viel an die beste Hypothese verlieren.Nachdem wir ein wenig Verständnis für die Theorie haben, gehen wir zu den Tipps über, was am besten zu tun ist und was am besten nicht zu tun ist, wenn diktiert wird.
SU machen
Einer der häufigsten Fehler, den Benutzer machen, ist das Diktieren durch Silben. Wir trainieren das System in gewöhnlicher Sprache, so dass das Strecken von Wörtern durch Silben das System nur verwirrt. Beim Diktieren durch Silben verwandeln sich alle Vokale in einem Wort in Schlagzeug, Phoneme werden länger ausgesprochen, Pausen zwischen Silben erscheinen. All dies führt zu einem traurigen Ergebnis, wenn Wörter in ein Bündel einsilbiger Fragmente unterteilt werden. Wenn Sie beispielsweise Voco gemäß den Silben "Auf die Straße rennen" sagen, erhalten Sie das folgende Ergebnis: "Sie müssen nicht SU drücken" oder so: "Sie müssen SU nicht drücken", aber es ist definitiv nicht das, was wir brauchen.Tipp: Sprechen Sie natürlich als Durchschnittsmensch.
Wie zum Teufel dich überhaupt nimmt
Einige Leute sprechen sehr schnell. Darüber hinaus reduziert eine solche Rede oft Wörter: Präpositionen werden verschluckt, Endungen werden nicht gesprochen, lange Wörter werden zur Hölle, zum Beispiel wird anstelle von „Alexander Alexandrowitsch“ der bekannte Kumpel „San Sanych“ ausgesprochen. Menschen verstehen solche Sprache oft ohne Probleme, da das Gehirn die fehlenden Informationen wiederherstellt, aber Spracherkennungsalgorithmen dieses Problem nur schwer bewältigen können. Zum Beispiel sagte ein Mann anstelle von "rotes Auto" "rote Autos". Während des Erkennens erhält unsere korrekte Hypothese sehr kleine Wahrscheinlichkeiten, wenn sie das Ende von Wörtern durch verschluckte Phoneme passiert. Aufgrund des zugenommenen Gewichts reicht dies möglicherweise nicht für den Sieg aus, aber einige „Maschas Schönheit“ wird gewinnen.Wir haben einige Frequenzreduzierungen bei der Aussprache berücksichtigt. Wenn Sie beispielsweise "cho" anstelle von "what" oder "hallo" anstelle von "hallo" sagen, hat dies keine Auswirkungen auf das Erkennungsergebnis, da wir unserem Diagramm die entsprechenden Transkriptionen hinzugefügt haben. Das zweite Problem, das darauf warten kann, dass ein Amateur mit hoher Geschwindigkeit diktiert, sind Syntag-Homophone."Er seufzte und dachte bei sich,wie zum Teufel dich überhaupt nimmt."Tipp: Wenn Sie zu sehr schneller Sprache neigen, versuchen Sie, die Wörter klarer auszusprechen. Kurze Pausen zwischen den Wörtern helfen Ihnen dabei, ein langsameres Tempo beizubehalten und keine Wortstücke zu schlucken.
Paul Pfoten Rallye aber
Ein weiteres Problem für die Erkennung ist „Ping“ und Zögern: Eine Person beginnt ein Wort zu sprechen, macht einen Fehler, bricht es in zwei Hälften ab und spricht es dann richtig aus. Zum Beispiel sagt eine Person "fiel parallel". Es gibt kein Wort "gefallen" im Wörterbuch, daher kann in solchen Fällen das Erkennungsergebnis sehr überraschend sein: Zum Beispiel können das Stolpern und das Wort selbst zu einem ähnlichen Klang verschmelzen, oder das Erkennungsergebnis besteht aus mehreren kleinen Wörtern, die auch einen ähnlichen Klang haben, zum Beispiel "Rallyeboden" aber. "Außerdem kann eine lange Pause dazu führen, dass der Decoder entscheidet, dass Sie den Satz beendet haben, was bedeutet, dass die Koordination mit den bereits genannten Wörtern unterbrochen wird.Tipp: Überlegen Sie sich im Voraus, was Sie sagen möchten, da dies die Anzahl der langen Pausen und Zögern beim Sprechen erheblich verringert.
Die Nacht. Straße Laterne. Apotheke.
Kurze Sätze werden weniger erkannt als lange Sätze. In kurzen Sätzen, insbesondere in Einzelwörtern, funktioniert das Sprachmodell praktisch nicht. Das Wort "Maschine" ist schwer von den Wörtern "Auto", "Auto", "Maschine" zu unterscheiden, und das Sprachmodell beruht in diesem Fall nur auf dem Auftreten des Wortes in den Trainingsdaten, das tatsächlich keine nützlichen Informationen enthält. Gleichzeitig sollte das Wort „Auto“ in der Formulierung „er ist mit dem Auto angekommen“ gut erkannt werden, da das Sprachmodell, das auf dem bereits erkannten Kontext „angekommen“ basiert, die richtige Wahl trifft. Kurze Phrasen umfassen auch Phrasen mit langen Pausen zwischen Wörtern, da in diesem Fall der gesamte Kontext der Aussprache eines Wortes vor einer Pause von der Arbeit des Sprachmodells ausgeschlossen ist.Tipp: Vermeiden Sie sehr kurze Sätze. Wenn dies nicht möglich ist, versuchen Sie, die Endungen klar auszusprechen.
Das habe ich nicht gesagt
Es kommt vor, dass nicht nur das, was Sie sagen, erkannt wird, sondern auch die Sprache Ihres Nachbarn. Infolgedessen sieht der Buchstabe, den Sie in Ihre Stimme eingeben, aus wie ein Brief von Onkel Fedor an Ihre Mutter: „Die Haare sind bedeckt, der Schwanz fällt ab.“ Dies gilt insbesondere bei Verwendung eines Remote-Mikrofons auf einem Laptop oder einer Webkamera. Wir versuchen, die Erkennungsqualität bei Rauschen und separater Hintergrundsprache zu verbessern. In Fällen, in denen der Benutzer still ist, kann die Erkennung auch auf leise Hintergrundsprache eingestellt werden.Tipp: Ein hochwertiges Headset und eine ruhige Umgebung tragen zur Verbesserung der Erkennungsqualität bei.
Wie eine Cola
Voco erkennt die russische Sprache, aber auch einige beliebte englische Wörter, Firmennamen und Produktprogramme sind in Reichweite. Zum Beispiel werden "Coca-Cola", "Windows" perfekt erkannt. Aber es gibt ein kleines Problem: Auf Englisch gibt es Geräusche, die nicht auf Russisch sind. Um dieses Problem zu lösen, haben wir englische Wörter mit den ähnlichsten russischen Phonemen transkribiert, daher lohnt es sich, sie auf russische Weise auszusprechen. Zum Beispiel Coca-Cola. [kòka kòla]. Zeigen Sie nicht Ihren ausgezeichneten britischen Akzent [k'əʊkʌ k'əʊla].Tipp: Sprechen Sie englische Wörter mit russischem Akzent aus.
Deep Kutra Bajonett Bajanova Seite und Raucher Bank Markt
Es kommt vor, dass das Wort nicht erkannt wird, obwohl Sie sich sehr bemühen und alle unsere Empfehlungen befolgen. Vielleicht liegt der Grund darin, dass dieses Wort nicht im Erkennungswörterbuch enthalten ist. Wir unterrichteten ein Sprachmodell zu einem allgemeinen Thema (Politik, Wirtschaft, Kultur, Sport usw.) und ungefähr 300.000 der häufigsten Wörter wurden in das Wörterbuch aufgenommen. Daher gibt es höchstwahrscheinlich keine hochspezialisierten Begriffe oder Nachnamen Ihres Chefs. Also diktiert der Benutzer dem Kunden einen Brief: Lieber Vladimir ist obligatorisch, Vladimir, sie ohne, ohne 1, gesichtslos auszuführen. Immer wieder spricht der Benutzer den Namen des Kunden aus - Bezyakin, variiert die Aussprache, die Geschwindigkeit der Aussprache, betont Stress, aber der gewünschte Name wird nicht erkannt.Hier ist der bekannte Satz der Linguistin Sherba "Ein tiefes Cuzra Shteko Budlanula Boraka und ein kleines lockiges Kind", das sich in ein Bajonett aus Bulanova und eine rauchende Dose verwandelt hat.Damit die Wörter, die Sie benötigen und die dem Sprachmodell unbekannt sind, korrekt erkannt werden, sollten Sie die Anpassung des Erkennungsmodells an Ihre Bedürfnisse verwenden. Wenn Sie beispielsweise Texte zur Bioinformatik eingeben, ist es am besten, Texte zur Bioinformatik zu verwenden und das System darauf umzuschulen.Bei der Umschulung von neuen Texten wird ein kleines Sprachmodell erstellt, das zusammen mit dem Hauptmodell an der Erkennung teilnimmt. Das heißt, das Gewicht, das wir vom Sprachmodell erhalten, besteht nun aus zwei Gewichten: dem Gewicht aus dem Hauptsprachenmodell und dem Gewicht aus dem Anpassungsmodell.Das Anpassen des Systems durch Texte ist viel korrekter als das Hinzufügen separater Wörter zum Erkennungswörterbuch. Das Hinzufügen eines einzelnen Wortes gibt uns keine Informationen darüber, wie dieses Wort verwendet wird, wie es gekippt wird usw. Daher sind Fehler beim Erkennen von Endungen möglich.Tipp: Passen Sie die Erkennung in Ihren Texten an Ihr Thema an oder fügen Sie dem Erkennungswörterbuch die erforderlichen Wörter hinzu.
PS: Dieser Text wurde mit der Anwendung #Voco in Sprache aufgezeichnet . Und wie das passiert ist, sehen Sie im Video:Source: https://habr.com/ru/post/de388151/
All Articles