🚀 DistilCamemBERT-NLI
DistilCamemBERT-NLIは、フランス語の自然言語推論(NLI)タスク、つまりテキストの含意関係の認識(RTE)に特化して微調整されたDistilCamemBERTモデルです。このモデルはXNLIデータセットを基に構築されており、前提文が仮説文を含意するか、矛盾するか、またはそのどちらでもないかを判定します。
🚀 クイックスタート
このモデルを使用するには、以下のコードを参考にしてください。
from transformers import pipeline
classifier = pipeline(
task='zero-shot-classification',
model="cmarkea/distilcamembert-base-nli",
tokenizer="cmarkea/distilcamembert-base-nli"
)
result = classifier (
sequences="Le style très cinéphile de Quentin Tarantino "
"se reconnaît entre autres par sa narration postmoderne "
"et non linéaire, ses dialogues travaillés souvent "
"émaillés de références à la culture populaire, et ses "
"scènes hautement esthétiques mais d'une violence "
"extrême, inspirées de films d'exploitation, d'arts "
"martiaux ou de western spaghetti.",
candidate_labels="cinéma, technologie, littérature, politique",
hypothesis_template="Ce texte parle de {}."
)
result
{"labels": ["cinéma",
"littérature",
"technologie",
"politique"],
"scores": [0.7164115309715271,
0.12878799438476562,
0.1092301607131958,
0.0455702543258667]}
高度な使用法
from optimum.onnxruntime import ORTModelForSequenceClassification
from transformers import AutoTokenizer, pipeline
HUB_MODEL = "cmarkea/distilcamembert-base-nli"
tokenizer = AutoTokenizer.from_pretrained(HUB_MODEL)
model = ORTModelForSequenceClassification.from_pretrained(HUB_MODEL)
onnx_qa = pipeline("zero-shot-classification", model=model, tokenizer=tokenizer)
quantized_model = ORTModelForSequenceClassification.from_pretrained(
HUB_MODEL, file_name="model_quantized.onnx"
)
✨ 主な機能
- 高速推論:DistilCamemBERTをベースにしているため、推論時間を半分に削減し、同じ消費電力で高速な処理が可能です。
- ゼロショット分類:学習なしでテキスト分類ができるゼロショット分類器を作成できます。
📦 インストール
このモデルを使用するには、transformers
ライブラリが必要です。以下のコマンドでインストールできます。
pip install transformers
📚 ドキュメント
データセット
FLUEのXNLIデータセットは、トレーニング用に392,702の前提文とその仮説文が、テスト用に5,010のペアが含まれています。目標は、テキストの含意関係(文Aが文Bを含意するか、矛盾するか、またはそのどちらでもないか)を予測することで、分類タスクとなっています。
評価結果
クラス |
精度 (%) |
F1スコア (%) |
サポート |
全体 |
77.70 |
77.45 |
5,010 |
矛盾 |
78.00 |
79.54 |
1,670 |
含意 |
82.90 |
78.87 |
1,670 |
中立 |
72.18 |
74.04 |
1,670 |
ベンチマーク
ゼロショット分類
このモデルの主な利点は、学習なしでテキスト分類ができるゼロショット分類器を作成できることです。このタスクは以下の式で要約できます。
$$P(hypothesis=i\in\mathcal{C}|premise)=\frac{e^{P(premise=entailment\vert hypothesis=i)}}{\sum_{j\in\mathcal{C}}e^{P(premise=entailment\vert hypothesis=j)}}$$
allocineデータセット
mlsumデータセット
🔧 技術詳細
このモデルは、XNLIデータセットを使用して微調整されています。XNLIデータセットは、前提文と仮説文のペアを含み、前提文が仮説文を含意するか、矛盾するか、またはそのどちらでもないかを判定するために使用されます。
📄 ライセンス
このプロジェクトはMITライセンスの下でライセンスされています。
📖 引用
@inproceedings{delestre:hal-03674695,
TITLE = {{DistilCamemBERT : une distillation du mod{\`e}le fran{\c c}ais CamemBERT}},
AUTHOR = {Delestre, Cyrile and Amar, Abibatou},
URL = {https://hal.archives-ouvertes.fr/hal-03674695},
BOOKTITLE = {{CAp (Conf{\'e}rence sur l'Apprentissage automatique)}},
ADDRESS = {Vannes, France},
YEAR = {2022},
MONTH = Jul,
KEYWORDS = {NLP ; Transformers ; CamemBERT ; Distillation},
PDF = {https://hal.archives-ouvertes.fr/hal-03674695/file/cap2022.pdf},
HAL_ID = {hal-03674695},
HAL_VERSION = {v1},
}