🚀 モデルIDのモデルカード
このモデルは、感情分析とターゲット感情分析のタスクに特化したFlan - T5ベースのモデルです。特定のデータセットで微調整され、特定のプロンプト形式で高い性能を発揮します。
🚀 クイックスタート
モデルの直接使用
モデルのアプリケーションを素早く始めるには、以下の2つの手順があります。
- モデルとトークナイザーの読み込み:
import torch
from transformers import AutoTokenizer, T5ForConditionalGeneration
model_path = "nicolay-r/flan-t5-tsa-prompt-base"
device = "cuda:0"
model = T5ForConditionalGeneration.from_pretrained(model_path, torch_dtype=torch.bfloat16)
tokenizer = AutoTokenizer.from_pretrained(model_path)
model.to(device)
- LLMの応答を生成するためのaskメソッドの設定:
def ask(prompt):
inputs = tokenizer(prompt, return_tensors="pt", add_special_tokens=False)
inputs.to(device)
output = model.generate(**inputs, temperature=1)
return tokenizer.batch_decode(output, skip_special_tokens=True)[0]
最後に、以下のようにモデルの結果を推論できます。
sentence = "I would support him"
target = "him"
flant5_response = ask(f"What's the attitude of the sentence '{context}', to the target '{target}'?")
print(f"Author opinion towards `{target}` in `{sentence}` is:\n{flant5_response}")
モデルの応答は次の通りです。
Author opinion towards "him" in "I would support him despite his bad behavior." is: positive
下流タスクでの使用
Reasoning - for - Sentiment - Analysis フレームワークの関連セクションを参照してください。
この例では、このモデル(ゼロショット学習)を PROMPT
モードでRuSentNE - 2023コンペティションの検証データに適用して評価しています。
python thor_finetune.py -m "nicolay-r/flan-t5-tsa-prompt-xl" -r "prompt" \
-p "What's the attitude of the sentence '{context}', to the target '{target}'?" \
-d "rusentne2023" -z -bs 4 -f "./config/config.yaml"
Google Colab Notebookに従って実装を再現してください。
範囲外の使用
このモデルは、RuSentNE - 2023データセットで微調整されたFlan - T5のバージョンです。データセットが3段階の出力回答(positive
、negative
、neutral
)を表すため、一般的な振る舞いはこの特定のタスクに偏っている可能性があります。
推奨事項
ユーザー(直接的なユーザーと下流のユーザーの両方)は、モデルのリスク、バイアス、制限について認識すべきです。さらなる推奨事項には、より多くの情報が必要です。
✨ 主な機能
- バッチモードサポート:2025年2月23日の更新で、バッチモードがサポートされました。Flan - T5プロバイダを参照してください。
- 特定タスク向け微調整:RuSentNE - 2023データセットで微調整され、感情分析とターゲット感情分析に特化しています。
📦 インストール
このモデルを使用するには、transformers
ライブラリをインストールする必要があります。以下のコマンドでインストールできます。
pip install transformers
📚 ドキュメント
モデル詳細
モデルの説明
2025年2月23日更新: 🔥 バッチモードサポート。
Flan - T5プロバイダを参照して、バルクチェーンプロジェクトを確認してください。
テストはこちらで利用可能です。
モデルのソース
モデルの使い方
直接使用
上述のクイックスタートセクションを参照してください。
下流タスクでの使用
上述のクイックスタートセクションを参照してください。
モデルのトレーニング詳細
トレーニングデータ
train
データを使用しており、これは GoogleTransAPIを使用して自動的に英語に翻訳されたもの です。元のテキストはロシア語で、以下のリポジトリから取得されました。
https://github.com/dialogue-evaluation/RuSentNE-evaluation
データセットの英語版は、以下のスクリプトを介して自動的にダウンロードできます。
https://github.com/nicolay-r/Reasoning-for-Sentiment-Analysis-Framework/blob/main/rusentne23_download.py
トレーニング手順
このモデルは、PROMPT微調整を使用してトレーニングされています。
トレーニング手順を実行するには、THoRフレームワークの再構築版を使用します。
Google - colabノートブックを使用して再現できます。
全体のトレーニングプロセスは 3エポック かかりました。

トレーニングハイパーパラメータ
- トレーニングレジーム: すべての構成詳細は、関連するconfigファイルに記載されています。
評価
テストデータ、要因、メトリクス
テストデータ
test
評価データへの直接リンク:
https://github.com/dialogue-evaluation/RuSentNE-evaluation/blob/main/final_data.csv
メトリクス
モデルの評価には、2つのメトリクスが使用されました。
- F1_PN --
positive
と negative
クラスに対するF1メジャー
- F1_PN0 --
positive
、negative
、および neutral
クラスに対するF1メジャー
結果
このモデルのテスト評価では、F1_PN = 60.024が示されています。
以下は、4エポック後のRuSentNE - 2023 test
セットでの最終性能を示すトレーニングプロセスのログです(5 - 6行目)。
F1_PN F1_PN0 default mode
0 66.678 73.838 73.838 valid
1 68.019 74.816 74.816 valid
2 67.870 74.688 74.688 valid
3 65.090 72.449 72.449 test
4 65.090 72.449 72.449 test
🔧 技術詳細
- モデルは、Flan - T5ベースのアーキテクチャを使用しています。
- トレーニングには、PROMPT微調整手法が使用されています。
- データセットは、ロシア語のテキストを英語に自動翻訳したものです。
📄 ライセンス
このモデルは、Apache License 2.0の下で提供されています。