/ Модель

Характеристики

Контекст
514 токенов
Параметры
454 млн
Лицензия
MIT
Архитектура
roberta · dense

roberta-large-snli_mnli_fever_anli_R1_R2_R3-nli

Классификация текстаТекст → label3 профессии

Крупная модель RoBERTa-Large классифицирует логические отношения между текстами и подходит для задач проверки гипотез и утверждений.

7 897скачиваний за 30 дней22лайкавеса обновлены20 мая 2021

Бенчмарки

Как модель справилась с задачами пользователей ailist и что о ней публикуют открытые лидерборды

Публичные оценки

Из открытых лидербордов. Сравнивайте результаты одного теста при одинаковых условиях — отсутствие оценки не значит, что модель хуже.

В подключённых источниках результатов для этой модели пока нет.

Что умеет модель

Описание составлено по карточке модели и метаданным Hugging Face

Модель ynie/roberta-large-snli_mnli_fever_anli_R1_R2_R3-nli — крупная предобученная RoBERTa-Large для классификации логических отношений между парой текстов. Её обучил Yixin Nie на наборах SNLI, MNLI, FEVER-NLI и состязательных примерах ANLI раундов R1–R3. Размер модели — 454,1 млн параметров, максимальная длина контекста — 514 токенов; доступны варианты весов PyTorch и Flax.

Модель предназначена для задач inference по текстовым парам: определения, следует ли гипотеза из посылки, противоречит ли ей или не связана с ней. Её можно применять для проверки утверждений и оценки текстовых гипотез, в том числе на сложных примерах естественного языка. Лицензия — MIT.

Сценарии применения

  • определение логического следования между посылкой и гипотезой
  • классификация противоречий между двумя текстами
  • проверка утверждений по текстовым свидетельствам
  • оценка текстовых гипотез в системах понимания языка

Ограничения

Модель ориентирована на классификацию отношений между текстами, а не на генерацию ответов; качество может снижаться на примерах, отличающихся от обучающих наборов и распределений данных.

Для каких профессий подходит3

Разделы каталога профессий, в задачах которых используется эта модель

Все профессии

Карточка модели

README от автора на Hugging Face, как он его опубликовал

Открыть на Hugging Face

This is a strong pre-trained RoBERTa-Large NLI model.

The training data is a combination of well-known NLI datasets: SNLI, MNLI, FEVER-NLI, ANLI (R1, R2, R3).
Other pre-trained NLI models including RoBERTa, ALBert, BART, ELECTRA, XLNet are also available.

Trained by Yixin Nie, original source.

Try the code snippet below.

from transformers import AutoTokenizer, AutoModelForSequenceClassification
import torch

if __name__ == '__main__':
    max_length = 256

    premise = "Two women are embracing while holding to go packages."
    hypothesis = "The men are fighting outside a deli."

    hg_model_hub_name = "ynie/roberta-large-snli_mnli_fever_anli_R1_R2_R3-nli"
    # hg_model_hub_name = "ynie/albert-xxlarge-v2-snli_mnli_fever_anli_R1_R2_R3-nli"
    # hg_model_hub_name = "ynie/bart-large-snli_mnli_fever_anli_R1_R2_R3-nli"
    # hg_model_hub_name = "ynie/electra-large-discriminator-snli_mnli_fever_anli_R1_R2_R3-nli"
    # hg_model_hub_name = "ynie/xlnet-large-cased-snli_mnli_fever_anli_R1_R2_R3-nli"

    tokenizer = AutoTokenizer.from_pretrained(hg_model_hub_name)
    model = AutoModelForSequenceClassification.from_pretrained(hg_model_hub_name)

    tokenized_input_seq_pair = tokenizer.encode_plus(premise, hypothesis,
                                                     max_length=max_length,
                                                     return_token_type_ids=True, truncation=True)

    input_ids = torch.Tensor(tokenized_input_seq_pair['input_ids']).long().unsqueeze(0)
    # remember bart doesn't have 'token_type_ids', remove the line below if you are using bart.
    token_type_ids = torch.Tensor(tokenized_input_seq_pair['token_type_ids']).long().unsqueeze(0)
    attention_mask = torch.Tensor(tokenized_input_seq_pair['attention_mask']).long().unsqueeze(0)

    outputs = model(input_ids,
                    attention_mask=attention_mask,
                    token_type_ids=token_type_ids,
                    labels=None)
    # Note:
    # "id2label": {
    #     "0": "entailment",
    #     "1": "neutral",
    #     "2": "contradiction"
    # },

    predicted_probability = torch.softmax(outputs[0], dim=1)[0].tolist()  # batch_size only one

    print("Premise:", premise)
    print("Hypothesis:", hypothesis)
    print("Entailment:", predicted_probability[0])
    print("Neutral:", predicted_probability[1])
    print("Contradiction:", predicted_probability[2])

More in here.

Citation:

@inproceedings{nie-etal-2020-adversarial,
    title = "Adversarial {NLI}: A New Benchmark for Natural Language Understanding",
    author = "Nie, Yixin  and
      Williams, Adina  and
      Dinan, Emily  and
      Bansal, Mohit  and
      Weston, Jason  and
      Kiela, Douwe",
    booktitle = "Proceedings of the 58th Annual Meeting of the Association for Computational Linguistics",
    year = "2020",
    publisher = "Association for Computational Linguistics",
}

Как запустить

На своей GPU в ailist. Цена — по текущим предложениям провайдеров

GPU в ailist

Универсальный рантайм · text-classification

Можно запустить

Подбираем GPU…

Класс архитектуры
RobertaForSequenceClassification
Ревизия весов
5b605ab

0 моделей