🚀 多言語(英語と中国語)GoEmotions分類モデル
このリポジトリには、GoEmotionsデータセットを用いたクロス言語感情分類のために微調整されたBERTモデルが含まれています。このモデルは、英語と中国語のテキストから構成される多言語データセットで学習されており、28種類の感情カテゴリーにテキストを分類することができます。
🚀 クイックスタート
このモデルは、GoEmotionsデータセット上でのクロス言語感情分類に使用できます。以下に、このモデルの使用例を示します。
from transformers import AutoTokenizer, AutoModelForSequenceClassification
from transformers import pipeline
tokenizer = AutoTokenizer.from_pretrained("SchuylerH/bert-multilingual-go-emtions")
model = AutoModelForSequenceClassification.from_pretrained("SchuylerH/bert-multilingual-go-emtions")
text = "I love you."
nlp = pipeline("sentiment-analysis", model = model, tokenizer = tokenizer)
result = nlp(text)
print(result)
✨ 主な機能
- 多言語(英語と中国語)のテキストを28種類の感情カテゴリーに分類することができます。
- 検証セットで高い性能を示しています。
📦 インストール
このモデルを使用するには、transformers
ライブラリが必要です。以下のコマンドでインストールできます。
pip install transformers
💻 使用例
基本的な使用法
from transformers import AutoTokenizer, AutoModelForSequenceClassification
from transformers import pipeline
tokenizer = AutoTokenizer.from_pretrained("SchuylerH/bert-multilingual-go-emtions")
model = AutoModelForSequenceClassification.from_pretrained("SchuylerH/bert-multilingual-go-emtions")
text = "I love you."
nlp = pipeline("sentiment-analysis", model = model, tokenizer = tokenizer)
result = nlp(text)
print(result)
📚 ドキュメント
モデル性能
モデルは検証セットで高い性能を示しており、以下のスコアが得られています。
- 正解率: 85.95%
- 適合率: 91.99%
- 再現率: 89.56%
- F1スコア: 90.17%
これらの結果は、入力テキストの言語(英語または中国語)に関係なく、正しい感情カテゴリーを予測する際のモデルの高い精度と適合率を示しています。
学習データ
モデルの学習に使用されるデータセットは、元の英語のGoEmotionsデータセットと機械翻訳された中国語版のGoEmotionsデータセットの結合データセットです。
データセットは2つの部分に分割されています。
- ラベル付きデータ: 初期学習に使用されます。英語と機械翻訳された中国語のサンプルが含まれています。このラベル付きデータは、学習セット(80%)と検証セット(20%)にさらに分割されます。
- ラベル無しデータ: 予測を行い、自信を持って予測されたサンプルを学習データに追加するために使用されます。英語と機械翻訳された中国語のサンプルが含まれています。
学習
モデルは2段階で学習されます。
- ラベル付きデータでの初期学習。
- ラベル無しデータに対して予測を行い、最も自信を持って予測されたサンプルを学習データに追加します。その後、この更新されたラベル付きデータでモデルを再学習します。
モデルは合計20エポック(各段階で10エポック)学習されます。学習中に適合率、再現率、およびF1スコアが記録されます。
28種類の感情カテゴリー
GoEmotionsの分類体系によると、28種類の感情カテゴリーは以下の通りです。
'admiration'(賞賛)、'amusement'(娯楽)、'anger'(怒り)、'annoyance'(いらだち)、'approval'(承認)、'caring'(思いやり)、'confusion'(混乱)、'curiosity'(好奇心)、'desire'(欲望)、'disappointment'(失望)、'disapproval'(非難)、'disgust'(嫌悪)、'embarrassment'(恥ずかしさ)、'excitement'(興奮)、'fear'(恐怖)、'gratitude'(感謝)、'grief'(悲しみ)、'joy'(喜び)、'love'(愛)、'nervousness'(不安)、'optimism'(楽観主義)、'pride'(誇り)、'realization'(気づき)、'relief'(安心)、'remorse'(後悔)、'sadness'(悲しみ)、'surprise'(驚き)、'neutral'(中立)
📄 ライセンス
このモデルは、Apache License 2.0の下で公開されています。