Freigeben über


Bewährte Methoden für Sprachmodellschulungen

Hinweis

Die Anpassung des Sprachmodells, einschließlich der Ausspracheschulung, wird nur in Azure-Testkonten und Ressourcen-Manager-Konten von Videoindexer unterstützt. Es wird in klassischen Konten nicht unterstützt. Anleitungen zum Aktualisieren Ihres Kontotyps ohne Kosten finden Sie im Update Ihres Azure AI Video Indexer-Kontos. Anleitungen zur Verwendung der benutzerdefinierten Sprachoberfläche finden Sie unter Anpassen eines Sprachmodells.

Durch die Integration von Azure AI Video Indexer in Azure AI Speech-Dienste wird ein Universelles Sprachmodell als Basismodell verwendet, das mit Microsoft-eigenen Daten trainiert wird und häufig verwendete gesprochene Sprache widerspiegelt. Das Basismodell wird mit Dialekten und Phonemen vortrainiert, die verschiedene gängige Gebiete repräsentieren. Das Basismodell funktioniert in den meisten Spracherkennungsszenarien gut.

Manchmal behandelt die Transkription des Basismodells jedoch einige Inhalte nicht genau. In diesen Situationen kann ein angepasstes Sprachmodell verwendet werden, um die Erkennung von domänenspezifischen Vokabularen oder Aussprachen zu verbessern, die für Ihren Inhalt spezifisch sind, indem Textdaten bereitgestellt werden, um das Modell zu trainieren. Durch den Prozess der Erstellung und Anpassung von Sprachanpassungsmodellen können Ihre Inhalte ordnungsgemäß transkribiert werden. Es gibt keine zusätzlichen Gebühren für die Verwendung der Sprachanpassung von Videoindexern.

Wann soll ein angepasstes Sprachmodell verwendet werden?

Wenn Ihre Inhalte branchenspezifische Terminologie enthalten oder wenn Sie die Ergebnisse der Videoindexer-Transkription überprüfen, bemerken Sie Ungenauigkeiten, können Sie ein benutzerdefiniertes Sprachmodell erstellen und trainieren, um die Begriffe zu erkennen und die Transkriptionsqualität zu verbessern. Es kann nur sinnvoll sein, ein benutzerdefiniertes Modell zu erstellen, wenn die relevanten Wörter und Namen in den Inhalten, die Sie indizieren möchten, wiederholt angezeigt werden sollen. Das Trainieren eines Modells ist manchmal ein iterativer Prozess, und Möglicherweise stellen Sie fest, dass die Ergebnisse nach der ersten Schulung immer noch Verbesserungen verwenden könnten und von zusätzlichen Schulungen profitieren würden, siehe Abschnitt "Verbessern Ihres benutzerdefinierten Modells ", um Anleitungen zu erhalten.

Wenn Sie jedoch ein paar Wörter oder Namen bemerken, die im Transkript falsch transkribiert wurden, ist möglicherweise kein benutzerdefiniertes Sprachmodell erforderlich, insbesondere, wenn die Wörter oder Namen nicht in der Regel in Inhalten verwendet werden, die Sie in Zukunft indizieren möchten. Sie können die Transkription einfach auf der Videoindexer-Website bearbeiten und korrigieren (siehe Anzeigen und Aktualisieren von Transkriptionen auf der Azure AI Video Indexer-Website) und müssen sie nicht über ein benutzerdefiniertes Sprachmodell adressieren.

Eine Liste der Sprachen, die benutzerdefinierte Modelle und Aussprache unterstützen, finden Sie in den Spalten "Anpassung" und "Aussprache" der Sprachunterstützungstabelle in der Sprachunterstützung in Azure AI Video Indexer.

Trainieren von Datasets

Beim Indizieren eines Videos können Sie ein angepasstes Sprachmodell verwenden, um die Transkription zu verbessern. Modelle werden trainiert, indem sie mit Datasets geladen werden, die Nur-Text-Daten und Aussprachedaten enthalten können.

Text, der zum Testen und Trainieren eines benutzerdefinierten Modells verwendet wird, sollte Beispiele aus einer Vielzahl von Inhalten und Szenarien enthalten, die Ihr Modell erkennen soll. Berücksichtigen Sie beim Erstellen und Trainieren Ihrer Datasets die folgenden Faktoren:

  • Fügen Sie Text ein, der die Arten von verbalen Aussagen abdeckt, die Ihre Benutzer vornehmen, wenn sie mit Ihrem Modell interagieren. Wenn Ihre Inhalte z. B. in erster Linie mit einem Sport zusammenhängen, trainieren Sie das Modell mit Inhalten, die Terminologie und Gegenstand im Zusammenhang mit dem Sport enthalten.
  • Alle Sprachvarianten müssen enthalten sein, die von Ihrem Modell erkannt werden sollen. Viele Faktoren können die Sprache variieren, einschließlich Akzente, Dialekte und Sprachmischungen.
  • Fügen Sie nur Daten hinzu, die für Inhalte relevant sind, die Sie für die Transkription planen. Das Einschließen anderer Daten kann die Erkennungsqualität insgesamt beeinträchtigen.

Datasettypen

Es gibt zwei Datasettypen, die Sie für die Anpassung verwenden können. Nutzen Sie die folgende Tabelle, um zu bestimmen, welches Dataset zum Beheben Ihrer Probleme verwendet werden soll:

Anwendungsfall Datentyp
Verbessern der Erkennungsgenauigkeit für branchenspezifisches Vokabular und entsprechende Grammatik (z. B. aus der Medizin- oder IT-Branche). Nur-Text
Definieren der phonetischen und angezeigten Form eines Worts oder Begriffs mit nicht standardmäßiger Aussprache (beispielsweise Produktnamen oder Akronyme) Aussprachedaten

Nur-Text-Daten für das Training

Ein Dataset, das Nur-Text-Sätze verwandter Texte enthält, kann verwendet werden, um die Erkennung domänenspezifischer Wörter und Ausdrücke zu verbessern. Mit passenden Textsätzen können Ersetzungsfehler reduziert werden, die sich auf die fehlerhafte Erkennung von gängigen und themenspezifischen Wörtern beziehen, indem diese im Kontext dargestellt werden. Bei themenspezifischen Wörtern kann es sich auch um ungewöhnliche oder ausgedachte Wörter handeln, aber ihre Aussprache muss eindeutig sein, damit sie erkannt werden können.

Bewährte Methoden für Nur-Text-Datasets

  • Stellen Sie thematisch verwandte Sätze in einer einzelnen Textdatei zur Verfügung. Statt vollständige Sätze zu verwenden, können Sie eine Liste von Wörtern hochladen. Obwohl dies sie dem Vokabular hinzufügt, lehrt es das System nicht, wie die Wörter in ordnungsmäßiger Weise verwendet werden. Durch die Bereitstellung vollständiger oder teilweiser Äußerungen (Sätze oder Ausdrücke, die von Benutzern üblicherweise verwendet werden) kann das Sprachmodell die neuen Wörter und deren Verwendung lernen. Das benutzerdefinierte Sprachmodell eignet sich nicht nur gut dazu, neue Wörter dem System hinzuzufügen, sondern auch, die Wahrscheinlichkeit bekannter Wörter für Ihre Anwendung anzupassen. Vollständige Äußerungen helfen dem System, besser zu lernen.
  • Verwenden Sie Textdaten, die den erwarteten gesprochenen Äußerungen nahe stehen. Diese Äußerungen müssen keine vollständigen oder grammatikalisch korrekten Sätze sein. Sie müssen aber die gesprochenen Eingaben, die vom Modell erkannt werden sollen, angemessen widerspiegeln.
  • Versuchen Sie, jeden Satz oder Schlüsselwort in einer separaten Zeile zu verwenden.
  • Zum Erhöhen der Gewichtung eines Ausdrucks wie etwa eines Produktnamens fügen Sie mehrere Sätze hinzu, die den Ausdruck enthalten.
  • Bei gängigen Ausdrücken, die in Ihren Inhalten verwendet werden, ist die Bereitstellung vieler Beispiele nützlich, da es dem System angibt, auf diese Begriffe zu lauschen. 
  • Vermeiden Sie ungewöhnliche Symbole (~, # @ % &), wenn sie verworfen werden. Die Sätze, in denen sie angezeigt werden, werden ebenfalls verworfen.
  • Vermeiden Sie zu große Eingaben, z. B. Hunderte von Tausenden von Sätzen, da dadurch die Wirkung der Verstärkung verdünnt wird.

Verwenden Sie diese Tabelle, um sicherzustellen, dass Ihre Nur-Text-Datasetdatei das richtige Format aufweist:

Eigenschaft Wert
Textcodierung UTF-8 BOM
Anzahl von Äußerungen pro Zeile 1
Maximale Dateigröße 200 MB

Versuchen Sie, diese Richtlinien in Ihren Nur-Text-Dateien zu befolgen:

  • Vermeiden Sie wiederholte Zeichen, Wörter oder Gruppen von Wörtern mehr als dreimal, z. B. "Ja ja ja", da der Dienst möglicherweise Zeilen mit zu vielen Wiederholungen ablegen kann.
  • Verwenden Sie keine Sonderzeichen oder UTF-8-Zeichen über U+00A1.
  • URIs werden abgelehnt.
  • Bei bestimmten Sprachen, wie etwa Japanisch oder Koreanisch, kann das Importieren großer Mengen von Textdaten sehr lange dauern oder ein Timeout verursachen. Teilen Sie die hochgeladenen Datasets ggf. auf mehrere Textdateien mit jeweils bis zu 20.000 Zeilen auf.

Aussprachedaten für das Training

Sie können Ihrem benutzerdefinierten Sprachmodell ein benutzerdefiniertes Aussprache-Dataset hinzufügen, um die Erkennung falsch wiedergegebener Wörter, Ausdrücke oder Namen zu verbessern.

Aussprache-Datasets müssen die gesprochene Form eines Worts oder Ausdrucks sowie das erkannte angezeigte Formular enthalten. Die gesprochene Form ist die phonetische Sequenz, die geschrieben wird, z. B. "Triple A". Sie kann aus Buchstaben, Wörtern, Silben oder einer Kombination aus allen drei Buchstaben bestehen. Das erkannte angezeigte Formular ist, wie das Wort oder der Ausdruck in der Transkription angezeigt werden soll. Diese Tabelle enthält einige Beispiele:

Erkannte angezeigte Form Gesprochene Form
3CPO drei c p o
CNTK c n t k
AAA Dreifach A

Sie stellen Aussprache-Datasets in einer einzelnen Textdatei bereit. Schließen Sie jeweils die gesprochene Äußerung und eine benutzerdefinierte Aussprache ein. Jede Zeile in der Datei sollte mit dem erkannten Formular, einem Tabstoppzeichen und der durch Leerzeichen getrennten phonetischen Sequenz beginnen.

3CPO    three c p o 
CNTK    c n t k 
IEEE    i triple e 

Beachten Sie beim Erstellen und Trainieren von Aussprache-Datasets Folgendes:

Es wird nicht empfohlen, benutzerdefinierte Aussprachedateien zu verwenden, um die Aussprache allgemeiner Wörter zu ändern.

Wenn es einige Variationen gibt, wie ein Wort oder Name falsch transkribiert wird, sollten Sie beim Trainieren des Aussprache-Datasets einige oder alle davon verwenden. Wenn Robert beispielsweise fünfMal im Video erwähnt und als Robort, Ropert und Räuber transkribiert wird. Sie können versuchen, alle Variationen in der Datei wie im folgenden Beispiel einzugeben, aber seien Sie vorsichtig, wenn sie mit tatsächlichen Worten wie Räubern wie Räuber im Video erwähnt wird, es wird als Robert transkribiert.

Robert Roport
Robert Ropert
Robert Robbers

Das Aussprachemodell ist nicht dazu gedacht, Akronyme zu adressieren. Wenn Sie z. B. möchten, dass Doctor als Dr. transkribiert wird, kann dies nicht durch ein Aussprachemodell erreicht werden.

Weitere Informationen finden Sie in der folgenden Tabelle, um sicherzustellen, dass Ihre Datasetdateien für die Aussprache gültig und ordnungsgemäß formatiert sind.

Eigenschaft Wert
Textcodierung UTF-8 BOM (ANSI wird für Englisch ebenfalls unterstützt)
Anzahl von Aussprachen pro Zeile 1
Maximale Dateigröße 1 MB (1 KB für Free-Tarif)

Verbessern Ihrer benutzerdefinierten Modelle

Das Trainieren eines Aussprachemodells kann ein iterativer Prozess sein, da Sie nach der ersten Schulung und Auswertung der Ergebnisse Ihres Modells mehr Wissen über die Aussprache des Themas gewinnen können. Da vorhandene Modelle nicht bearbeitet oder geändert werden können, erfordert die Schulung eines Modells iterativ das Erstellen und Hochladen von Datasets mit zusätzlichen Informationen sowie das Trainieren neuer benutzerdefinierter Modelle basierend auf den neuen Datasets. Anschließend würden Sie die Mediendateien mit dem neuen benutzerdefinierten Sprachmodell neu indizieren.

Beispiel:

Angenommen, Sie planen die Indizierung von Sportinhalten und antizipieren Transkriptgenauigkeitsprobleme mit spezifischer Sportterminologie sowie in den Namen von Spielern und Trainern. Vor der Indizierung haben Sie ein Sprachmodell mit einem Nur-Text-Dataset mit Inhalten erstellt, die relevante Sportterminologie und ein Aussprache-Dataset mit einigen Namen des Spielers und Trainers enthalten. Sie indizieren einige Videos mithilfe des benutzerdefinierten Sprachmodells und beim Überprüfen des generierten Transkripts, dass während die Terminologie richtig transkribiert wird, viele Namen nicht. Sie können die folgenden Schritte ausführen, um die Leistung in Zukunft zu verbessern:

  1. Überprüfen Sie das Transkript und notieren Sie alle falsch transkribierten Namen. Sie könnten in zwei Gruppen fallen:

    • Namen, die nicht in der Aussprachedatei enthalten sind.
    • Namen in der Aussprachedatei, aber sie werden immer noch falsch transkribiert.
  2. Erstellen Sie eine neue Datasetdatei. Laden Sie entweder die Aussprache-Datasetdatei herunter, oder ändern Sie das lokal gespeicherte Original. Fügen Sie für Gruppe A die neuen Namen der Datei hinzu, wobei sie falsch transkribiert wurden (Michael Mikel). Fügen Sie für Gruppe B zusätzliche Zeilen hinzu, die jeweils den richtigen Namen aufweisen, und ein eindeutiges Beispiel dafür, wie sie falsch transkribiert wurde. Zum Beispiel:

    Stephen Steven
    Stephen Steafan
    Stephen Steevan

  3. Laden Sie diese Datei als neue Datasetdatei hoch.

  4. Erstellen Sie ein neues Sprachmodell, und fügen Sie das ursprüngliche Nur-Text-Dataset und die neue Aussprache-Datasetdatei hinzu.

  5. Erneutes Indizieren des Videos mit dem neuen Sprachmodell.

  6. Wiederholen Sie bei Bedarf die Schritte 1 bis 5, bis die Ergebnisse zufriedenstellend sind.