Wie ist die Idee entstanden?
Alles begann mit dem Beitrag, den ich über die neue Maxine- Plattform mit KI zur Aktualisierung der Videokommunikation von Nvidia gesehen habe. Eine der Funktionen dieser Plattform ist die Simultanübersetzung in Form von Titeln. Diese Funktion wird mithilfe eines Frameworks von Nvidia namens Jarvis implementiertDieses Framework wurde für multimodale KI-Konversationsdienste entwickelt und bietet GPU-Leistung in Echtzeit. Dieses Konzept der Simultanübersetzung bildet die Grundlage unserer Audio- und Videokommunikationsplattform. Da es sich um eine neue Plattform handelt, sollte sie im Vergleich zu anderen ähnlichen Plattformen eine Reihe von Funktionen aufweisen. Daher haben wir beschlossen, diesen Titeln eine Stimme hinzuzufügen, das Sprachprofil eines Benutzers zu erstellen und die Sprache unter Berücksichtigung der Tonalität und Farbe der Stimme der sprechenden Person zu synthetisieren.
Sprache zu Text oder Spracherkennung
Ist es besser, Google, Yandex oder Mozilla zu verwenden?
Google hat im Vergleich zu Yandex eine höhere Erkennungsgenauigkeit. Wir haben 5 Test-Sprachnachrichten ausgeführt: 3 auf Englisch und 2 auf Russisch über die Google-API. Die Erkennungsgenauigkeit betrug 100% (5/5), Yandex 60% (3/5). Google unterstützt 125 Sprachen, Yandex - 3 Sprachen.
Die Vorteile von Mozilla Deepspeech sind die Erkennungsgenauigkeit, da sie zum Vergleich 92,5% beträgt. Eine Person erkennt sie mit einer Genauigkeit von 94,2%. Daher betrug die Erkennungsgenauigkeit von Test-Sprachnachrichten 100% (5/5), und der Vorteil besteht darin, dass diese Engine Open Source im Gegensatz zu Google und Yandex. Der Nachteil dieser Engine ist die Anzahl der anerkannten Sprachen - Englisch, Russisch und Französisch.
Infolgedessen fiel die Auswahl bei Google Speech to Text aufgrund des Verhältnisses der Anzahl der Sprachen zur Erkennungsgenauigkeit.
Textübersetzung
Um dieses Problem zu lösen, müssen Sie zunächst eine vorgefertigte API von Google oder Yandex verwenden. Das erste Problem, auf das wir stießen, war die Ungenauigkeit der Übersetzung. Zum Beispiel die Übersetzung des Satzes „Die Menschen in China sind anscheinend unsichtbar“ vom Russischen ins Englische. Yandex-Übersetzer: "Menschen in China sind anscheinend unsichtbar" und Google Übersetzer: "Es gibt viele Menschen in China", in diesem Fall hat Google es besser gemacht.
Derzeit gibt es kein Allheilmittel zur Lösung dieses Problems. Die Hauptaufgabe dieser Übersetzer besteht heute darin, dem Algorithmus beizubringen, die Bedeutung eines Satzes / Textes zu verstehen. Wenn der Algorithmus die Bedeutung versteht, ist die Übersetzung von viel besserer Qualität.
Die Übersetzung einer Reihe von Sätzen zu Geschäftsthemen durch Google Translate und Yandex Translator hat gezeigt, dass Google dies kompetenter macht. Daher werden wir Google Translate verwenden.
Analysieren Sie und erhalten Sie ein Sprachprofil
Um ein Sprachprofil zu erhalten, müssen wir einen Datensatz sammeln. Da die Aufgabe darin besteht, den übersetzten Text anhand der Rede des Sprechers zu synthetisieren, müssen wir von jedem Benutzer einen Datensatz sammeln. Dazu lesen Sie speziellen Text, der die erforderlichen Buchstabenkombinationen, syntaktischen Konstruktionen und Satzzeichen enthält. Die Dauer des Lesens des Textes beträgt ungefähr 15 Minuten, sodass wir eine ausreichende Menge an Informationen über die Frequenz- und Intonationseigenschaften jedes Benutzers erhalten. Das Lesen des Textes kann wiederholt werden, um die Endergebnisse zu verbessern.
Sprachsynthese unter Berücksichtigung des Sprachprofils
Die Sprache einer Person in einer Sprache zusammenzufassen, die sie noch nie gesprochen hat, ist keine leichte Aufgabe. Dazu ist es erforderlich, den Primärdatensatz mit Hilfe von zweisprachigen Personen zu sammeln, die auch den Spezialtext lesen, dann den ähnlichen Text in einer anderen Sprache lesen und danach - zusätzliche Texte, um den Datensatz zu erweitern. Basierend auf diesem Training und den identifizierten Beziehungen wird anschließend die Sprache der Benutzer in einer anderen Sprache generiert. Auch in diesem Prozess helfen bereits vorhandene automatisierte Lösungen für die Sprachsynthese in verschiedenen Sprachen, da die Erfassung eines völlig unabhängigen Datensatzes der erforderlichen Skala weder effektiv noch realistisch zu sein scheint.
Ausgabe
Unsere Hauptaufgabe im Moment ist es, ein Sprachprofil mit einer Sprachsynthese zu kombinieren, da das Übertragen eines Sprachprofils in eine andere Sprache keine leichte Aufgabe ist und Sie ein neuronales Netzwerk trainieren müssen, damit es versteht, wie es funktioniert, da nur zwei Datensätze in verschiedenen Sprachen vorhanden sind ...
Während der Entwicklung des Projekts werden wir Veröffentlichungen zu spezifischeren Aufgaben und Lösungsmöglichkeiten veröffentlichen.