Sprechaktivitätserkennung
Der IBM Watson® Speech to Text-Service stellt zwei Parameter für die Erkennung von Sprachaktivitäten bereit, mit denen Sie steuern können, welche Audiodaten für die Spracherkennung verwendet werden. Diese Parameter geben die Sensitivität des Service für nichtsprachliche Ereignisse und für Nebengeräusche an. Beide Parameter sind unabhängig voneinander, d. h. sie können einzeln oder zusammen verwendet werden.
Die Sprechaktivitätserkennung wird bei den meisten Sprachmodellen unterstützt. Weitere Informationen finden Sie im Abschnitt Sprachmodellunterstützung.
Funktionsweise der Erkennung von Sprachaktivitäten
Die Sprechaktivitätserkennung verarbeitet den eingehenden Audiodatenstrom und stellt fest, welche Teile des Datenstroms an die Spracherkennung übergeben werden sollen. Die Spracherkennung ist aber von Hintergrundgeräuschen und Nebengesprächen betroffen, wodurch der Service möglicherweise die falschen Wörter transkribiert, Wörter erzeugt, wo keine vorhanden sind, oder Wörter auslässt, die Teil der Audioeingabe sind. Die Funktion zur Erkennung von Sprechaktivitäten kann Sie dabei unterstützen, sicherzustellen, dass nur relevante Audiodaten für die Spracherkennung verarbeitet werden.
Sie können die Funktion verwenden, um die folgenden Aspekte der Spracherkennung zu steuern:
- Nebengespräche unterdrücken Call-Center-Daten enthalten häufig Nebengespräche, also das Mithören von Gesprächen anderer Mitarbeiter. Sie können einen Datenträgerschwellenwert festlegen, unter dem solche Nebengespräche ignoriert werden.
- Hintergrundgeräusche unterdrücken Einige Audiodaten wie beispielsweise Sprachaufnahmen in einer Produktionshalle können einen hohen Anteil an Hintergrundgeräuschen enthalten. Sie können einen Schwellenwert festlegen, unter dem solche Hintergrundgeräusche ignoriert werden.
- Nichtsprachliche Audioereignisse unterdrücken Hintergrundmusik und Tonereignisse wie beispielsweise die einem Kunden bei einem Anruf in der Warteschleife vorgespielte Audiodatei können zu fehlerhafter Spracherkennung führen. Sprechpausen und Schweigen können ebenfalls zu einer unnötigen Erkennung oder zu Fehlern bei der Transkription führen. Sie können einen Schwellenwert festlegen, unter dem solche Ereignisse ignoriert werden.
Die Sprechaktivitätserkennung ist standardmäßig so konfiguriert, dass eine optimale Leistung für den allgemeinen Fall eines jeden Modells bereitgestellt wird. Für bestimmte Fälle ist dieser Standard möglicherweise nicht optimal und kann zu einer langsamen Transkription oder zu Worteinfügungen und Wortauslassungen führen. Sie sind aufgefordert, mit unterschiedlichen Einstellungen zu experimentieren, um die besten Werte für Ihre Audiodaten zu ermitteln.
Sensitivität des Sprachdetektors
Mit dem Parameter speech_detector_sensitivity
können Sie die Sensitivität für die Erkennung von Sprachaktivitäten anpassen. Verwenden Sie den Parameter, um Worteinfügungen aus Musik oder durch Husten oder andere nichtsprachliche
Ereignisse zu unterdrücken. Der Service trifft eine Vorauswahl der Audiodaten, die er an die Spracherkennung übergibt, indem er Blöcke der Audioeingabe mit früheren Sprachmodellen und nichtsprachlichen Aktivitäten abgleicht.
Geben Sie einen Gleitkommawert zwischen 0,0 und 1,0 ein. Der Standardwert beträgt 0,5, was einen angemessenen Kompromiss für die Empfindlichkeitsstufe darstellt. Der Wert 0,0 unterdrückt alle Audiodaten. (Es wird keine Sprache transkribiert.)
Der Wert 1,0 unterdrückt keine Audiodaten. (Die Sensitivität der Spracherkennung ist inaktiviert.) Die Werte steigen in einer monotonen Kurve der Empfindlichkeit versus Sprache an. Die Angabe einer oder zweier Dezimalstellen für die Genauigkeit
(z. B. 0.55
) ist in der Regel mehr als ausreichend.
Dieser Parameter kann sowohl die Qualität als auch die Latenzzeit der Spracherkennung beeinflussen.
- Niedrigere Werte können die Latenzzeit verringern, weil potenziell weniger Audiodaten zur Spracherkennung übergeben werden. Eine niedrige Einstellung kann jedoch Audioblöcke löschen, die tatsächlich Sprache enthalten. Auf diese Weise geht brauchbarer Inhalt in der Transkription verloren.
- Höhere Werte können die Latenzzeit erhöhen, da potenziell mehr Audiodaten zur Spracherkennung übergeben werden. Eine höhere Einstellung kann jedoch Audioblöcke übergeben, die nichtsprachliche Ereignisse enthalten. Auf diese Weise wird störender Inhalt zur Transkription hinzugefügt.
Beispiel für die Sensitivität des Sprachdetektors
Die folgende Beispielanforderung gibt den Wert 0,6 für den Parameter speech_detector_sensitivity
an der synchronen HTTP-Schnittstelle an. Der Service erkennt etwas mehr potenzielle nichtsprachliche Ereignisse als bei der Standardeinstellung.
IBM Cloud
curl -X POST -u "apikey:{apikey}" \
--header "Content-Type: audio/flac" \
--data-binary @{path}audio-file1.flac \
"{url}/v1/recognize?speech_detector_sensitivity=0.6"
IBM Cloud Pak for Data IBM Software Hub
curl -X POST \
--header "Authorization: Bearer {token}" \
--header "Content-Type: audio/flac" \
--data-binary @{path}audio-file1.flac \
"{url}/v1/recognize?speech_detector_sensitivity=0.6"
Nebengeräuschunterdrückung
Mit dem Parameter background_audio_suppression
können Nebengeräusche basierend auf der Lautstärke unterdrückt werden, um zu verhindern, dass Sie als Sprechereignisse transkribiert werden. Verwenden Sie diesen Parameter, um Nebengespräche
oder Hintergrundgeräusche zu unterdrücken. Verwenden Sie diesen Parameter zum Beispiel, wenn ein relativ gleichmäßiges und leises (geringe Signalstärke) Hintergrundgeräusch vorliegt. Solche Geräusche können die Transkription stören und Inhalte
produzieren, wo tatsächlich keine Sprache in den Audiodaten vorhanden ist.
Geben Sie einen Gleitkommawert im Bereich von 0,0 bis 1,0 an. Der Standardwert ist 0,0. Bei diesem Wert erfolgt keine Unterdrückung. (Die Unterdrückung von Hintergrundaudiosignale ist inaktiviert.) Der Wert 0,5 bietet eine angemessene Stufe
der Geräuschunterdrückung für allgemeine Zwecke. Der Wert 1,0 unterdrückt alle Audiosignale. (Es wird keine Sprache transkribiert.) Die Werte steigen in einer monotonen Kurve an. Die Angabe einer oder zweier Dezimalstellen für die Genauigkeit
(z. B. 0.55
) ist in der Regel mehr als ausreichend.
Dieser Parameter kann sowohl die Qualität als auch die Latenzzeit der Spracherkennung beeinflussen. Da jedoch die Unterdrückung von Hintergrundgeräuschen standardmäßig inaktiviert ist, kann die Einstellung des Parameters auf einen Wert größer Null die Latenzzeit nur verbessern. Höhere Werte können aber graduell die Audiodaten reduzieren, die an die Spracherkennung übergeben werden, was zum Verlust von gültigem Inhalt in der Transkription führen kann.
Beispiel für Nebengeräuschunterdrückung
Die folgende Beispielanforderung gibt den Wert 0,5 für den Parameter background_audio_suppression
an der synchronen HTTP-Schnittstelle an. Der Service unterdrückt auf einer angemessenen Stufe die Hintergrundaudiosignale.
IBM Cloud
curl -X POST -u "apikey:{apikey}" \
--header "Content-Type: audio/flac" \
--data-binary @{path}audio-file1.flac \
"{url}/v1/recognize?background_audio_suppression=0.5"
IBM Cloud Pak for Data IBM Software Hub
curl -X POST \
--header "Authorization: Bearer {token}" \
--header "Content-Type: audio/flac" \
--data-binary @{path}audio-file1.flac \
"{url}/v1/recognize?background_audio_suppression=0.5"
Sprachmodellunterstützung
Die Parameter speech_detector_sensitivity
und background_audio_suppression
werden für die Verwendung mit den folgenden Sprachmodellen unterstützt:
- Bei großen Sprachmodellen und Modellen der nächsten Generation werden die Parameter bei allen Modellen unterstützt.
- Modelle der vorherigen Generation: Die Parameter werden für die meisten Modelle unterstützt. Die folgenden Modelle bieten derzeit keine Unterstützung für die Erkennung von Sprachaktivitäten. Die Parameter werden ignoriert,
wenn Sie mit diesen Modellen verwendet werden.
- Breitbandmodell für Arabisch (
ar-MS_BroadbandModel
) - Brasilianisches Portugiesisch, Breitbandmodell (
pt-BR_BroadbandModel
) - Chinesisch, Breitbandmodell (
zh-CN_BroadbandModel
) - Chinesisch, Schmalbandmodell (
zh-CN_NarrowbandModel
) - Deutsch, Schmalbandmodell (
de-DE_BroadbandModel
)
- Breitbandmodell für Arabisch (