🚀 韓国語音声認識モデル wav2vec2-base-korean
このモデルは、Facebookのwav2vec2-baseモデルを微調整したもので、韓国語の音声認識に特化して最適化されています。Zeroth-Koreanデータセットを使用して訓練され、韓国語の音声を正確にテキストに変換することができ、高精度な韓国語認識が必要な様々なアプリケーションシーンに適しています。
🚀 クイックスタート
このモデルを使用するには、以下のコードを使用できます。
!pip install transformers[torch] accelerate -U
!pip install datasets torchaudio -U
!pip install jiwer jamo
!pip install tensorboard
import torch
from transformers import Wav2Vec2ForCTC, Wav2Vec2Processor
import torchaudio
from jamo import h2j, j2hcj
model_name = "Kkonjeong/wav2vec2-base-korean"
model = Wav2Vec2ForCTC.from_pretrained(model_name)
processor = Wav2Vec2Processor.from_pretrained(model_name)
model.to("cuda")
model.eval()
def load_and_preprocess_audio(file_path):
speech_array, sampling_rate = torchaudio.load(file_path)
if sampling_rate != 16000:
resampler = torchaudio.transforms.Resample(sampling_rate, 16000)
speech_array = resampler(speech_array)
input_values = processor(speech_array.squeeze().numpy(), sampling_rate=16000).input_values[0]
return input_values
def predict(file_path):
input_values = load_and_preprocess_audio(file_path)
input_values = torch.tensor(input_values).unsqueeze(0).to("cuda")
with torch.no_grad():
logits = model(input_values).logits
predicted_ids = torch.argmax(logits, dim=-1)
transcription = processor.batch_decode(predicted_ids)[0]
return transcription
audio_file_path = "your_audio_file.wav"
transcription = predict(audio_file_path)
print("Transcription:", transcription)
✨ 主な機能
- このモデルは、Facebookのwav2vec2-baseモデルを微調整したもので、韓国語の音声認識に最適化されています。
- 追加の微調整なしで、韓国語の音声をテキストに変換するために直接使用でき、音声アシスタント、文字起こしサービス、言語学習ツールなどのアプリケーションに適しています。
- 音声認識機能を必要とする大型システム(自動客服、音声制御アプリなど)に統合することができます。
📦 インストール
!pip install transformers[torch] accelerate -U
!pip install datasets torchaudio -U
!pip install jiwer jamo
!pip install tensorboard
📚 ドキュメント
モデル詳細
モデル説明
このモデルは、Facebookのwav2vec2-baseモデルを微調整したもので、Zeroth-Koreanデータセットを使用して韓国語の音声認識を行います。このモデルは、韓国語の音声をテキストに変換するように訓練されており、特に韓国語独自の字母文字を利用しています。
- 開発者: [jeonghyeon Park, Jaeyoung Kim]
- モデルタイプ: 音声からテキストへの変換
- 言語: 韓国語
- ライセンス: Apache 2.0
- 微調整のベースモデル: facebook/wav2vec2-base
モデルのソース
- リポジトリ: [github.com/KkonJJ/wav2vec2-base-korean]
使用方法
直接使用
このモデルは、追加の微調整なしで韓国語の音声をテキストに変換するために直接使用できます。正確な韓国語認識が必要なアプリケーション(音声アシスタント、文字起こしサービス、言語学習ツールなど)に特に適しています。
下流アプリケーション
このモデルは、音声認識機能を必要とする大型システム(自動客服、音声制御アプリなど)に統合することができます。
不適用シーン
このモデルは、韓国語以外の言語の認識や、韓国語の口語文字起こし以外のコンテキストを理解する必要があるタスクには適していません。
バイアス、リスク、制限事項
提案
ユーザーは、モデルの制限事項(訓練データに含まれる可能性のあるバイアスを含む)を理解する必要があります。これらのバイアスは、特定の方言や話者の認識精度に影響を与える可能性があります。予想されるアプリケーション分野の代表的なサンプルでモデルの性能を評価することをお勧めします。
訓練詳細
訓練データ
このモデルは、Zeroth-Koreanデータセットを使用して訓練されました。これは、韓国語の音声データセットで、音声記録とそれに対応する文字起こしテキストが含まれています。
訓練プロセス
- 前処理:文字起こしテキストから特殊文字を削除し、テキストを字母文字に変換して、韓国語の音声構造により適合させます。
- 訓練ハイパーパラメータ:
- 訓練メカニズム: 混合精度 (fp16)
- バッチサイズ: 32
- 学習率: 1e-4
- 訓練エポック数: 10
評価
テストデータ、要因、指標
- テストデータ:Zeroth-Koreanデータセットのテストセットを使用してモデルを評価しました。
- 指標:主な評価指標は文字誤り率 (CER) で、これは文字起こしテキストにおける参照テキストと比較した誤り文字の割合を測定します。
結果
まとめ
このモデルは、Zeroth-Koreanデータセットで7.3%のCERを達成しており、良好な性能を示しています。
環境への影響
機械学習の影響計算機を使用して、二酸化炭素排出量を推定することができます。
- ハードウェアタイプ: NVIDIA A100
- 使用時間: 約8時間
技術仕様
モデルアーキテクチャと目標
モデルアーキテクチャはwav2vec2.0に基づいており、音声の音声構造をモデリングすることで、音声入力をテキスト出力に変換することを目的としています。
計算インフラストラクチャ
- ハードウェア:NVIDIA A100
- ソフトウェア:
- フレームワーク:PyTorch
- ライブラリ:Transformers、Datasets、Torchaudio、Jiwer、Jamo
引用情報
BibTeX
@misc{your_bibtex_key,
author = {Your Name},
title = {wav2vec2-base-korean},
year = {2024},
publisher = {Hugging Face},
note = {https://huggingface.co/Kkonjeong/wav2vec2-base-korean}
}
APA
Your Name. (2024). wav2vec2-base-korean. Hugging Face. https://huggingface.co/Kkonjeong/wav2vec2-base-korean
モデルカードの作成者
[jeonghyeon Park, Jaeyoung Kim]
モデルカードの連絡先
詳細情報が必要な場合は、[shshjhjh4455@gmail.com, kbs00717@gmail.com]までお問い合わせください。
🔧 技術詳細
- モデルアーキテクチャはwav2vec2.0に基づいており、音声の音声構造をモデリングすることで、音声入力をテキスト出力に変換します。
- 訓練時には混合精度 (fp16) を使用して訓練効率を向上させます。
- 文字起こしテキストを前処理して、特殊文字を削除し、字母文字に変換して、韓国語の音声構造により適合させます。
📄 ライセンス
このモデルは、Apache 2.0ライセンスを使用しています。
📋 情報テーブル
属性 |
詳細 |
モデルタイプ |
音声からテキストへの変換 |
訓練データ |
Zeroth-Koreanデータセット。韓国語の音声データ、音声記録、およびそれに対応する文字起こしテキストが含まれます。 |
ライセンス |
Apache 2.0 |
微調整のベースモデル |
facebook/wav2vec2-base |