ENECHANGE Developer Blog

ENECHANGE開発者ブログ

音声認識モデルの精度を検証

こんにちは、2023年7月からコツコツ集めて現在72WLD所有しているCTO室のkazです。

OpenAI Whisperを試してみた

OpenAIが開発した音声認識モデルWhisperを使用して、実際の音声データをテキストに変換してみました。その結果、非常に高い精度で音声を文字起こしできることが確認できました。 具体的には、Google ColaboratoryでGoogleドライブをマウントし、マウントしたディレクトリにある音声データをWhisperを使用してテキストデータに変換します。生成されたテキストデータをChatGPTで要約し、議事録を作成します。

OpenAI Whisper について

OpenAI Whisperは、OpenAIによって開発された音声認識モデルです。以下にWhisperの概要と特徴について簡単に説明します。

OpenAI Whisper

概要

  • Whisper は、音声データをテキストに変換するための高度な音声認識モデルです。
  • 様々な言語やドメインの音声データを処理する能力があります。
  • 高い精度で音声から文字起こしを行い、多様なアクセントや方言にも対応できます。

特徴

  1. 高精度な認識:

    • Whisperは、大量の音声データで訓練されており、高い認識精度を誇ります。
    • ノイズやバックグラウンド音がある環境でも良好なパフォーマンスを発揮します。
  2. 多言語対応:

    • Whisperは、英語だけでなく、多くの言語をサポートしています。
    • 多言語間の音声認識が可能で、国際的なアプリケーションにも適しています。
  3. アクセントと方言の認識:

    • 様々なアクセントや方言に対応しており、異なる地域の音声データも正確に認識します。
  4. リアルタイム処理:

    • Whisperはリアルタイムでの音声認識をサポートしており、ライブイベントやストリーミングアプリケーションでの利用が可能です。
  5. 使いやすさ:

    • OpenAIが提供するAPIを通じて、簡単にWhisperを統合することができます。
    • 開発者は、音声データをAPIに送信するだけで、テキストに変換された結果を受け取ることができます。

使用例

  • 字幕生成:
    • 映画や動画の自動字幕生成に利用できます。
  • 音声コマンド:
    • スマートデバイスやアプリケーションに音声コマンド機能を追加できます。
  • 音声検索:
    • 音声による検索クエリの処理に利用できます。
  • カスタマーサービス:
    • カスタマーサポートの音声応答システムに統合し、顧客の問い合わせを自動処理できます。

Google Colaboratory について

Google Colaboratory(略してGoogle Colab)は、Googleが提供する無料のクラウドベースのJupyterノートブック環境です。データサイエンス、機械学習、ディープラーニングのプロジェクトに特化しており、Pythonコードの記述と実行を簡単に行うことができます。

Google Colaboratory

概要

  • クラウドベース: インストール不要で、ブラウザ上で直接使用可能。
  • 無料のGPUサポート: 高性能なハードウェア(GPU、TPU)を無料で利用可能。
  • Python環境: データサイエンスや機械学習に最適化されたPython環境を提供。
  • 共有とコラボレーション: ノートブックを他のユーザーと簡単に共有し、共同編集が可能。

特徴

  1. インストール不要:

    • ブラウザ上で動作するため、ソフトウェアのインストールや設定が不要です。
  2. 高性能なハードウェア:

    • 無料でGPUやTPUを使用でき、大規模なデータ処理や機械学習モデルのトレーニングが可能です。
  3. Pythonと統合:

    • データサイエンスや機械学習で広く使用されているPythonライブラリ(NumPy、Pandas、TensorFlow、PyTorchなど)をサポートしています。
  4. シームレスな共有:

    • Googleドライブと統合されており、ノートブックを他のユーザーと簡単に共有できます。共同編集も可能です。
  5. セルベースのコード実行:

    • Jupyterノートブック形式を採用しており、セルごとにコードを実行し、結果をすぐに確認できます。

使用例

  • データサイエンス:
    • データの前処理、可視化、解析を簡単に行えます。
  • 機械学習:
    • モデルの構築、トレーニング、評価を行うための理想的な環境です。
  • 教育:
    • プログラミングやデータサイエンスの教育ツールとして利用できます。

ChatGPT について

ChatGPTは、OpenAIによって開発された高度な対話型AIモデルです。GPT(Generative Pre-trained Transformer)アーキテクチャに基づいており、人間のような自然な対話を行うことができます。

ChatGPT

概要

  • 開発元: OpenAI
  • アーキテクチャ: GPT(Generative Pre-trained Transformer)
  • 目的: 自然言語処理と生成に特化し、様々な対話型アプリケーションに利用されます。

特徴

  1. 自然な対話:

    • 人間のように自然な文章を生成し、流暢な対話が可能です。
  2. 多用途:

    • カスタマーサポート、教育、エンターテインメントなど、様々な分野で利用されています。
  3. 高度な理解能力:

    • 文脈を理解し、適切な応答を生成する能力があります。
  4. 継続的な学習:

    • 大量のテキストデータを基に訓練されており、定期的にアップデートされることで、最新の知識を反映しています。

使用例

  • カスタマーサポート:
    • 顧客からの問い合わせに自動で応答し、問題解決を支援します。
  • パーソナルアシスタント:
    • スケジュール管理、リマインダー設定、情報提供など、日常生活をサポートします。
  • 教育:
    • 学習支援ツールとして、学生の質問に答えたり、学習資料を提供します。
  • エンターテインメント:
    • 対話型ゲームやストーリーテリングに利用され、ユーザーにインタラクティブな体験を提供します。

手順

Whisper

OpenAIでAPIキーを作成します。 OpenAI API

Google Colaboratory

ノートブックを新規作成します。 ノートブック新規作成

「ハードウェアアクセラレータ」をGPUに変更する

「ハードウェアアクセラレータ」をGPUに変更する主な理由

Google Colaboratoryで「ハードウェアアクセラレータ」をGPUに変更する主な理由は、計算速度の向上、モデルのトレーニング時間の短縮、高精度なモデルの効率的な訓練です。これにより、特にディープラーニングや大規模なデータセットを扱うタスクにおいて、開発効率が大幅に向上します。

OpenAIのAPIキーを登録するためにコードを実行します。 ColabAIを使用すればプログラムの知識が無くてもなんとかなりますね。 ColabAI

Googleドライブをマウントします Googleドライブをマウントします

とりあえず、音声データを指定してテキストデータに変換します。 OpenAIのWhisperモデルの各バリエーション(tiny、base、small、medium、large)が用意されています。これらのモデルは、音声認識性能と計算リソースのトレードオフが異なります。

Whisperモデルのバリエーションと特徴

Whisperモデルのバリエーションと特徴

モデルの種類

Whisperモデルは、以下のように複数のサイズがあり、それぞれ性能と計算リソースのバランスが異なります。

1. Tiny

  • パラメータ数: 約39M
  • モデルサイズ: 約72MB
  • 推論速度: 非常に高速
  • 特徴: 最小サイズのモデルであり、計算資源の少ない環境やリアルタイム処理が求められるアプリケーションに適しています。音声認識の精度は他の大きなモデルに比べてやや低いですが、十分な性能を発揮します。

2. Base

  • パラメータ数: 約74M
  • モデルサイズ: 約140MB
  • 推論速度: 高速
  • 特徴: Tinyモデルよりも精度が高く、依然として高速な推論を提供します。計算資源が限られているが、精度がより求められる場合に適しています。

3. Small

  • パラメータ数: 約244M
  • モデルサイズ: 約466MB
  • 推論速度: 中速
  • 特徴: ベースモデルよりもさらに高い精度を提供し、一般的な用途での音声認識に非常に適しています。計算資源と精度のバランスが良いモデルです。

4. Medium

  • パラメータ数: 約769M
  • モデルサイズ: 約1.5GB
  • 推論速度: 低速
  • 特徴: 小規模なモデルよりも高い精度を持ち、大規模なデータセットや高精度が求められるタスクに適しています。計算資源が豊富にある環境で使用するのが理想的です。

5. Large

  • パラメータ数: 約1550M
  • モデルサイズ: 約3GB
  • 推論速度: 非常に低速
  • 特徴: 最高の精度を提供し、大規模なデータセットや最高の認識精度が求められるプロジェクトに適しています。計算リソースを大量に消費するため、性能重視の環境での使用が推奨されます。

選択のポイント

  • 計算資源: リアルタイム処理や低リソース環境では、TinyやBaseモデルが適しています。
  • 認識精度: 高い精度が求められる場合は、Small、Medium、Largeモデルを選択します。
  • 推論速度: 推論速度が重要な場合は、TinyまたはBaseモデルを選択します。

音声データを指定してテキストデータに変換

この程度のデータなら誤字はありませんね。 誤字はありません

3時のNHKニュースです。消防によりますと、きょう昼過ぎ、熊本県阿蘇市黒川の山中に、遊覧ヘリコプターが不自着したということです。

処理が終わったらGoogleドライブをアンマウントします Googleドライブをアンマウント

テキストデータにした会議内容をChatGPTに要約させる(実際の録音データだともっとノイズが入りますが適切なモデルを使用すれば精度は高いです)

今日は明日の天気予報の公表方法について議論したいと思います。まず、佐藤さんから明日の天気予報の概要を教えてください。はい、明日の天気は全国的に晴れですが、一部地域で午後から雨が降る予報が出ています。特に北部では雷を伴う激しい雨になる可能性があります。気温は平均して25度前後です。ありがとうございます。では、鈴木さん、今回の天気予報をどうやって公表する予定ですか?そうですね、まずは公式ウェブサイトに詳細な予報を掲載し、その後、SNSやメルマガを通じて速報を流す予定です。特に激しい雨の地域については、注意喚起を強調したいと思います。なるほど。では、山田さん、SNSでの公表についてご意見をお願いします。はい、SNSではインフォグラフィックを使って視覚的にわかりやすい形で情報を発信しようと考えています。また、リアルタイムで更新されるストーリーズも活用して、最新の情報をタイムリーに届ける予定です。それはいいですね。小林さん、インフォグラフィックのデザインについて何か提案はありますか?はい、地域ごとの天気を色分けして一目でわかるようにし、特に注意が必要な地域は赤や黄色などの強調色を使って視覚的に警告する形にしたいと思います。また、スマホでの閲覧を考慮して、縦長のデザインも準備しています。素晴らしいですね。それでは、最後に公表のタイミングについて確認しましょう。鈴木さん、ウェブサイトとSNSでの情報発信はどの時間に行う予定ですか?ウェブサイトには午前7時に詳細な予報を掲載し、SNSではその後すぐに速報を流します。また、午後1時と夕方6時に追加の更新情報を発信する予定です。承知しました。それでは、このスケジュールで進めるということで、皆さん問題ないでしょうか?はい、問題ありません。では、今日の会議はここまでとします。皆さん、準備をよろしくお願いします。お疲れ様でした。

明日の天気予報公表方法に関する会議 議事録

明日の天気予報公表方法に関する会議 議事録

日時: 2024年5月15日
時間: 10:00 AM - 11:00 AM
場所: 第2会議室

出席者

  • 司会者: 田中さん
  • 気象予報士: 佐藤さん
  • 広報担当: 鈴木さん
  • SNS担当: 山田さん
  • デザイン担当: 小林さん

議題

  1. 明日の天気予報の概要
  2. 公表方法の検討
  3. SNSでの公表方法
  4. インフォグラフィックのデザイン
  5. 公表のタイミング確認

議事内容

1. 明日の天気予報の概要

佐藤さん(気象予報士): - 明日の天気は全国的に晴れ。 - 一部地域で午後から雨が降る予報が出ている。 - 特に北部では雷を伴う激しい雨になる可能性がある。 - 気温は平均して25度前後。

2. 公表方法の検討

鈴木さん(広報担当): - 公式ウェブサイトに詳細な予報を掲載。 - SNSやメルマガで速報を流す予定。 - 特に激しい雨の地域については注意喚起を強調。

3. SNSでの公表方法

山田さん(SNS担当): - インフォグラフィックを使って視覚的にわかりやすい情報を発信。 - リアルタイムで更新されるストーリーズの活用。

4. インフォグラフィックのデザイン

小林さん(デザイン担当): - 地域ごとの天気を色分けし、特に注意が必要な地域は赤や黄色などの強調色で視覚的に警告。 - スマホでの閲覧を考慮して、縦長のデザインも準備。

5. 公表のタイミング確認

鈴木さん(広報担当): - ウェブサイトには午前7時に詳細な予報を掲載。 - SNSではその後すぐに速報を流す。 - 午後1時と夕方6時に追加の更新情報を発信。

決定事項

  • ウェブサイトとSNSでの情報発信スケジュールを以下の通りに実施:
    • ウェブサイト: 午前7時
    • SNS: ウェブサイト更新後すぐ
    • 追加更新: 午後1時、夕方6時

アクションアイテム

  • 佐藤さん: 明日の天気予報の詳細を準備。
  • 鈴木さん: ウェブサイトおよびSNSでの情報発信の準備。
  • 山田さん: SNS用のインフォグラフィックおよびストーリーズの準備。
  • 小林さん: インフォグラフィックのデザイン作成。

次回会議

日時: 2024年5月16日 午前10時
議題: 公表後の反響の確認および改善点の検討


結論

文字起こしサービスは多くの競合がありますが、会議などの機密事項を含む内容を外部のサービスに任せるのは難しいです。しかし、Googleドライブをマウントして利用すれば、情報漏洩のリスクを低く抑えた状態で音声データをテキストデータに変換できるため、おすすめです。