🚀 한국어 감정 분류를 위해 파인튜닝된 KoELECTRA
このモデルは、韓国語の感情分類のためにKoELECTRAをファインチューニングしたものです。6つの主要な感情(怒り、幸福、不安、当惑、悲しみ、傷つき)を分類することができます。
🚀 クイックスタート
このモデルは、韓国語の感情分類タスクに使用できます。以下に、使用方法の例を示します。
✨ 主な機能
- 6種類の主要な感情(怒り、幸福、不安、当惑、悲しみ、傷つき)を分類できます。
- 韓国語の感情分類タスクに最適化されています。
📦 インストール
必要なライブラリをインストールするには、transformers
ライブラリが必要です。以下のコマンドでインストールできます。
pip install transformers torch
💻 使用例
基本的な使用法
from transformers import AutoTokenizer, AutoModelForSequenceClassification
import torch
model_name = "Jinuuuu/KoELECTRA_fine_tunning_emotion"
tokenizer = AutoTokenizer.from_pretrained(model_name)
model = AutoModelForSequenceClassification.from_pretrained(model_name)
def analyze_emotion(text):
inputs = tokenizer(
text,
return_tensors="pt",
truncation=True,
max_length=512,
padding=True
)
with torch.no_grad():
outputs = model(**inputs)
probs = torch.softmax(outputs.logits, dim=1)
emotion_labels = ['angry', 'anxious', 'embarrassed', 'happy', 'heartache', 'sad']
emotion_probs = {}
for i, label in enumerate(emotion_labels):
emotion_probs[label] = float(probs[0][i])
return emotion_probs
text = "오늘은 정말 행복한 하루였다."
result = analyze_emotion(text)
print("感情分析結果:")
for emotion, prob in sorted(result.items(), key=lambda x: x[1], reverse=True):
print(f"{emotion}: {prob:.3f}")
高度な使用法
from transformers import pipeline
classifier = pipeline(
"text-classification",
model="Jinuuuu/KoELECTRA_fine_tunning_emotion",
tokenizer="Jinuuuu/KoELECTRA_fine_tunning_emotion"
)
texts = [
"오늘은 정말 행복한 하루였다.",
"너무 화가 나서 참을 수 없다.",
"내일 시험이 걱정된다."
]
results = classifier(texts)
for text, result in zip(texts, results):
print(f"テキスト: {text}")
print(f"感情: {result['label']} (確率: {result['score']:.3f})")
print()
📚 ドキュメント
モデルの説明
このモデルは、韓国語の感情分類のためにKoELECTRAをファインチューニングしたものです。
プロパティ |
詳細 |
ベースモデル |
KoELECTRA (Korean ELECTRA) |
タスク |
マルチクラス感情分類 |
言語 |
韓国語 |
ライセンス |
MIT |
感情ラベル
モデルは以下の6つの感情を分類します。
ラベル |
韓国語 |
説明 |
angry |
분노 |
怒り、イライラ、憤慨 |
happy |
행복 |
喜び、楽しみ、満足 |
anxious |
불안 |
心配、不安、恐怖 |
embarrassed |
당황 |
驚き、混乱、戸惑い |
sad |
슬픔 |
憂鬱、悲しみ、落胆 |
heartache |
상처 |
心の痛み、裏切り感、失望 |
モデルアーキテクチャ
- ベースモデル: KoELECTRA-base
- モデルタイプ: シーケンス分類
- 隠れ層のサイズ: 768
- アテンションヘッドの数: 12
- 隠れ層の数: 12
- 最大シーケンス長: 512
- 語彙サイズ: 35000
- ラベルの数: 6
学習の詳細
学習データ
- データセット: カスタム韓国語感情データセット
- 学習サンプル: 約50,000文
- 検証サンプル: 約10,000文
- データソース: 韓国語のソーシャルメディア投稿、レビュー、文学作品
学習ハイパーパラメータ
- 学習率: 2e-5
- バッチサイズ: 16
- エポック数: 3 - 5
- ウォームアップステップ: 500
- ウェイトディケイ: 0.01
- 最大シーケンス長: 512
学習環境
- フレームワーク: PyTorch + Transformers
- ハードウェア: GPU (CUDA対応)
- オプティマイザー: AdamW
パフォーマンス
全体的なパフォーマンス
メトリック |
スコア |
正解率 |
0.85以上 |
F1スコア (マクロ) |
0.83以上 |
F1スコア (加重) |
0.85以上 |
クラス別パフォーマンス
感情 |
適合率 |
再現率 |
F1スコア |
angry |
0.87 |
0.84 |
0.85 |
happy |
0.89 |
0.91 |
0.90 |
anxious |
0.82 |
0.79 |
0.80 |
embarrassed |
0.78 |
0.76 |
0.77 |
sad |
0.85 |
0.87 |
0.86 |
heartache |
0.81 |
0.83 |
0.82 |
応用例
このモデルは以下のような用途に使用できます。
- ソーシャルメディアの感情分析: 投稿やコメントの感情を把握する。
- 顧客レビュー分析: 製品やサービスのレビューの感情を分類する。
- チャットボットの感情認識: 対話システムでユーザーの感情を把握する。
- コンテンツ推薦: 感情に基づいたコンテンツ推薦システム。
- 音楽推薦: テキストの感情に応じた音楽推薦。
- 文学分析: 小説や詩などの感情分析。
制限事項
- このモデルは韓国語のテキストに最適化されています。
- 最大512トークンまで処理できます。
- 文脈によって感情分類の精度が異なる場合があります。
- 隠語、新語、方言に対するパフォーマンスは制限される場合があります。
バイアスと公平性
このモデルは学習データのバイアスを反映する可能性があります。特定のトピックや表現に対してバイアスのある結果を示すことがあるため、実際のサービスに適用する際には十分な検証とモニタリングが必要です。
🔧 技術詳細
このモデルは、韓国語の感情分類タスクに対してKoELECTRAをファインチューニングして開発されました。学習データは韓国語のソーシャルメディア投稿、レビュー、文学作品から収集されました。ハイパーパラメータは、一般的な自然言語処理タスクに適した値が選択されています。
📄 ライセンス
このモデルはMITライセンスの下で公開されています。
引用
@misc{koelectra_emotion_2024,
title={KoELECTRA Fine-tuned for Korean Emotion Classification},
author={Jinuuuu},
year={2024},
publisher={Hugging Face},
howpublished={\url{https://huggingface.co/Jinuuuu/KoELECTRA_fine_tunning_emotion}}
}
モデルカードの作成者
- 開発者: Jinuuuu
- モデルタイプ: テキスト分類
- 言語: 韓国語
- ライセンス: MIT
お問い合わせ
モデルに関する質問や改善提案がある場合は、GitHubのイシューまたはHugging Faceのモデルページを通じてご連絡ください。
このモデルは研究および教育目的で開発されました。商用利用の場合は、十分な検証とテストを行ってから使用することをお勧めします。