音声認識エンジン
AmiVoice API では様々な言語や用途に合わせて、複数の音声認識エンジンを提供しています。認識させたい音声に対して最適な音声認識エンジンを選ぶことで、精度を改善することができます。ここでは音声認識エンジンが対応している言語、エンジンの種類や使い分けのポイントについて説明します。
2025年2月1日に医療エンジンの統廃合を行う予定です。統廃合後の説明を「注意」セクションに記述しています。
音声認識エンジンの一覧
AmiVoice APIで提供している音声認識エンジンの一覧です。
言語 | エンジン名 | 言語モデル | 対応サンプリングレート | 接続エンジン名 |
---|---|---|---|---|
日本語 | 会話_汎用 | 汎用 | 8k / 16k | -a-general |
日本語 | 会話_医療 | 医療 | 16k | -a-medgeneral -a-medical に変更予定(*2) |
日本語 | 会話_製薬 | 製薬 | 16k | -a-bizmrreport |
日本語 | 会話_金融 | 金融 | 16k | -a-bizfinance |
日本語 | 会話_保険 | 保険 | 16k | -a-bizinsurance |
日本語 | 音声入力_汎用 | 大規模汎用 | 16k | -a-general-input |
日本語 | 音声入力_医療 | 医療 | 16k | -a-medgeneral-input -a-medical-input に変更予定(*2) |
日本語 | 音声入力_製薬 | 製薬 | 16k | -a-bizmrreport-input -a-medical-input に統合予定(*2) |
日本語 | 音声入力_保険 | 保険 | 16k | -a-bizinsurance-input |
日本語 | 音声入力_金融 | 金融 | 16k | -a-bizfinance-input |
日本語 | 音声入力_電子カルテ | 電子カルテ | 16k | -a-medkarte-input -a-medical-input に統合予定(*2) |
英語 | 英語_汎用 | 汎用 | 16k | -a-general-en |
中国語 | 中国語_汎用 | 汎用 | 16k | -a-general-zh |
韓国語 (*1) | 韓国語_汎用 | 汎用 | 16k | -a-general-ko |
- (*1) 韓国語は非同期APIには対応していません。今後、対応予定です。
- (*2) 2025年2月1日に変更予定です。2024年10月30日までに旧エンジン名をご利用いただいているユーザーからのリクエストは、変更後も引き続き旧接続エンジン名での利用が可能です。アプリケーションの動作には影響しませんが、新しいエンジン名をご利用いただくことをお勧めします。新しいエンジンは11月1日から利用可能です。
現在の音声認識エンジンと新しいエンジンの対応は以下の表のとおりです。
現在 | 変更後 | ||
音声認識エンジン名 | 接続エンジン名 | 音声認識エンジン名 | 接続エンジン名 |
会話_医療 | -a-medgeneral | 会話_医療 | -a-medical |
会話_製薬 | -a-bizmrreport | ||
音声入力_医療 | -a-medgeneral-input | 音声入力_医療 | -a-medical-input |
音声入力_製薬 | -a-bizmrreport-input | ||
音声入力_電子カルテ | -a-medkarte-input |
エンジン名
日本語の音声認識エンジンは、用途(音響モデル)と言語モデルの組み合わせで複数のエンジンを提供しています。
用途
人と人が自然に話をしているときの音声の文字起こしに最適化された「会話」エンジン、人が機械に向かって話す場合に最適化された「音声入力」エンジンがあります。それぞれ異なったデータセットを元にトレーニングした音響モデルを使っています。ただし、用途は音響モデルの違いだけではなく、それぞれの用途に応じた最適化がされています。
特徴と注意点
「会話」エンジンは「えーっと」や「あのー」などの不要語を除去しやくなっています。標準の設定では、これらの不要語は認識されたうえで自動的に除去されます。また、不要語を敢えて表示するように設定することもできます。フィラー単語の出力指定を参照してください。「音声入力」エンジンを使っている場合、不要語として判断されずに除去されないか、他の単語に誤認識されるケースが多くなります。
ユースケース
- 会議や電話などの音声を文字起こしする場合は「会話」エンジンを使ってください。
- 電子カルテ、レポート、メール、ショートメッセージなどを口述筆記する場合や、ロボットや音声チャットボットなど機械との対話の場合は「音声入力」エンジンを使ってください。
- ユースケースを絞り込めない場合は「会話」エンジンを使ってください。
言語モデル
医療、製薬、金融、保険などの"ドメイン"ごとによく話される語彙や言い回しがあります。これらのドメインごとに最適化した「領域特化」の言語モデルを用意しています。
日本語の言語モデルの一覧です。用途ごとにエンジンとして提供していますので、それぞれのユースケースも合わせて説明します。
言語モデル | 言語モデルの説明と用途ごとのエンジン |
---|---|
汎用 | 用途を限定しない発話内容の文字化に利用できます。「会話」専用です 会話_汎用( -a-general ): 会議・動画の文字起こし、入力が限定されない場合など |
大規模汎用 | 用途を限定しない口述筆記や、音声対話の文字化に利用できます。汎用よりも大きく語彙数が増えています。あまり話されないような言葉や、神社、寺、城、橋、温泉、動物園、水族館、美術館、博物館、ダム、トンネルといったランドマーク・場所・施設の名称などの語彙が豊富です。「音声入力」専用です 音声入力_汎用( -a-general-input ): 様々なシーンでの口述筆記、音声対話アプリケーションなど |
金融 | 「汎用」言語モデルに加えて、金融業界の用語や言い回しなどが追加されています。 会話_金融( -a-bizfinance ): 文字起こしや対面営業時の会話の文字起こしなど音声入力_金融( -a-bizfinance-input ): 日報、メール作成の音声入力など |
保険 | 「汎用」言語モデルに加えて、保険業界の用語や言い回しなどが追加されています。 会話_保険( -a-bizinsurance ): 文字起こしや対面営業時の会話の文字起こしなど音声入力_保険( -a-bizinsurance-input ): 日報、メール作成の音声入力など |
医療 | 「汎用」言語モデルに加えて、様々な診療科目、医療関係の用語、医療業界の会議での言い回しなどが追加されています。多くの病名、薬品名、病院名、手術名、地名などに対応しています。 会話_医療( -a-medgeneral ): 医療業界の会議、診察の患者と医者の会話、医療関連の動画の文字起こしなど音声入力_医療( -a-medgeneral-input ): 介護記録、医療関連の音声入力など |
製薬 | 「医療」言語モデルに加えて、多くの製薬業界の用語や言い回しなどが追加されています。多くの病名、薬品名、病院名などに対応しています。 会話_製薬( -a-bizmrreport ): 文字起こしや対面営業時の会話の文字起こしなど音声入力_製薬( -a-bizmrreport-input ): 薬剤師の服薬指導文の作成、MRの営業日報の音声入力など |
電子カルテ | 電子カルテの所見、診断書、診療情報提供書、紹介状等、各種医療文書の作成などの口述筆記に特化しています。「音声入力」専用です 音声入力_汎用( -a-medkarte-input ): 様々な診療科での電子カルテなどの口述筆記 |
2025年2月1日に医療エンジンの統廃合を行う予定です。統廃合後の言語モデルの一覧は以下のようになります。
- 新たに「医療会議」と「医療汎用」の言語モデルが追加されています
- 「製薬」言語モデルは、「医療会議」言語モデルに統合されます
言語モデル | 言語モデルの説明と用途ごとのエンジン |
---|---|
汎用 | 用途を限定しない発話内容の文字化に利用できます。「会話」専用です 会話_汎用( -a-general ): 会議・動画の文字起こし、入力が限定されない場合など |
大規模汎用 | 用途を限定しない口述筆記や、音声対話の文字化に利用できます。汎用よりも大きく語彙数が増えています。あまり話されないような言葉や、神社、寺、城、橋、温泉、動物園、水族館、美術館、博物館、ダム、トンネルといったランドマーク・場所・施設の名称などの語彙が豊富です。「音声入力」専用です 音声入力_汎用( -a-general-input ): 様々なシーンでの口述筆記、音声対話アプリケーションなど |
金融 | 「汎用」言語モデルに加えて、金融業界の用語や言い回しなどが追加されています。 会話_金融( -a-bizfinance ): 文字起こしや対面営業時の会話の文字起こしなど音声入力_金融( -a-bizfinance-input ): 日報、メール作成の音声入力など |
保険 | 「汎用」言語モデルに加えて、保険業界の用語や言い回しなどが追加されています。 会話_保険( -a-bizinsurance ): 文字起こしや対面営業時の会話の文字起こしなど音声入力_保険( -a-bizinsurance-input ): 日報、メール作成の音声入力など |
医療会議 | 「汎用」言語モデルに加えて、様々な診療科目、医療関係の用語、医療業界の会議での言い回しなどが追加されています。多くの病名、薬品名、病院名、手術名、地名などに対応しています。「会話」専用です 会話_医療( -a-medical ): 医療業界の会議、診察の患者と医者の会話、医療関連の動画の文字起こし、対面営業の会話の文字起こし、MRの営業日報、など |
医療汎用 | 電子カルテの所見、診断書、診療情報提供書、紹介状、介護記録、薬剤師の服薬指導文の作成、様々な医療文書の作成のための口述筆記に特化しています。「音声入力」専用です 音声入力_汎用( -a-medical-input ): 様々な診療科の医師、薬剤師などの専門家の口述筆記 |
日本語の言語モデルのクラス名一覧
日本語の音声認識エンジンで定義されているクラス名の一覧です。クラスは単語登録をするときに利用します。詳細は、単語登録を参照してください。API利用者が新たなクラスを追加することはできません。
クラス名 | 汎用 | 大規模汎用 | 金融 | 保険 | 製薬 | 医療 | 電子カルテ | 補足 |
---|---|---|---|---|---|---|---|---|
固有名詞 | ● | ● | ● | ● | ● | ● | ||
名前 | ● | ● | ● | ● | ● | ● | 姓を表します | |
名前(名) | ● | ● | ● | ● | ● | ● | 名を表します | |
名前 | ● | 姓名を表します *1 | ||||||
駅名 | ● | ● | ● | ● | ● | ● | ||
地名 | ● | ● | ● | ● | ● | |||
会社名 | ● | ● | ● | ● | ● | ● | ||
部署名 | ● | ● | ● | ● | ● | ● | ||
役職名 | ● | ● | ● | ● | ● | ● | ||
記号 | ● | ● | ● | ● | ● | ● | ||
括弧開き | ● | ● | ● | ● | ● | ● | ||
括弧閉じ | ● | ● | ● | ● | ● | ● | ||
元号 | ● | ● | ● | ● | ● | ● | ● | |
病名 | ● | ● | ● | |||||
薬品名 | ● | ● | ● | |||||
病院名 | ● | ● | ● | |||||
手術名 | ● | ● | ||||||
地名_区町村 | ● | ● | ||||||
地名_支庁市郡 | ● | ● |
- (*1) 名前クラスは電子カルテでは姓名を表しますが、その他の言語モデルでは姓を表します。
2025年2月1日に医療エンジンの統廃合を行う予定です。統廃合後のクラス名の一覧は以下のようになります。
- 新たに「医療会議」と「医療汎用」の言語モデルが追加されています
- 「製薬」言語モデルは、「医療会議」言語モデルに統合されます
クラス名 | 汎用 | 大規模汎用 | 金融 | 保険 | 医療会議 | 医療汎用 | 補足 |
---|---|---|---|---|---|---|---|
固有名詞 | ● | ● | ● | ● | ● | ||
名前 | ● | ● | ● | ● | ● | 姓を表します | |
名前(名) | ● | ● | ● | ● | ● | 名を表します | |
名前 | ● | 姓名を表します *1 | |||||
駅名 | ● | ● | ● | ● | ● | ||
地名 | ● | ● | ● | ● | |||
会社名 | ● | ● | ● | ● | ● | ||
部署名 | ● | ● | ● | ● | ● | ||
役職名 | ● | ● | ● | ● | ● | ||
記号 | ● | ● | ● | ● | ● | ||
括弧開き | ● | ● | ● | ● | ● | ||
括弧閉じ | ● | ● | ● | ● | ● | ||
元号 | ● | ● | ● | ● | ● | ● | |
病名 | ● | ● | |||||
薬品名 | ● | ● | |||||
病院名 | ● | ● | |||||
手術名 | ● | ● | |||||
地名_区町村 | ● | ● | |||||
地名_支庁市郡 | ● | ● |
中国語の言語モデルのクラス名一覧
中国語の音声認識エンジンで定義されているクラス名の一覧です。
クラス名 | 汎用 |
---|---|
固有名词一般 | ● |
姓 | ● |
名 | ● |
韓国語の言語モデルのクラス名一覧
韓国語の音声認識エンジンで定義されているクラス名の一覧です。
クラス名 | 汎用 |
---|---|
固有名詞 | ● |
地名 | ● |
駅名 | ● |
会社名 | ● |
名前(姓) | ● |
名前(名) | ● |
対応サンプリングレート
すべての音声認識エンジンは16kHzに対応しています。一部のエンジンは電話などでよく使われている8kHzのサンプリングレートの音声に対応しています。サンプリングレートについては、音声フォーマットのサンプリングレートを参照してください。
- 音声を自身で録音する場合は、サンプリングレート16kHzで録音し、16kHzのエンジンを使ってください。
- 電話音声の場合は8kHzのエンジンを使ってください。
接続エンジン名
リクエストパラメータの接続エンジン名 (grammarFileNames)には、表の「接続エンジン名」列の文字列を指定します。AmiVoice API Privateで公開しているエンジン名についてはマイページを参照してください。
費用
エンジンによって費用が異なります。詳細はAmiVoice APIの価格を参照してください。
認識精度について
音声認識エンジンのボキャブラリにない単語は出力されません。ボキャブラリにない単語が発話されると、発音の似た単語や、発音の似た短い単語の組み合わせ、単に誤った単語に認識されます。計算リソースや、計算時間の制約により音声認識エンジンごとにボキャブラリが決まっています。「会話_汎用」や「音声入力_汎用」などの汎用エンジンは様々なシーンで活用できるように多くのボキャブラリが登録されていますが、特定の業界や用途に特化したような単語は含まれていません。
医療・金融・保険などの業界ごとによく使われる専門用語は、特定の業界に特化したエンジンを使うことで、その業界でよく使われる単語に対して高い認識率を実現できます。さらに特定の組織などでよく使われる単語に対しては、単語登録を行うことで対応できます。
汎用エンジンと領域特化エンジンでどの程度の認識率の差がでるのか、AmiVoice Tech Blogで比較して報告しています。AmiVoiceの領域特化エンジンの音声認識精度を比べてみた(汎用 vs 電子カルテ)や【同じ発話で比較検証】音声入力エンジンと会話エンジンの認識結果の違いとはを参照してください。