Angepasste Akustikmodelle und angepasste Sprachmodelle kombiniert verwenden
Die Akustikmodellanpassung ist nur für Modelle der vorherigen Generation verfügbar. Es ist nicht für Sprachmodelle der nächsten Generation und große Sprachmodelle verfügbar.
Sie können die Genauigkeit bei der Spracherkennung verbessern, indem Sie angepasste Sprachmodelle und angepasste Akustikmodelle kombiniert einsetzen. Beide Modelltypen können Sie während des Trainings Ihres Akustikmodells und/oder während der Spracherkennung verwenden. Die angepassten Sprachmodelle und die angepassten Akustikmodelle müssen Eigentum derselben Serviceinstanz sein und dasselbe Basissprachmodell anpassen.
Angepasstes Akustikmodell mit einem angepassten Sprachmodell trainieren
Mit den folgenden Begriffen wird unterschieden, wie ein angepasstes akustisches Modell trainiert wird, ohne Sprachmodell oder mit einem angepassten Sprachmodell:
- Nicht überwachtes Training bezeichnet das Training eines angepassten Akustikmodells ausschließlich mit Audiodaten. Das Training eines angepassten Akustikmodells ausschließlich mit Audiodaten kann die Transkriptionsqualität verbessern, wenn die Merkmale der Audiodaten des angepassten Modells mit den Merkmalen der Audiodaten übereinstimmen, die transkribiert werden.
- Mäßig überwachtes Training bezeichnet das Training eines angepassten Modells mit einem ergänzenden (unterstützenden) angepassten Sprachmodell. Mäßig überwachtes Training ist effektiver bei der Verbesserung der Spracherkennung als nicht überwachtes Training.
Verwenden Sie das mäßig überwachte Training in den folgenden Fällen:
-
Wenn Sie ein angepasstes Sprachmodell haben, das Transkriptionen Ihrer Audiodateien enthält.
Das Transkribieren Ihrer Audiodaten ist nicht unbedingt erforderlich. Das Training mit einem angepassten Sprachmodell, dessen Korpora auf Transkriptionen Ihrer Audiodateien basieren, kann jedoch die Spracherkennung verbessern. Dies gilt insbesondere dann, wenn die Audiodaten vokabularexterne Wörter (Out-Of-Vocabulary, OOV) enthalten, die im Grundvokabular des Service nicht auffindbar sind. Der Service kann den Inhalt der Transkriptionen in ihrem Kontext analysieren und vokabularexterne Wörter sowie N-Gramme extrahieren, mit deren Hilfe er Ihre Audiodaten am effizientesten nutzen kann.
-
Wenn Sie ein angepasstes Sprachmodell haben, das auf Korpora oder Wörtern basiert, die für den Inhalt Ihrer Audiodateien relevant sind.
Falls Sie keine Transkriptionen Ihrer Audiodateien besitzen, können Sie das Training mit einem angepassten Sprachmodell durchführen, das vokabularexterne Wörter aus demselben Fachgebiet wie Ihre Audiodaten enthält. Ein Training mit einem angepassten Sprachmodell, das in den Audiodaten verwendete vokabularexterne Wörter enthält, kann die Spracherkennung verbessern.
Beispiel: Sie erstellen ein angepasstes Akustikmodell, das auf Audiodaten aus einem Call-Center für bestimmte Produkte basiert. Sie können das angepasste Akustikmodell am besten mit einem angepassten Sprachmodell trainieren, das auf Transkriptionen von zugehörigen Anrufen basiert. Sind keine Transkriptionen verfügbar, können Sie zumindest mit einem angepassten Sprachmodell trainieren, das nur die Namen bestimmter Produkte enthält, die vom Call-Center betreut werden.
Richtlinien zur Verwendung von mäßig überwachtem Training
Befolgen Sie die folgenden Richtlinien, wenn Sie Transkriptionen der Audiodateien des akustischen Modells besitzen:
-
Erstellen Sie ein dediziertes angepasstes Sprachmodell, dessen einziger Zweck es ist, dieses konkrete angepasste Akustikmodell zu trainieren. Das dedizierte Helpermodell kann mehrere Transkriptionen für mehrere Audiodateien desselben angepassten akustischen Modells enthalten. Es kann auch angepasste Wörter enthalten, die für die Audiodateien relevant sind, obwohl Transkriptionen für das Training des angepassten akustischen Modells effektiver sind.
-
Verwenden Sie das dedizierte angepasste Sprachmodell ausschließlich zum Training des angepassten akustischen Modells. Sobald das angepasste akustische Modell trainiert ist, braucht das angepasste Sprachmodell nur zum Aktualisieren der Audiodateien in dem Akustikmodell verwendet zu werden.
-
Fügen Sie Transkriptionen Ihrer Audiodateien als Korpora zu dem angepassten Sprachmodell hinzu. Ein Korpus muss nicht unbedingt nur einen einzigen Satz pro Zeile enthalten. Aber wie bei allen Korpora kann ein Service einen Korpus erheblich besser nutzen, wenn dieser jeden Satz in einer eigenen Zeile enthält. Generell sind kürzere Äußerungen, die sich in separaten Zeilen des Korpus befinden, am effektivsten.
-
Es ist weder notwendig noch möglich, einen bestimmten Korpus einer bestimmten Audiodatei zuzuordnen. Ein angepasstes Sprachmodell kann mehrere Korpora enthalten, genauso wie ein angepasstes akustisches Modell mehrere Audiodateien enthalten kann. Der gesamte Inhalt eines angepassten Sprachmodells hilft, die interne Transkription der Audiodaten zu verbessern, die der Service während des Trainings generiert.
-
Eine Transkription muss keine wörtliche Wiedergabe aller Sätze und Wörter der Audiodaten sein. Sie kann auch nur die für das Fachgebiet relevanten Sätze und Wörter der Audiodaten enthalten. Für die Anpassung des Sprachmodells und des Akustikmodells müssen die Trainingsdaten den tatsächlichen Anwendungsfall der Sprache wiedergeben, die Sie erkennen möchten. Wenn sich nur 20 Prozent der (Transkriptions- oder Audio-)Daten auf das Fachgebiet des Anwendungsfalls beziehen, verwenden Sie nur diese 20 Prozent der Daten für das Training.
Wenn Sie jedoch mit der Akustikmodellanpassung bessere Ergebnisse bei Sprache mit Akzent erzielen möchten (z. B. bei Sprache von Nichtmuttersprachlern), sollten Sie so viele Audiodaten wie möglich behalten, auch wenn sie für das Fachgebiet nicht relevant sind. Dasselbe gilt, wenn Sie mit der Anpassung des Akustikmodells die Genauigkeit der Spracherkennung unter schwierigen akustischen Bedingungen verbessern möchten, z. B. bei einem lauten Hintergrund.
-
Eine wörtliche Transkription muss nicht die Unflüssigkeiten, verbalen Ticks und Füllwörter enthalten, die in der menschlichen Sprache üblich sind. Sie können diese Elemente aus der Transkription und/oder den Audiodaten entfernen. (Sie können auch Audiodaten entfernen, bei denen die Personen gleichzeitig reden, da das nicht zum Training beiträgt.)
Beispiel: Eine wörtliche Transkription könnte den folgenden Satz enthalten:
So that's, uhm, you know, that, as I say, is the is the predominant form today.
Sie können diese Eigenheiten in der Transkription und/oder in den Audiodaten bearbeiten und den folgenden Satz erstellen:
So that as I say is the predominant form today.
Mäßig überwachtes Training durchführen
Zum Trainieren eines angepassten Akustikmodells mit einem angepassten Sprachmodell verwenden Sie den optionalen Abfrageparameter custom_language_model_id
der Methode POST /v1/acoustic_customizations/{customization_id}/train
.
Übergeben Sie die GUID des Akustikmodells mit dem Parameter customization_id
und die GUID des angepassten Sprachmodells mit dem Parameter custom_language_model_id
. Beide Modelle müssen Eigentum der Berechtigungsnachweise
sein, die mit der Anforderung übergeben werden.
- Stellen Sie sicher, dass das angepasste Sprachmodell vollständig trainiert ist und sich im Status
available
befindet. Das Training schlägt fehl, wenn das angepasste Sprachmodell nichtavailable
ist. - Stellen Sie sicher, dass beide angepassten Modelle auf der gleichen Version desselben Basismodells basieren. Falls eine neue Version des Basismodells verfügbar gemacht wird, müssen Sie für beide Modelle ein Upgrade auf dieselbe Version des Basismodells durchführen, damit das Training erfolgreich verläuft. Weitere Informationen finden Sie im Abschnitt Upgrade für angepasste Modelle durchführen.
Beispiel für das Training mit begrenzter Überwachung
Die folgende Beispielanforderung veranschaulicht die Verwendung eines angepassten Sprachmodells zum Trainieren eines angepassten Akustikmodells:
IBM Cloud
curl -X POST -u "apikey:{apikey}" \
"{url}/v1/acoustic_customizations/{customization_id}/train?custom_language_model_id={customization_id}"
IBM Cloud Pak for Data IBM Software Hub
curl -X POST \
--header "Authorization: Bearer {token}" \
"{url}/v1/acoustic_customizations/{customization_id}/train?custom_language_model_id={customization_id}"
Angepasste Sprach- und Akustikmodelle für die Spracherkennung verwenden
Bei jeder Spracherkennungsanforderung können Sie sowohl ein angepasstes Sprachmodell als auch ein angepasstes Akustikmodell angeben. Falls Ihre Audiodaten fachspezifische vokabularexterne Wörter enthalten, können diese Wörter während der Transkription nicht allein durch die Akustikmodellanpassung zuverlässig erzeugt werden. Das Grundvokabular des Service kann einzig durch die Verwendung eines angepassten Sprachmodells erweitert werden, das vokabularexterne Wörter aus dem Fachgebiet der Audiodaten enthält.
Die Verwendung eines angepassten Sprachmodells kann die Transkriptionsgenauigkeit unabhängig davon verbessern, ob Sie das angepasste Akustikmodell mit dem angepassten Sprachmodell trainiert haben:
- Die kombinierte Verwendung eines angepassten Sprachmodells und eines angepassten Akustikmodells während des Trainings verbessert die Qualität des angepassten Akustikmodells.
- Durch die Verwendung beider Modelltypen während der Spracherkennung wird die Transkriptionsqualität verbessert.
Falls ein angepasstes Sprachmodell Grammatiken einbezieht, können Sie auch das angepasste Sprachmodell und eine seiner Grammatiken während der Spracherkennung zusammen mit einem angepassten Akustikmodell verwenden.
Verwenden Sie für eine Spracherkennungsanforderung die Parameter acoustic_customization_id
und language_customization_id
, um die GUIDs der angepassten Akustik- und Sprachmodelle für die Anforderung zu übergeben. Eigner
der beiden angepassten Modelle müssen die in der Anforderung übergebenen Berechtigungsnachweise sein. Außerdem müssen beide Modelle auf demselben Basismodell (z. B. en-US_BroadbandModel
) basieren und den Status available
aufweisen.
Weitere Informationen zu den Auswirkungen von Upgrades für angepasste Modell auf die Spracherkennung für beide Typen angepasster Modelle finden Sie unter Hinweise zur gemeinsamen Verwendung angepasster Akustik- und Sprachmodelle.
Beispiel für die gemeinsame Verwendung angepasster Sprach- und Akustikmodelle
Die folgende Beispielanforderung übergibt angepasste Akustikmodelle und angepasste Sprachmodelle an die HTTP-Methode POST /v1/recognize
:
IBM Cloud
curl -X POST -u "apikey:{apikey}" \
--header "Content-Type: audio/flac" \
--data-binary @audio-file1.flac \
"{url}/v1/recognize?acoustic_customization_id={customization_id}&language_customization_id={customization_id}"
IBM Cloud Pak for Data IBM Software Hub
curl -X POST \
--header "Authorization: Bearer {token}" \
--header "Content-Type: audio/flac" \
--data-binary @audio-file1.flac \
"{url}/v1/recognize?acoustic_customization_id={customization_id}&language_customization_id={customization_id}"
Bei einer asynchronen HTTP-Anforderung geben Sie die Parameter an, wenn Sie den asynchronen Job erstellen. Bei WebSocket-Anforderungen übergeben Sie die Parameter, wenn Sie eine Verbindung herstellen. Weitere Informationen finden Sie unter Angepasstes Sprachmodell für die Spracherkennung verwenden und unter Angepasstes Akustikmodell für die Spracherkennung verwenden.