🚀 クイックスタート
このモデルは、2つのロシア語の文章の意味的な同等性を予測するために学習されたクロスエンコーダモデルです。文章のペアをパラフレーズ(クラス1)または非パラフレーズ(クラス0)として分類します。そのスコアは、パラフレーズや文章のスタイル変換における内容の保存の指標として使用できます。
✨ 主な機能
- ロシア語の文章ペアのパラフレーズ分類が可能です。
- パラフレーズや文章のスタイル変換における内容保存の指標としてスコアを提供します。
📦 インストール
このモデルを使用するには、transformers
ライブラリが必要です。以下のコマンドでインストールできます。
pip install transformers torch
💻 使用例
基本的な使用法
import torch
from transformers import AutoModelForSequenceClassification, AutoTokenizer
model = AutoModelForSequenceClassification.from_pretrained('SkolkovoInstitute/ruRoberta-large-paraphrase-v1')
tokenizer = AutoTokenizer.from_pretrained('SkolkovoInstitute/ruRoberta-large-paraphrase-v1')
def get_similarity(text1, text2):
""" Predict the probability that two Russian sentences are paraphrases of each other. """
with torch.inference_mode():
batch = tokenizer(
text1, text2,
truncation=True, max_length=model.config.max_position_embeddings, return_tensors='pt',
).to(model.device)
proba = torch.softmax(model(**batch).logits, -1)
return proba[0][1].item()
print(get_similarity('Я тебя люблю', 'Ты мне нравишься'))
print(get_similarity('Я тебя люблю', 'Я тебя ненавижу'))
📚 ドキュメント
モデルの詳細
このモデルは、sberbank-ai/ruRoberta-largeモデルを3つのデータセットの統合でファインチューニングしたものです。
RuPAWS
: https://github.com/ivkrotova/rupaws_dataset (QuoraとQQPをベースに作成)
ru_paraphraser
: https://huggingface.co/merionum/ru_paraphraser
- RUSSE-2022の文章の解毒データセットコレクション(
content_5.tsv
)の内容保存の手動チェック結果
タスクは、2つの文章が同じ意味を持つか(1)、異なる意味を持つか(0)の二値分類として定式化されました。
学習データセットのサイズ
以下の表は、データセットの複製(text1 + text2
とtext2 + text1
のペアの結合)後の学習データセットのサイズを示しています。
ソース \ ラベル |
0 |
1 |
detox |
1412 |
3843 |
paraphraser |
5539 |
1688 |
rupaws_qqp |
1112 |
792 |
rupaws_wiki |
3526 |
2166 |
学習ハイパーパラメータ
モデルはAdamオプティマイザを使用し、以下のハイパーパラメータで学習されました。
learning_rate = 1e-5
batch_size = 8
gradient_accumulation_steps = 4
n_epochs = 3
max_grad_norm = 1.0
テストセットでのROC AUCスコア
学習後のモデルは、以下のテストセットで次のROC AUCスコアを記録しました。
セット |
ROC AUC |
detox |
0.857112 |
paraphraser |
0.858465 |
rupaws_qqp |
0.859195 |
rupaws_wiki |
0.906121 |
🔧 技術詳細
このモデルは、ロシア語の文章のパラフレーズ分類を目的としたクロスエンコーダモデルです。sberbank-ai/ruRoberta-large
モデルをベースに、3つのデータセットを統合してファインチューニングを行いました。学習は二値分類タスクとして行われ、文章ペアが同じ意味を持つかどうかを予測します。学習にはAdamオプティマイザを使用し、特定のハイパーパラメータを設定しています。学習後のモデルは、複数のテストセットで良好なROC AUCスコアを達成しています。