Heim >Technologie-Peripheriegeräte >KI >Eine eingehende Untersuchung der Implementierung unbeaufsichtigter Pre-Training-Technologie und „Algorithmusoptimierung + technische Innovation' von Huoshan Voice
Volcano Engine bietet seit langem intelligente Video-Untertitellösungen basierend auf Spracherkennungstechnologie für beliebte Videoplattformen. Einfach ausgedrückt handelt es sich um eine Funktion, die KI-Technologie nutzt, um die Stimmen und Liedtexte im Video automatisch in Text umzuwandeln, um die Videoerstellung zu unterstützen. Doch mit dem rasanten Wachstum der Plattformnutzer und dem Bedarf an reichhaltigeren und vielfältigeren Sprachtypen stößt die traditionell eingesetzte überwachte Lerntechnologie zunehmend an ihren Engpass, was das Team in echte Schwierigkeiten bringt.
Es ist bekannt, dass traditionelles überwachtes Lernen stark auf manuell annotierte überwachte Daten angewiesen ist, insbesondere bei der kontinuierlichen Optimierung großer Sprachen und dem Kaltstart kleiner Sprachen. Am Beispiel wichtiger Sprachen wie Chinesisch, Mandarin und Englisch stellt die Videoplattform zwar ausreichend Sprachdaten für Geschäftsszenarien bereit, aber nachdem die überwachten Daten einen bestimmten Umfang erreicht haben, ist der ROI der fortlaufenden Annotation sehr gering Das technische Personal muss zwangsläufig darüber nachdenken, wie es Hunderte von überwachten Daten effektiv nutzen kann, um die Leistung der Spracherkennung in großen Sprachen weiter zu verbessern.
Für relativ Nischensprachen oder Dialekte sind die Kosten für die Datenkennzeichnung aufgrund von Ressourcen, Arbeitskräften und anderen Gründen hoch. Wenn nur sehr wenige gekennzeichnete Daten vorhanden sind (in der Größenordnung von 10 Stunden), ist die Wirkung des überwachten Trainings sehr gering und es kann sogar sein, dass sie nicht normal konvergiert, und die gekauften Daten stimmen oft nicht mit dem Zielszenario überein und können die Anforderungen des Benutzers nicht erfüllen Geschäft.
Daher muss das Volcano Engine Speech-Team dringend untersuchen, wie eine große Menge unbeschrifteter Daten zu möglichst geringen Beschriftungskosten vollständig genutzt werden kann, der Erkennungseffekt mit einer kleinen Menge beschrifteter Daten verbessert und implementiert werden kann eigentliches Geschäft. Daher ist die unbeaufsichtigte Pre-Training-Technologie zum Schlüssel für die Förderung der ASR-Funktionen (Automatic Speech Recognition / Automatic Speech Recognition) der Videoplattform in kleinen Sprachen geworden.
Obwohl die Wissenschaft in den letzten Jahren viele bedeutende Fortschritte im Bereich des unbeaufsichtigten Vortrainings für Sprache gemacht hat, darunter Wav2vec2.0[1], HuBERT[2] usw., gab es nur wenige Umsetzung in der Industrie Fälle können als Referenz verwendet werden. Insgesamt ist das Volcano Voice-Team der Ansicht, dass die folgenden drei Gründe die Implementierung unbeaufsichtigter Pre-Training-Technologie behindern:
Angesichts der oben genannten drei Hauptprobleme wurden Algorithmusverbesserungen und technische Optimierungen durchgeführt, um einen vollständigen und einfach zu fördernden Implementierungsplan zu erstellen. In diesem Artikel wird die Lösung im Hinblick auf den Implementierungsprozess, die Algorithmusoptimierung und die technische Optimierung im Detail vorgestellt.
Die folgende Abbildung zeigt den Implementierungsprozess des unbeaufsichtigten Vortrainings von ASR in ressourcenarmen Sprachen, der grob in drei Phasen unterteilt werden kann: Datenerfassung, Seed-Modelltraining und Modellmigration.
ASR-Implementierungsprozess basierend auf unbeaufsichtigtem Vortraining
Konkret kann die erste Phase der Datenerfassung unbeschriftete Sprache in der Zielsprache durch Sprachumleitung, Beschaffung usw. erfassen. Sprache kennzeichnen und reine Textdaten. Die zweite Stufe des Seed-Modell-Trainings ist der klassische Prozess „unüberwachtes Vortraining + überwachte Feinabstimmung“. In dieser Phase wird ein akustisches Modell erhalten, das normalerweise auf der Grundlage der Verlustfunktion der Connectionist Temporal Classification (CTC[3]) fein abgestimmt wird. Das akustische Modell bildet in Kombination mit dem auf reinem Text trainierten Sprachmodell ein vollständiges Spracherkennungssystem, mit dem gute Erkennungsergebnisse erzielt werden können. Der Grund, warum es als Seed-Modell bezeichnet wird, liegt darin, dass dieses Modell nicht für die direkte Einführung in das Geschäft geeignet ist. Die Volcano Engine bevorzugt die Verwendung von LAS (Listen, Attend and Spell[4]) oder RNN-T (Recurrent Neural). Network Transducer[ 5]) Diese Art von End-to-End-Modell wird online bereitgestellt. Der Hauptgrund dafür ist, dass LAS/RNN-T über hervorragende End-to-End-Modellierungsfunktionen verfügt. Gleichzeitig hat es in den letzten Jahren bessere Ergebnisse als das traditionelle CTC-Modell erzielt und immer mehr Anerkennung gefunden der Branche. Die Volcano Engine hat viel Optimierungsarbeit bei der Inferenz und Bereitstellung von End-to-End-Spracherkennungsmodellen geleistet und eine relativ ausgereifte Lösung zur Unterstützung vieler Unternehmen geschaffen. Unter Beibehaltung des Effekts ohne Verlust können die Betriebs- und Wartungskosten der Engine erheblich gesenkt werden, wenn die End-to-End-Inferenz-Engine verwendet werden kann. Auf dieser Grundlage entwarf das Team die dritte Phase, die Modellmigrationsphase. Stützt sich hauptsächlich auf die Idee der Wissensdestillation, verwendet ein Seed-Modell zur Pseudokennzeichnung unbeschrifteter Daten und stellt dann ein LAS-Modell mit einer geringeren Anzahl von Parametern für das Training bereit, das gleichzeitig die Migration der Modellstruktur realisiert und die Komprimierung von Inferenzberechnungen. Die Wirksamkeit des gesamten Prozesses wurde anhand der kantonesischen ASR überprüft. Die spezifischen experimentellen Ergebnisse sind in der folgenden Tabelle aufgeführt: Zunächst kaufte das Team 1 kh fertige Produktdaten zum experimentellen Vergleich Die Leistung des LAS-Modells ist nicht gut, die Zeichenfehlerrate (CER) beträgt bis zu 44,2 %. Nach der Analyse glaubt Volcano Engine, dass der Hauptgrund die Diskrepanz zwischen den Bereichen Beschaffungsdaten (Konversation) und Geschäftstestsatz (Video) ist. Vorläufige Experimente zu wav2vec2.0 ergaben ebenfalls ein ähnliches Phänomen. Im Vergleich zur Verwendung von Beschaffungsdaten für das Vortraining verwendet die Volcano Engine Daten, die mit dem Zielfeld für das Vortraining übereinstimmen. Der CER für den Geschäftstestsatz kann von 42,0 % auf 29,4 % reduziert werden Szenario: Wenn die Daten auf 50 kh akkumuliert werden, erhöhen sich die Modellparameter von 100 Mio. auf 300 Mio. und der CER sinkt weiter auf 23,1 %. Abschließend überprüfte die Volcano Engine die Auswirkung der Modellmigration, um 50 kh unbeschriftete Daten zu dekodieren, um Pseudobezeichnungen zu erhalten und das LAS-Modell zu trainieren. Es ist ersichtlich, dass das auf Pseudo-Label-Training basierende LAS-Modell im Wesentlichen den Erkennungseffekt des CTC-Seed-Modells beibehalten kann und die Anzahl der Modellparameter um ein Drittel reduziert wird und basierend darauf direkt bereitgestellt und gestartet werden kann eine ausgereifte End-to-End-Inferenz-Engine. Vergleich von Modellparametermenge und CER Am Ende erreichte das Team unter der Voraussetzung, dass die Modellstruktur und die Parametermenge unverändert blieben, 23,0 % mit 50 kh unbeschrifteten Geschäftsdaten und 10 Stunden Der CER wird im Vergleich zum Basismodell um 48 % reduziert. Nachdem wir die Probleme der Online-Berechnung und -Kompatibilität gelöst hatten, konzentrierten wir uns im gesamten Prozess auf die unbeaufsichtigte Pre-Training-Kerntechnologie. Für wav2vec2.0 wurde die Volcano-Engine aus zwei Dimensionen optimiert: Algorithmus und Technik. wav2vec2.0, als selbstüberwachtes Pre-Training-Modell, das 2020 von Meta AI vorgeschlagen wurde, eröffnet ein neues Kapitel im unbeaufsichtigten Repräsentationslernen von Sprache. Die Kernidee besteht darin, das Quantisierungsmodul zur Diskretisierung der Eingabemerkmale zu verwenden. Durch vergleichende Lernoptimierung realisiert der Hauptteil des Modells zufällige maskierte Teileingabemerkmale ähnlich wie BERT. wav2vec2.0-Modellstrukturdiagramm (Quelle: wav2vec 2.0 Abbildung 1 [1]) Beim Training des wav2vec 2.0-Modells anhand von Geschäftsdaten bin ich auch auf zwei heikle Probleme gestoßen: Eines ist die geringe Trainingseffizienz, 300 Millionen groß Es dauert Es dauert mehr als zehn Tage, bis das Training des 64-Karten-Modells abgeschlossen ist. Das andere ist, dass das Training instabil ist und leicht abweicht. Effizientes wav2vec wird für diese Volcano-Engine vorgeschlagen, um die beiden oben genannten Probleme zu lindern. Um das Problem der geringen Trainingseffizienz zu lösen, beschleunigte das Team die Trainingsgeschwindigkeit, indem es die Bildrate des Modells reduzierte, die Eingabefunktionen von der Wellenform durch Filterbänke ersetzte und die Bildrate von ursprünglich 20 ms auf 40 ms änderte . Dadurch wird nicht nur der Berechnungsaufwand für die Faltung der Merkmalsextraktion erheblich reduziert, sondern auch die Länge der internen Codierung von Transformer erheblich reduziert, wodurch die Trainingseffizienz verbessert wird. Das Problem des instabilen Trainings wird durch die Analyse der Lernmethode des unbeaufsichtigten Vortrainings und der umfassenden Beurteilung in Kombination mit der tatsächlichen Situation der Geschäftsdaten gelöst. Der vergleichende Lernverlust kann durch die folgende Formel ausgedrückt werden: Für jeden Frame t repräsentiert ct die Encoderausgabe des Frames, qt repräsentiert die Quantisierungsausgabe des Frames. Darüber hinaus müssen mehrere andere Frames als negative Samples abgetastet werden, sodass die Menge des aktuellen Frames und des negativen Sample-Frames einem dynamisch konstruierten Vokabular Qt entspricht. Das Optimierungsziel des kontrastiven Lernens besteht darin, die Ähnlichkeit zwischen der aktuellen Frame-Kodierung und dem Quantisierungsergebnis des Frames zu maximieren und gleichzeitig die Ähnlichkeit zwischen der aktuellen Frame-Codierung und den Quantisierungsergebnissen anderer Frames zu minimieren. Es ist nicht schwer festzustellen, dass die Ähnlichkeit zwischen negativen und positiven Proben sowie die Anzahl der negativen Proben direkt den Effekt des kontrastiven Lernens bestimmen. Im tatsächlichen Betrieb ist die durchschnittliche Länge der Geschäftsdaten kurz und reicht bei weitem nicht aus, um nur 50 negative Proben in einem Satz bereitzustellen. Da die Ähnlichkeit zwischen benachbarten Sprachrahmen sehr hoch ist, muss die Kontinuität des Maskenbereichs sichergestellt werden, wodurch die Schwierigkeit der Darstellungsrekonstruktion erhöht wird. Um die beiden oben genannten Probleme zu lösen, hat die Volcano Engine zwei Verbesserungen vorgeschlagen: Nach dem Vergleich der Auswirkungen von wav2vec2.0 (w2v) und Efficient wav2vec (w2v-e) auf Geschäftsdaten werden die in der folgenden Tabelle gezeigten Ergebnisse erhalten (alle Modelle werden mit 64 V100-GPUs trainiert): Sie können sehen, dass das verbesserte Efficient wav2vec im Vergleich zum ursprünglichen wav2vec 2.0 eine stabile Leistungssteigerung von 5 % aufweist und die Trainingseffizienz fast verdoppelt ist. Obwohl das vom Team vorgeschlagene Efficient wav2vec die Trainingseffizienz auf Algorithmusebene nahezu verdoppelt hat, schwankt die Trainingskommunikation aufgrund des großen Kommunikationsvolumens des 300M-Modells immer noch und die Effizienz der Erweiterung mit mehreren Maschinen ist gering. In diesem Zusammenhang kam das Volcano Engine Voice Team zu dem Schluss: „Um die Kommunikationseffizienz des Modellvortrainings in synchronen Gradientenszenarien zu verbessern, haben wir die Kommunikationsoptimierungstechnologie der Bucket-Gruppe im Kommunikations-Backend basierend auf dem verteilten Trainingsframework BytePS fertiggestellt. und die Effizienz der Datenparallelität kann um 10 % verbessert werden. Um das durch die unterschiedliche Reihenfolge der Modellparameterdefinition und der Gradientenaktualisierungsreihenfolge verursachte Warteproblem zu lösen, wird auch eine adaptive Parameter-Neuordnungsstrategie (Parameter-Neuordnung) implementiert . „Basierend auf diesen Optimierungen wird es weiter mit der Gradientenakkumulation usw. kombiniert. Die Effizienz der Einzelkartenerweiterung des 300M-Modells ist von 55,42 % auf 81,83 % gestiegen, und die Effizienz der Multimaschinenerweiterung ist von 55,42 % auf 81,83 % gestiegen 60,54 % auf 91,13 % Das Modell, dessen Training ursprünglich 6,5 Tage dauerte, kann jetzt in nur 4 Tagen trainiert werden, was die Zeit um 40 % verkürzt. Darüber hinaus hat das Sprachteam von Volcano Engine den Aufbau atomarer Fähigkeiten für eine Reihe ultragroßer Modelle weiter abgeschlossen, um Big-Data-Szenarien für große Modelle für zukünftige Erkundungen zu unterstützen. Zuerst implementierten wir die lokale OSS-Technologie, die das Problem der Erweiterungseffizienz zwischen Maschinen löste und gleichzeitig den größten Teil des vom Optimierer belegten redundanten Speichers entfernte. Später unterstützten wir Bucket Lazy Init bei der synchronen Gradientenkommunikation, wodurch die Parameter verdoppelt wurden Es verbraucht viel Videospeicher, reduziert den Spitzenvideospeicher erheblich und passt sich an sehr große Modellszenarien an, in denen die Videospeicherressourcen knapp sind. Basierend auf Datenparallelität werden Modellparallelität und Pipeline-Parallelität sowie Überprüfung und benutzerdefinierte Unterstützung unterstützt sind bei den Modellen 1B und 10B abgeschlossen. Diese Reihe von Optimierungen bildet eine solide Grundlage für das Training großer Modelle und großer Datenmengen. Derzeit haben zwei ressourcenarme Sprachen durch die Einführung des ressourcenarmen ASR-Implementierungsprozesses erfolgreich Videountertitel und Inhaltssicherheitsdienste implementiert. Zusätzlich zur Spracherkennung hat das auf wav2vec2.0 basierende Pre-Training-Modell auch bei vielen anderen nachgelagerten Aufgaben, einschließlich der Erkennung von Audioereignissen, Spracherkennung, Emotionserkennung usw., erhebliche Fortschritte erzielt und wird schrittweise in die Sicherheit von Videoinhalten implementiert , Empfehlung und Analyse in der Zukunft, Audio-Offloading, E-Commerce-Kundenservice-Stimmungsanalyse und andere verwandte Geschäfte. Die Implementierung unbeaufsichtigter Pre-Training-Technologie wird die Kosten für die Kennzeichnung verschiedener Arten von Audiodaten erheblich senken, den Kennzeichnungszyklus verkürzen und eine schnelle Reaktion auf Geschäftsanforderungen ermöglichen. In der Praxis hat die Volcano Engine eine ressourcenarme Sprach-ASR-Implementierungslösung basierend auf wav2vec2.0 untersucht, die das Problem des hohen Inferenz-Overheads löst und eine nahtlose Integration mit dem End-to-End-System erreicht -Endmotorverbindung. Um die Kernprobleme der geringen Trainingseffizienz und Instabilität von wav2vec2.0 anzugehen, wurde Efficient wav2vec vorgeschlagen. Im Vergleich zu wav2vec2.0 wird die Auswirkung auf nachgelagerte Aufgaben um 5 % verbessert und die Zeit vor dem Training um die Hälfte reduziert. In Kombination mit der technischen Optimierung wird die endgültige Zeit vor dem Training im Vergleich zur Originalversion um 70 % reduziert. In Zukunft wird Volcano Engine weiterhin in die folgenden drei Richtungen forschen: Volcano Voice, die hochmoderne Sprachtechnologie, die seit langem die verschiedenen Geschäftsbereiche von ByteDance bedient, wird durch die Volcano-Engine geöffnet und bietet branchenführende KI-Sprachtechnologiefunktionen und hervorragende Full-Stack-Sprachproduktlösungen, einschließlich Audioverständnis, Audiosynthese, virtuelle digitale Menschen, Gesprächsinteraktion, Musikabruf, intelligente Hardware usw. Derzeit decken die Spracherkennung und Sprachsynthese von Volcano Engine mehrere Sprachen und Dialekte ab und bieten führende Sprachfunktionen für Douyin, Jianying, Feishu, Tomato Novels, Pico und andere eignet sich für verschiedene Szenarien wie Kurzvideos, Live-Übertragungen, Videoerstellung, Büro- und tragbare Geräte. Referenzen [1] Baevski, A., Zhou, Y., Mohamed, A. und Auli, M., 2020. wav2vec 2.0: Ein Rahmen für selbstüberwachtes Lernen von Sprachdarstellungen in Neural Information Processing Systems, 33, S. 12449–12460. , 2021. Hubert: Selbstüberwachtes Sprachrepräsentationslernen durch maskierte Vorhersage versteckter Einheiten, 29, S. 3451-3460. [3] Graves, A., Fernández, S., Gomez, F. und Schmidhuber, J., 2006, Juni. Konnektionistische zeitliche Klassifizierung: Kennzeichnung unsegmentierter Sequenzdaten mit wiederkehrenden neuronalen Netzen (S. 369 – 376). [4] Chan, W., Jaitly, N., Le, Q. und Vinyals, O., 2016, März. Ein neuronales Netzwerk für Konversationssprache mit großem Wortschatz Anerkennung. Im Jahr 2016 IEEE International Conference on Acoustics, Speech and Signal Processing (ICASSP) (S. 4960-4964). [5] Graves, A., 2012. Sequenztransduktion mit rekurrenten neuronalen Netzen. arXiv Preprint arXiv:1211.3711. [6] He, K., Chen, X., Xie, S., Li, Y., Dollár, P. und Girshick, R., 2022. Maskierte Autoencoder sind Skalierbare Vision-Lernende. In Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition (S. 16000-16009). [7] Baevski, A., Hsu, W.N., Xu, Q., Babu, A., Gu, J. und Auli, M., 2022. Data2vec: Ein allgemeiner Rahmen für selbstüberwachtes Lernen in Sprache, Vision und Sprache. arXiv-Vorabdruck arXiv:2202.03555. [8] Conneau, A., Baevski, A., Collobert, R., Mohamed, A. und Auli, M., 2020. Unüberwachtes sprachübergreifendes Repräsentationslernen Erkennung. arXiv-Vorabdruck arXiv:2006.13979. [9] Lu, Y., Huang, M., Qu, X., Wei, P. und Ma, Z., 2022, Mai. Sprachadaptives, sprachübergreifendes Sprachrepräsentationslernen mit dünn besetzten Teilnetzwerken. In ICASSP 2022-2022 IEEE International Conference on Acoustics, Speech and Signal Processing (ICASSP) (S. 6882-6886). IEEE. [10] Park, D.S., Zhang, Y., Jia, Y., Han, W., Chiu, C.C., Li, B., Wu, Y. und Le, Q.V., 2020. Verbessertes Training lauter Schüler für die automatische Spracherkennung. arXiv-Vorabdruck arXiv:2005.09629.Algorithmusoptimierung
Engineering-Optimierung
Zusammenfassung und Ausblick
Das obige ist der detaillierte Inhalt vonEine eingehende Untersuchung der Implementierung unbeaufsichtigter Pre-Training-Technologie und „Algorithmusoptimierung + technische Innovation' von Huoshan Voice. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!