/ Модель

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

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

qanlu

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

Дообученная на ATIS модель RoBERTa извлекает намерения и значения слотов из англоязычных запросов, представляя NLU как ответы на вопросы.

78скачиваний за 30 дней14лайковвеса обновлены30 сен 2021

Бенчмарки

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

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

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

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

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

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

Question Answering NLU (QANLU) — модель AmazonScience, дообученная на наборе ATIS для понимания запросов о авиаперелётах. Она представляет NLU-задачи как ответы на вопросы на естественном языке: по тексту высказывания можно задавать вопросы об намерении пользователя и значениях слотов, например о типе поездки, времени вылета или цене. Такой подход предназначен для извлечения намерений и сущностей в сценариях с небольшим количеством примеров; контекст может включать префикс «Yes. No.» для ответов на вопросы об намерениях.

Модель использует архитектуру RoBERTa для question answering, содержит 151,8 млн параметров и рассчитана на контекст до 514 токенов. Принимает текст на английском языке и выдаёт текстовые ответы. Она обучена на английских примерах ATIS и предназначена для демонстрации подхода; для других предметных областей и задач README рекомендует дообучение на подходящих данных. Лицензия — CC BY 4.0.

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

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

Ограничения

Модель дообучена на англоязычном наборе ATIS и предназначена для авиадомена; для других доменов или задач требуется дообучение на релевантных данных. Контекст ограничен 514 токенами.

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

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

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

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

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

Открыть на Hugging Face

Question Answering NLU

Question Answering NLU (QANLU) is an approach that maps the NLU task into question answering, leveraging pre-trained question-answering models to perform well on few-shot settings. Instead of training an intent classifier or a slot tagger, for example, we can ask the model intent- and slot-related questions in natural language:

Context : Yes. No. I'm looking for a cheap flight to Boston.

Question: Is the user looking to book a flight?
Answer  : Yes

Question: Is the user asking about departure time?
Answer  : No

Question: What price is the user looking for?
Answer  : cheap

Question: Where is the user flying from?
Answer  : (empty)

Note the "Yes. No. " prepended in the context. Those are to allow the model to answer intent-related questions (e.g. "Is the user looking for a restaurant?").

Thus, by asking questions for each intent and slot in natural language, we can effectively construct an NLU hypothesis. For more details, please read the paper: Language model is all you need: Natural language understanding as question answering.

Model training

Instructions for how to train and evaluate a QANLU model, as well as the necessary code for ATIS are in the Amazon Science repository.

Intended use and limitations

This model has been fine-tuned on ATIS (English) and is intended to demonstrate the power of this approach. For other domains or tasks, it should be further fine-tuned on relevant data.

Use in transformers:

from transformers import AutoTokenizer, AutoModelForQuestionAnswering, pipeline
  
tokenizer = AutoTokenizer.from_pretrained("AmazonScience/qanlu", use_auth_token=True)

model = AutoModelForQuestionAnswering.from_pretrained("AmazonScience/qanlu", use_auth_token=True)

qa_pipeline = pipeline('question-answering', model=model, tokenizer=tokenizer)

qa_input = {
  'context': 'Yes. No. I want a cheap flight to Boston.',
  'question': 'What is the destination?'
}

answer = qa_pipeline(qa_input)

Citation

If you use this work, please cite:

@inproceedings{namazifar2021language,
  title={Language model is all you need: Natural language understanding as question answering},
  author={Namazifar, Mahdi and Papangelis, Alexandros and Tur, Gokhan and Hakkani-T{\"u}r, Dilek},
  booktitle={ICASSP 2021-2021 IEEE International Conference on Acoustics, Speech and Signal Processing (ICASSP)},
  pages={7803--7807},
  year={2021},
  organization={IEEE}
}

License

This library is licensed under the CC BY NC License.

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

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

GPU в ailist

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

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

Подбираем GPU…

Класс архитектуры
RobertaForQuestionAnswering
Ревизия весов
3e73060

0 моделей