Help us understand the problem. What is going on with this article?

自動テープ起こしを夢見て

先日、Amazon Transcribeが日本語に対応したというニュースを耳にした。Amazon Transcribeとは音声からテキストに変換するサービスである。
アイリッジでは毎月月末に全社員が集まってミーティングが行われる。その際の発言を録音してAmazon Transcribeで文字起こしを行い、適宜編集して全体に公開すればをすれば役に立つのでは、と思い立った。

手順

Amazon Transcribeは簡単に使うことができる。

  1. ミーティングの発言者の近くに録音用のスマートフォン(Pixel 3a)を配置し、録音アプリで録音する。
  2. 録音音声ファイル(WAV形式)をAmazon Transcribeのコンソールからアップロードする。
  3. しばらくするとJSON形式のファイルがダウンロードできる。
  4. 先駆者のスクリプトを参考にしていい感じにHTMLファイルにする。

今回、作成したのは以下のスクリプトである。

import json
import sys


def confidence_to_color(confidence: float) -> str:
    """confidenceの値に応じてHTMLの色を指定する"""

    if confidence == 1:
        return "black"
    elif confidence >= 0.9:
        return "gray"
    else:
        return "silver"


def main():
    input_lines = sys.stdin.readline()
    data = json.loads(input_lines)

    print("<!DOCTYPE html>")
    print("<body>")
    for item in data['results']['items']:
        color = confidence_to_color(float(item['alternatives'][0]['confidence']))
        content = item['alternatives'][0]['content']
        print(f'<span style="color: {color}; ">{content}</span>', end="")
    print()
    print("</body>")


if __name__ == "__main__":
    main()

このスクリプトファイルをcli_trans.py とすると、以下のように使う。

(venv)$ cat asrOutput.json | python3 cli_trans.py > result.html

これで、簡単に文字起こしができた。

現実と向き合う

Amazon Transcribeで生成されたテキストファイルを適宜編集すればいい、と思っていたが、生成されたものは少し手を入れればいい、という代物ではなく、日本語の文法になんとか従って書かれた奇妙なテキストであった。題材が会社内のミーティングであるためそれを公開できないのが残念であるが、その迫力はなかなかものであり、HTMLファイルを見て「現代芸術である」と答えた人もいた。
どうしてこうなったのか?Amazon Transcribeが誇大広告であったのではなく、音声ファイルの作成方法にその原因があると思われる。今回の録音方法はスマートフォンを配置して録音というもので人間の耳で聞き取る分には十分であるがあまり品質がよい状況ではなかった。Garbage In Garbage Outの通り、品質が悪い音声ファイルからは世にも奇妙なテキストしか生成できないのである。
どうすればよかったのであろうか?まずはきちんとした録音環境を用意することである。例えば、発言者がマイクを使っているのであればマイクから直接音を拾うといった工夫である。例えば、コールセンターにおける会話を録音して文字に起こす、全員がオンライン上でマイクで話す、といった状況ならばよいのかもしれない。

おたのしみコーナー

さて、堅苦しい話はここまでにして、Amazon Transcribeで生成された奇妙なテキストの内、筆者の琴線に触れ、かつパブリックにしてもよさそうなものを列挙してみる。

  • パルプ喋って貰っていいですか
    • 「軽く喋ってもらっていいですか」の誤変換。今回のミーティングは出張中の社員でも参加できそうな人はオンラインで参加してもらっていて、動作確認を行うための発言である。
  • サービス障害動画ができました
    • 「サービス紹介動画ができました」の誤変換。サービス障害動画は胃が痛くなるのでお断りしたい。
  • 焼却観測するビジネス
    • 物騒なワードが出てきたが、弊社はこんな危ういビジネスはやらないはず。
  • 応援部というキーワード
    • 次のビジネスに向けたキーワード...ではないはず。
  • 巻物の共同事業
    • 新たなるビジネスキーワード。
  • 結構アドラー的な箱を開ける
    • アドラー的という形容詞もよくわからないが、そのような箱とは一体どんな箱なのか。
  • うんそっかええじゃええなるほどね
    • 相槌や口癖を拾ってしまったものであるが、普段は標準語なのにとっさに方言が出てしまったかのような趣がある。
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした