Blogical

AWS/Salesforceを中心に様々な情報を配信していきます(/・ω・)/

Amazon Transcribeを用いて文字を起こして議事録を取ってみる

こんにちは、ロジカル・アーツの井川です。

先日ニュースを見ていると、こんな記事を発見しました。

tech.nikkeibp.co.jp

Amazon Transcribeの日本語対応

以前からあったサービス Amazon Transcribe が新たに日本語にも対応したようです。Amazon Transcribeとは自動音声認識 (ASR) サービスの1つで、コールセンター業務での文字起こしや、音声・動画コンテンツの字幕生成などとして使うことができるようです。

お値段も60分150円とお手頃のようで、つい呟いてしまいました。。。

検討した背景

最近社内には、1日に何件もMeetingをしているMeetingおじさんがおり、業務を見ていると「議事録を作る&レビュー&提出する」を永遠に繰り返していらっしゃるので何か役立てられないかな、最適化できないかな、というところから今回の試みを実施しました。

確認事項

確認したい点は下記の通りです。

  • どのくらいの精度で文字を起こすことが可能なのか
  • 1から議事録を取るケースと比較し、どのくらい工数が削減できるのか

それでは実際に試していきましょう。

実際に文字を起こしてみる

データを用意する

Amazon Transcribeはストリームも対応可能ですが、今回は、予め録音していた議事録の音声データをS3にアップロードする形で進めていきたいと思います。

まず、S3画面で専用バケット sampletranscribe を用意します。名前は任意のもので大丈夫です。 f:id:logicalarts:20191126162421p:plain

アップロードボタンをクリックし、用意していた音声データをアップロードします。ここでは、191126_0027.MP3という音声ファイルをアップロードしました。データサイズは83.2MBです。 f:id:logicalarts:20191126162425p:plain

音声データの用意が完了しましたので、Amazon Transcribeで処理を行っていきましょう。

Amazon Transcribeを始める

AWSコンソールにログインを行い、サービス一覧よりTranscribeと検索すると、下記画面が表示されます。Create Job ボタンをクリックし、早速作成していきます。

f:id:logicalarts:20191126162412p:plain

作成時に必要な入力項目は下記の通りです。

項目名 内容 備考
Name sampleMinutes 作業名を入力
Language Japanese 文字起こしする言語を選択
Input Data S3 URL 元データのファイルURLを入力
Format mp3 ファイルのデータ種類を選択

下記画像のように、順次入力していきます。

f:id:logicalarts:20191126162451p:plain

入力が完了すると、下記のような状況が表示されます。ステータスは In progress ですね。完了まで待機します。

f:id:logicalarts:20191126162454p:plain

処理完了

少し時間をおいて確認してみると、ステータスが Complete になっていたので sampleMinutes をクリックして中身を見ていきたいと思います。

f:id:logicalarts:20191126180824p:plain

Transcription preview より以下が文字起こしされた値ですね。文字起こしした一部が参照できるようになっています。

ダウンロード

右上の Download full transcript ボタンからダウンロードすることが出来ます。JSONファイルで生成されるようです。

処理時間

2019/11/26 16:21:00 にスタートしたJobが同日 16:50:30 に完了しました。元となる音声データの長さが1時間20分なんですが、処理に30分近くかかっていますね。

確認事項に対する所感

どのくらいの精度で文字を起こすことが可能なのか?

ところどころの単語は理解できたり、ある程度きれいに文字起こしされている部分もありますが、書き起こされた文字を見るだけでは大部分が何の話をしているか把握できないような内容となっています。 人が聞くと理解できる録音内容でもマイクの距離や発話者の滑舌や間や、複数人が同時に話した時などは精度が悪くなる印象です。 あと日本語なので、漢字の誤変換などが多いと思います。(例えば、出欠→出血)ただ前後の文の意味がわかれば誤変換はそれほど問題ない印象です。

録音時のマイクの配置などをいろいろと考慮すれば、人の声が鮮明になり、全体の精度がもう少し良くなるのではないかと思いました。

1から議事録を取るケースと比較し、どのくらい工数を削減できるのか?

今回においては、効果はほとんどないです。録音の仕方などを工夫することで精度があがれば、多少は削減できると思います。

まとめ

冒頭にも少しお話しましたが、コールセンター業務などで音声がクリアなシチュエーション・一人が明瞭に話すようなシチュエーションでは音量の品質も上がるので Amazon Transcribe の使い勝手は良いと思います。ただ、議事録を取るような会議のシチュエーションにおいては、声が必ずしも明瞭にとることはできず、かつ長時間ですので文字起こし後の処理が大変になってしまい、最適化には有効な策ではないということがわかりました。今回の試みは残念ながらうまく行きませんでしたが、引き続き試行錯誤してみたいと思います。もっとこうしたほうがいいよ!うちの会社はこうして運用してるよ!等のアイデアがありましたらご提供してくださると嬉しいです。