🚀 スペイン語RoBERTa2RoBERTa (roberta-base-bne):MLSUM ESの要約タスクでファインチューニング済み
このモデルは、MLSUM ESデータセットを使用して要約タスクに特化してファインチューニングされたスペイン語のRoBERTa2RoBERTaモデルです。MLSUM ESの多様なニュース記事と要約のペアを用いて学習され、高精度な要約生成が可能です。
🚀 クイックスタート
このモデルを使用することで、スペイン語のテキストを効率的に要約することができます。以下のセクションでは、モデルの詳細、使用するデータセット、結果、使用例について説明します。
✨ 主な機能
- 高精度な要約生成:MLSUM ESデータセットでファインチューニングされたため、スペイン語のテキストを高精度に要約できます。
- 簡単な使用方法:
transformers
ライブラリを使用して、簡単にモデルをロードし、要約を生成することができます。
📦 インストール
このモデルを使用するには、transformers
ライブラリとtorch
ライブラリが必要です。以下のコマンドでインストールできます。
pip install transformers torch
📚 ドキュメント
モデル
BSC - TeMU/roberta - base - bne (RoBERTaチェックポイント)をベースに、MLSUM ESデータセットでファインチューニングされています。
データセット
MLSUMは、初の大規模な多言語要約データセットです。オンライン新聞から収集され、フランス語、ドイツ語、スペイン語、ロシア語、トルコ語の5つの言語で150万以上の記事と要約のペアを含んでいます。人気のCNN/Daily mailデータセットの英語の新聞記事と合わせて、大規模な多言語データセットを形成し、テキスト要約コミュニティに新しい研究方向を提供します。
MLSUM es
結果
セット |
指標 |
値 |
テスト |
Rouge2 - mid - precision |
11.42 |
テスト |
Rouge2 - mid - recall |
10.58 |
テスト |
Rouge2 - mid - fmeasure |
10.69 |
テスト |
Rouge1 - fmeasure |
28.83 |
テスト |
RougeL - fmeasure |
23.15 |
HF/metrics rouge
を使用した生の指標:
rouge = datasets.load_metric("rouge")
rouge.compute(predictions=results["pred_summary"], references=results["summary"])
{'rouge1': AggregateScore(low=Score(precision=0.30393366820245, recall=0.27905239591639935, fmeasure=0.283148902808752), mid=Score(precision=0.3068521142101569, recall=0.2817252494122592, fmeasure=0.28560373425206464), high=Score(precision=0.30972608774202665, recall=0.28458152325781716, fmeasure=0.2883786700591887)),
'rougeL': AggregateScore(low=Score(precision=0.24184668819794716, recall=0.22401171380621518, fmeasure=0.22624104698839514), mid=Score(precision=0.24470388406868163, recall=0.22665793214539162, fmeasure=0.2289118878817394), high=Score(precision=0.2476594458951327, recall=0.22932683203591905, fmeasure=0.23153001570662513))}
rouge.compute(predictions=results["pred_summary"], references=results["summary"], rouge_types=["rouge2"])["rouge2"].mid
Score(precision=0.11423200347113865, recall=0.10588038944902506, fmeasure=0.1069921217219595)
💻 使用例
基本的な使用法
import torch
from transformers import RobertaTokenizerFast, EncoderDecoderModel
device = 'cuda' if torch.cuda.is_available() else 'cpu'
ckpt = 'Narrativa/bsc_roberta2roberta_shared-spanish-finetuned-mlsum-summarization'
tokenizer = RobertaTokenizerFast.from_pretrained(ckpt)
model = EncoderDecoderModel.from_pretrained(ckpt).to(device)
def generate_summary(text):
inputs = tokenizer([text], padding="max_length", truncation=True, max_length=512, return_tensors="pt")
input_ids = inputs.input_ids.to(device)
attention_mask = inputs.attention_mask.to(device)
output = model.generate(input_ids, attention_mask=attention_mask)
return tokenizer.decode(output[0], skip_special_tokens=True)
text = "Your text here..."
generate_summary(text)
作成者: Narrativa
Narrativaについて: 自然言語生成 (NLG) | 当社の機械学習ベースのプラットフォームであるGabrieleは、自然言語ソリューションを構築および展開します。 #NLG #AI