IBM Cloud Docs
大規模な音声モデルへのマイグレーション

大規模な音声モデルへのマイグレーション

2023 年 8 月 1 日以降、すべての前世代モデルがサービスから 廃止 されました。 新しいお客様は、大規模な音声モデルまたは次世代モデルのみを使用する必要があります。 すべての既存のお客様は、同等の大規模音声モデルまたは次世代モデルに移行する必要があります。 詳しくは、 大規模音声モデルへのマイグレーション を参照してください。

2023年7月31日のサービス終了日までに、非推奨の旧世代モデルを同等の大型スピーチモデルまたは次世代モデルに移行する必要があります。 次世代モデルは、書き起こしの正確度とスループットを大幅に向上させます。 しかし、現時点では、前世代モデルよりも若干少ない機能しか提供していません。

このトピックでは、前世代モデルから次世代モデルにマイグレーションするために実行する必要があるステップの概要について説明します。 移行についての詳細は、Watson Speech to Text: How to Plan Your Migration to the Next-Generation Modelsも参照してください。

ステップ 1: マイグレーション先の大規模音声モデルまたは次世代モデルを特定する

以下のトピックでは、すべての大型スピーチモデル、旧モデル、次世代モデルについて説明します:

前世代の言語モデルをサポートした 表には、前世代モデルから移行するために推奨される大規模な音声モデルまたは次世代モデルが記載されています。 指示された大規模音声モデルまたは次世代モデルを音声認識要求で使用します。

このサービスでは、新しい大型スピーチモデルの提供を続けている。 すべての新しいモデルは、リリース・ノートと、使用可能なモデルを説明する表で識別されます。

最適な方法は、狭帯域モデル/テレフォニー・モデルから大規模音声モデルに、広帯域モデル/マルチメディア・モデルから大規模音声モデルに移行することです。 ただし、すべてのブロードバンド・モデルとマルチメディア・モデルが同等の大規模音声モデルを持つわけではありません。 このような場合は、狭帯域モデルからテレフォニー・モデルに、または広帯域モデルからマルチメディア・モデルに移行できます。 サービスは、送信した音声を、使用するモデルのレートにダウンサンプリングします。 したがって、現在使用可能な同等のマルチメディア・モデルがない場合は、テレフォニー・モデルに広帯域音声を送信することで十分な代替手段が得られる可能性があります。

例えば、以下の音声認識要求では、前世代 en-US_NarrowbandModel を使用します。

curl -X POST -u "apikey:{apikey}" \
--header "Content-Type: audio/flac" \
--data-binary @{path}audio-file.flac \
"{url}/v1/recognize?model=en-US_NarrowbandModel"

同等のラージ・スピーチ・モデル en-US を使用するには、model で渡す値を変更するだけです:

curl -X POST -u "apikey:{apikey}" \
--header "Content-Type: audio/flac" \
--data-binary @{path}audio-file.flac \
"{url}/v1/recognize?model=en-US"

ステップ2:大規模なスピーチモデルで利用可能な機能を特定する

大規模音声モデルでは、以前のモデルや次世代モデルよりも若干少ない機能とパラメーターがサポートされます。 ただし、フル・パリティーはありませんが、ほとんどの機能は両方のタイプのモデルで使用できます。 また、ある機能が言語のサブセットに限定されている場合、その制限はすべてのタイプのモデルに等しく適用される。

さまざまなモデル・タイプでサポートされる機能については、以下を参照してください。

このサービスにより、次世代モデルで新しい機能が引き続き利用可能になります。 機能サポートに対するすべての更新は、リリース・ノートおよびモデル・タイプの資料に記載されています。

次世代モデルにマイグレーションするには、次世代モデルでサポートされていない機能を音声認識要求から削除する必要があります。 また、大規模な音声モデルや次世代モデルでのみ使用可能な文字挿入バイアスなどの機能の使用を検討することもできます。

例えば、以下の音声認識要求では、profanity_filterredaction、および word_alternatives_threshold パラメーターを前世代 en-US_NarrowbandModel で使用します。

curl -X POST -u "apikey:{apikey}" \
--header "Content-Type: audio/flac" \
--data-binary @{path_to_file}audio-file.flac \
"{url}/v1/recognize?model=en-US_NarrowbandModel&profanity_filter=true&redaction=true&word_alternatives_threshold=0.50"

大規模な音声モデルでは、 word_alternatives_threshold パラメーターのみがサポートされません。 To use the equivalent large speech model en-US_Telephony model, you simply change the value that you pass with the model query parameter and eliminate the word_alternatives_threshold parameter:

curl -X POST -u "apikey:{apikey}" \
--header "Content-Type: audio/flac" \
--data-binary @{path_to_file}audio-file.flac \
"{url}/v1/recognize?model=en-US&profanity_filter=true&redaction=true"

ステップ 3: 使用するカスタム言語モデルを再作成する

前世代または次世代モデルをベースとするカスタム言語モデルは、同等の大規模な音声モデルをベースにして再作成する必要があります。 そのためには、新しいカスタム言語モデルを作成し、古いモデルのコーパスとカスタム単語を新しいモデルに追加する必要があります。

一般的に、大規模な音声モデルはカスタム言語モデルにそれほど依存しない。 言語モデル・カスタマイズの必要性を最小限にする書き起こしに異なる方法を使用しています。

大規模な音声モデルは、カスタム音響モデルをサポートしていません。 モデルが音声を書き起こす方法のため、音響モデル・カスタマイズは必要ありません。

例えば、以下の音声認識要求では、en-US_NarrowbandModel に基づくカスタム言語モデルを使用します。 この例では、カスタム・モデルの ID は 8acf31fa-0aa2-4ecc-a805-1f527f342dba です。

curl -X POST -u "apikey:{apikey}" \
--header "Content-Type: audio/flac" \
--data-binary @audio-file.flac \
"{url}/v1/recognize?model=en-US_NarrowbandModel&language_customization_id=8acf31fa-0aa2-4ecc-a805-1f527f342dba"

同等の en-US モデルを使用してカスタム言語モデルを再作成した後、単にモデル名を en-US に更新し、新しいカスタム・モデルの ID 636d8494-7e53-436a-8557-30d6b2a63cd7 を使用するように language_customization_ID パラメーターを更新します。

curl -X POST -u "apikey:{apikey}" \
--header "Content-Type: audio/flac" \
--data-binary @audio-file.flac \
"{url}/v1/recognize?model=en-US&language_customization_id=636d8494-7e53-436a-8557-30d6b2a63cd7"

ステップ4:大規模音声モデルの結果を評価する

大規模な音声モデルを使用するように音声認識要求を更新し、サポートされていないパラメータを削除し、カスタム言語モデルを再作成したら、前世代および次世代モデルに基づく音声認識を試すことができます。 得られたトランスクリプトを比較して、大規模なスピーチモデルが同等またはそれ以上の結果をもたらすかどうかを判断します。 また、大きな音声モデルを使用するリクエストのパフォーマンスも考慮し、結果を受け取るまでの時間を決定します。

また、大規模な音声モデルの単語誤り率、前世代と次世代の結果を比較することもできます。 Pythonで利用可能なオープンソースの Word Error Rate(WER)ユーティリティは、結果の精度を測定し、比較するのに役立ちます。