まこTech

現役インフラエンジニアの、趣味や依頼のエンジニアリング日記

Speech-to-TextとAmazon Transcribeの差異について

はじめに


英文スピーチの文字起こしを行うシステムが2つあり、それぞれ以下2つのAPIを使用しているとのことで処理結果にどのような差異があるか調査しました。

またせっかくなので共通点なども調べてみました。

  • Speech-to-Text
  • Amazon Transcribe

 

サービス概要

Speech-to-Textの概要

 

cloud.google.com

 

Amazon Transcribeの概要

 

aws.amazon.com

 

共通する機能


https://aws.amazon.com/jp/transcribe/features/
https://cloud.google.com/speech-to-text/?hl=ja

 

システムの要件から、使用しそうな機能をまとめてみました。

  • 多言語に対応
  • ストリーミング音声認識
    リアルタイムと保存ファイルの文字起こしに対応しています
  • マルチチャネル認識
    複数の話者を認識して注釈します
  • 句読点の挿入
    文書に句読点を予測して挿入します(Speech-to-Textではベータ機能)
  • 数の正規化
    価格や年月日の形式を揃えて記述します
  • カスタム語彙
    基本語彙に新しい単語を追加して専門用語や固有名詞のより正確な文字起こしができます
  • 語彙フィルタリング
    文書から削除する単語のリストを指定できます

英文スピーチの文字起こしには両者十分な機能を備えているかと思います。

 

精度について

 

以下の検証サイトを読んでいくと多くの差異があることがわかりましたが、今回は対象のシステムにかかわる文字起こし(英語)精度の差を取り上げます。

 

参照サイト

 

cloudcompiled.com

 

autome.me

 

単語誤り率(WER)


単語誤り率(WER)は、自動音声認識モデルによって生成された文書の精度を評価するために最も一般的に使用される測定基準であり、次のように計算されます。
WER =(置換+挿入+削除)/話された単語の数
WER値が低いほど、精度が高いことを示します。
以下が検証サイトでの各WERです(3種の文書の平均WER)

 

f:id:mshirakawakun:20210619003821j:plain

各WER率

Speech-to-Textの平均WER 4.7%
Amazon Transcribeの平均WER 4.63%

WERはどちらも同じくらいですね。

 

類似率


オリジナルの文書と音声認識後に出力された文書の類似率は以下のようになっています。
(3種の文書の平均類似率)

類似率は高いほど精度が高いことを示します。

 

f:id:mshirakawakun:20210619003944j:plain

各類似率

Speech-to-Textの平均WER 95.87%
Amazon Transcribeの平均WER 94%

こちらも両者ほぼ変わらずですね。

 

結論

 

数値上の精度はほぼ変わらないです。

しかし特に各サービス間で句読点を入れる場所が違ってきます。

この違いは単語誤りの結果や句読点の場所を予測するアルゴリズムの違いによるので、2サービス間でまったく同じ結果は期待できないと思います。

またSpeech-to-Textでは句読点の挿入がベータ機能となっているなど違いはあります。

 

サービス利用料金について

Speech-to-Textの料金

 

cloud.google.com


月で最初の60分までの音声は無料、その後15秒ごとに課金されるようです。
話者が一人の音声データを使用する分には$0.006/15 秒のレートになります。
動画や通話データを使用すると、$0.009/15 秒に高くなり、またGoogleへの音声データ提供に同意すると通常より少しだけ安くなります。

 

Amazon Transcribeの料金

 

aws.amazon.com


月で最初の60分までの音声は無料(12か月間限定)、60分以降は1秒ごとに課金されるようです。
また、1リクエストの最小料金が15秒分となるため、15秒に満たない音声データも15秒分として請求されます。
また料金体系としては従量課金制ですが、沢山使用すると安くなっていきます。
例えば最初の 250,000 分の使用には「T1」階層の料金が適用され1秒あたり0.00040USDですが、次の 750,000 分は「T2」階層の料金が適用され1秒あたり0.00025USDとなります。
Speech-to-TextとAmazon Transcribeは「T1」の料金が同じですね。

 

結論

両者料金面では同じ価格帯ですが、月で250,000 分以上の音声データを使用する場合はAmazon TranscribeのT2以降の割引料金がお得ではあります。
逆に言えば4167時間もの大量音声データを処理しないのであれば価格は気にしないでいいです。

 

最後に

両サービスの触りを調べてみましたが、Speech-to-Textではニューラルネットワークを、Amazon TranscribeでもなんらかのAIを使用して文字起こしを行っていることがわかりましたが、技術は公表されておらず同じ技術を使用しているかはわかりませんでした。

精度・機能においては両者ともほぼ同じ水準で備えていることがわかりましたが、検証サイトの文字起こしの結果でも一字一句同じ結果にはなりません。(以下参照)

f:id:mshirakawakun:20210619005505j:plain

原文とSpeech-to-Textの文字起こし結果

f:id:mshirakawakun:20210619005549j:plain

原文とAmazon Transcribeの文字起こし結果

人工知能機械学習などの技術では、使用するアルゴリズムはもちろん学習に使用するデータで翻訳の性能が左右されるのでどうしても同じ結果は出ないようです。

料金面では大量に処理を行うシステムではAmazon Transcribeに分がありますが、そうでなければ同じ水準です。