Warum eine Engine nicht reicht: mehr Engines helfen nur, wenn sie an anderen Stellen scheitern
· Zeyu Si
Auf dieser Seite
Wir haben einen Vergleich an einem 42-minütigen Business-Interview durchgeführt. Ein Transkript kam direkt aus ElevenLabs. Das andere lief durch unsere komplette Pipeline. Die beiden waren zu 91% identisch.
Die restlichen 9% waren genau der Teil, der Forschenden am wichtigsten ist.
„Größtenteils richtig“ ist der gefährliche Teil
Wir haben 19 Schlüsselbegriffe aus dem Interview herausgesucht: Markennamen, Modellnummern, Ortsnamen, Branchenjargon. Im Transkript direkt aus der Engine waren 10 falsch, 4 teilweise falsch und 5 richtig. Ein Markenname kam sechsmal vor und wurde kein einziges Mal richtig geschrieben. Jedes Mal wurde daraus ein gewöhnliches Wort, das ähnlich klang und etwas völlig anderes bedeutete.
Um ElevenLabs gerecht zu werden: An diesem Tag hat es gut abgeschnitten. Nichts ist zusammengebrochen, nichts ging verloren, und die Sprecher hat es in etwa 98% der Fälle richtig zugeordnet. Als Ganzes betrachtet, würde man kaum etwas zu bemängeln finden.
Genau das ist das Problem. Wer einen flüssigen Satz liest, hat keinen Grund, das Substantiv mitten darin anzuzweifeln. Und die drei anderen Engines, die wir zur Hand hatten, haben dieselben Begriffe ebenfalls falsch geschrieben. Es geht also nicht darum, dass eine Engine schlecht ist. Sondern darum, dass jede Engine für sich allein Fachbegriffe falsch hört, die ihr noch nicht begegnet sind.
Unsere eigene „Optimierung“ war nur Kartenmischen
Bevor wir Audio an eine Engine schicken, teilen wir es in Abschnitte und normalisieren das Format. Wir gingen davon aus, dass das die Genauigkeit verbessert.
Es hat 22 Dinge repariert und 25 kaputt gemacht. Ungefähr ein Münzwurf.
Irgendwann fanden wir heraus, warum. Diese Engine reagiert sehr empfindlich darauf, an welcher Stelle im Audio sie anfängt zuzuhören. Dieselbe Modellnummer kam als „X6“ heraus, wenn der Abschnitt bei null Sekunden begann, und ausgeschrieben als „X-six“, wenn er bei 1:30 begann. Selbst das unbearbeitete Transkript war nicht konsistent: „X-six“ in den ersten 32 Minuten, danach „X6“.
Um dahin zu kommen, brauchte es drei kontrollierte Experimente, von denen jedes eine naheliegende Erklärung ausschloss: Es lag nicht an der Länge der Datei, nicht am Audioformat und nicht an der Spracheinstellung. Hätten wir bei der ersten plausiblen Antwort aufgehört, hätten wir die falsche Ursache in unsere eigene Dokumentation geschrieben.
Was das Transkript wirklich verbessert hat: Engines, die einander prüfen
Drei andere Engines transkribieren dasselbe Audio, und wir vergleichen alle miteinander, mit einem Glossar der Fachbegriffe. Von den 25 Dingen, die unser Aufteilen kaputt gemacht hatte, wurden 14 zurückgewonnen, also 56%.
Die Modellnummer hat sich auf dieselbe Weise geklärt. Eine andere Engine schrieb jedes einzelne Mal „X6“, sodass das endgültige Transkript immer dann, wenn die Haupt-Engine danebenlag, trotzdem auf die richtige Form zurückgreifen konnte.
Wo die Engines es nicht klären können, entscheiden wir nicht für den Leser. Wir markieren die Stelle als unsicher, damit jemand genau diese Sekunde anhören kann. Dieses Interview hatte 7 Markierungen.
Mehr Engines sind nicht automatisch besser
Man ist versucht zu schließen, dass mehr Engines bessere Ergebnisse bedeuten. Wir haben das getestet. Es stimmt nicht.
Wir haben acht Open-Source-Engines für Chinesisch lokal laufen lassen und abstimmen lassen. Das Ergebnis war schlechter als die beste einzelne Engine für sich allein. Die meisten der acht stammten vom selben Unternehmen und waren auf stark überlappenden Daten trainiert, sodass sie tendenziell an denselben Wörtern scheiterten. Die Abstimmung hat diese Fehler nicht korrigiert. Sie hat sie festgeschrieben.
Der Wechsel zu vier Engines, die auf vier unterschiedlichen technischen Ansätzen beruhen, änderte das. Zwischen je zwei von ihnen lagen nur 32.6% bis 45.8% der Fehler an derselben Stelle, und zusammen schlugen sie jede einzelne klar.
Wenn wir also unterstützende Engines für eine Sprache auswählen, fragen wir nicht nur, wie genau jede einzelne ist. Wir fragen, ob sie an anderen Stellen scheitert als die Haupt-Engine. Koreanisch ist ein Beispiel. Eine Engine sah für sich allein gut aus, aber ihre schlimmsten Fehler waren nahezu identisch mit denen der anderen beiden: Alle drei schrieben dieselben Wörter auf dieselbe Weise falsch. Wir haben sie durch Soniox ersetzt, dessen Fehler sich weniger überschnitten.
Noch etwas hat uns vorsichtig gemacht. Als AssemblyAI eine neue Version veröffentlichte, sank die angegebene Fehlerrate für gemischtsprachiges Audio von 9.07% in der vorherigen Generation auf 7.69%. Wir haben sie in sechs unserer Sprachen Wort für Wort geprüft. Jede einzelne war entweder schlechter oder nicht besser: Die neue Version fügte Wörter hinzu, die niemand gesagt hatte. Ein englischer Satz bekam ein „Bruh“ dazu. Aus einem italienischen „50,000 lire“ wurden „50 million“. Nach der Fehlerrate sahen fast alle sechs wie Verbesserungen aus, weil ein zusätzliches Wort diese Kennzahl kaum bewegt. Die offizielle Dokumentation lieferte die Erklärung: Die neue Version verwendet einen Decoder im Stil eines großen Sprachmodells. Wir sind auf eine ältere Version zurückgegangen.
Die Bewertung eines Anbieters misst die Bedingungen, die der Anbieter gewählt hat. Sie ist nicht Ihr Interview.
Wo wir noch verlieren
Nachdem wir für mehrere Engines argumentiert haben, hier das, was wir falsch gemacht haben.
Das endgültige Transkript hatte immer noch 10 Fehler, alles Alltagswörter. In einem davon sagte die befragte Person „meine Frau“, und im Transkript stand „meine Schwester“.
Bei dreimal derselben Eingabe hat unser Vergleichsschritt 0, 3 und 3 Fehler zurückgewonnen. Auch in diesem Schritt steckt Zufall.
Wir haben versucht, die Vergleichsregeln zu ändern, und einen A/B-Test durchgeführt. Es hat nicht geholfen, also haben wir es zurückgenommen. Als wir weiter gruben, lag das Problem gar nicht in den Regeln, sondern einen Schritt früher, beim Alignment. Das richtige Wort stand in einigen der unterstützenden Transkripte, aber weil die Abschnittsgrenzen nicht übereinstimmten, kam es nie beim Vergleich an. Wenn die richtige Antwort nicht in der Eingabe steht, kann keine Regel sie auswählen.
Das haben wir noch nicht vollständig gelöst. Wir erwähnen es, weil es dieselbe Lehre ist wie alles oben: Mehrere Engines sind nur so viel wert wie die Belege, die man tatsächlich heranziehen kann.
Von Zeyu Si