/ Модель

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

Контекст
4 098 токенов
Параметры
152 млн
Лицензия
MIT
Архитектура
longformer · dense

longformer-base-4096-finetuned-squadv1

Ответы на вопросыТекст → текст6 профессий

Longformer-base-4096, дообученная на SQuAD v1, извлекает ответы на вопросы из контекста, в том числе длинного.

1 007скачиваний за 30 дней22лайкавеса обновлены10 фев 2021

Бенчмарки

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

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

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

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

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

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

Это модель Longformer-base-4096, дообученная Сураджем Патилом на наборе SQuAD v1 для ответов на вопросы по заданному контексту. Longformer разработан Изом Белтаги, Мэттью Питерсом и Арманом Коха из AllenAI и использует архитектуру на основе трансформера с локальным скользящим вниманием; модель содержит 151,8 млн параметров и рассчитана на последовательности длиной до 4098 токенов.

Модель предназначена для извлечения ответа из длинного текста по вопросу пользователя. В README приведены результаты на SQuAD v1: Exact Match 85,15 и F1 91,54. Для задачи вопроса и ответа вопросу назначается глобальное внимание; карточка рекомендует передавать вопрос вместе с контекстом в виде пары входов. Указана лицензия MIT. Обучение на SQuAD v1 не гарантирует качество на других предметных областях или языках.

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

  • Извлечение ответа из статьи по вопросу
  • Ответы на вопросы по длинным документам
  • Поиск факта в предоставленном контексте

Ограничения

Модель дообучена на SQuAD v1, поэтому её качество на других языках и предметных областях не установлено. Для работы с вопросом и контекстом требуется корректная подача пары входов; README отмечает требования к специальным разделительным токенам.

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

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

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

Также подходит для

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

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

Открыть на Hugging Face

LONGFORMER-BASE-4096 fine-tuned on SQuAD v1

This is longformer-base-4096 model fine-tuned on SQuAD v1 dataset for question answering task.

Longformer model created by Iz Beltagy, Matthew E. Peters, Arman Coha from AllenAI. As the paper explains it

Longformer is a BERT-like model for long documents.

The pre-trained model can handle sequences with upto 4096 tokens.

Model Training

This model was trained on google colab v100 GPU. You can find the fine-tuning colab here Open In Colab.

Few things to keep in mind while training longformer for QA task, by default longformer uses sliding-window local attention on all tokens. But For QA, all question tokens should have global attention. For more details on this please refer the paper. The LongformerForQuestionAnswering model automatically does that for you. To allow it to do that

  1. The input sequence must have three sep tokens, i.e the sequence should be encoded like this <s> question</s></s> context</s>. If you encode the question and answer as a input pair, then the tokenizer already takes care of that, you shouldn't worry about it.
  2. input_ids should always be a batch of examples.

Results

Metric# Value
Exact Match85.1466
F191.5415

Model in Action 🚀

import torch
from transformers import AutoTokenizer, AutoModelForQuestionAnswering,

tokenizer = AutoTokenizer.from_pretrained("valhalla/longformer-base-4096-finetuned-squadv1")
model = AutoModelForQuestionAnswering.from_pretrained("valhalla/longformer-base-4096-finetuned-squadv1")

text = "Huggingface has democratized NLP. Huge thanks to Huggingface for this."
question = "What has Huggingface done ?"
encoding = tokenizer(question, text, return_tensors="pt")
input_ids = encoding["input_ids"]

# default is local attention everywhere
# the forward method will automatically set global attention on question tokens
attention_mask = encoding["attention_mask"]

start_scores, end_scores = model(input_ids, attention_mask=attention_mask)
all_tokens = tokenizer.convert_ids_to_tokens(input_ids[0].tolist())

answer_tokens = all_tokens[torch.argmax(start_scores) :torch.argmax(end_scores)+1]
answer = tokenizer.decode(tokenizer.convert_tokens_to_ids(answer_tokens))
# output => democratized NLP

The LongformerForQuestionAnswering isn't yet supported in pipeline . I'll update this card once the support has been added.

Created with ❤️ by Suraj Patil Github icon Twitter icon

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

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

GPU в ailist

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

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

Подбираем GPU…

Класс архитектуры
LongformerForQuestionAnswering
Ревизия весов
159b620

0 моделей