Вся основная информация, которую вам нужно знать о Стэнфордском наборе данных с ответами на вопросы (SQuAD).

Стэнфордский набор данных с ответами на вопросы (SQuAD) - это набор пар вопросов и ответов, которые представляют серьезную проблему для моделей НЛП. Если вы просто хотите узнать о популярном наборе данных НЛП или планируете использовать его в одном из своих проектов, вот все основы, которые вам следует знать.

Какую задачу представляет SQuAD? Как следует из названия, SQuAD фокусируется на задаче ответов на вопросы. Он проверяет способность модели читать отрывок текста, а затем отвечать на вопросы о нем (ретроспективный анализ понимания прочитанного на SAT). Это относительно простая задача; вот пример, который привели создатели набора данных:

Как был создан SQuAD? Для компиляции SQuAD создатели отобрали 536 из 10 000 лучших статей Википедии. Из каждой из этих отобранных статей они извлекли в общей сложности 23 215 отдельных абзацев (не забудьте отфильтровать абзацы, которые были слишком маленькими). Они разбили набор данных по статьям так, что 80% статей попали в набор для обучения, 10% - в набор для разработки и 10% - в набор для тестирования.

Аннотирование SQuAD. Самая важная часть создания набора данных - аннотирование его - была выполнена сотрудниками Mechanical Turk. Классика! Я вижу, как "Механический турок" появляется во многих этих статьях о НЛП. Эти работники отбирались только в том случае, если у них был опыт работы высокого качества (по оценке HIT). Для каждого выбранного абзаца рабочих попросили придумать и ответить на 5 вопросов по содержанию абзаца. Им было предоставлено текстовое поле для ввода вопроса, и они могли выделить ответы в абзаце. Создатели SQuAD позаботились о том, чтобы вопросы, которые задавали рабочие, были их собственными словами, даже отключив функцию копирования и вставки. Неееет! Не мои инструменты для копирования и вставки!

Анализ набора данных. Важной частью хорошего набора данных является понимание его свойств. Для этого создатели исследовали три направления:

  1. Категории ответов. Каждый ответ был разделен на одну из следующих категорий: «дата», «другое число», «человек», «местоположение», «другая сущность», «фраза нарицательное», «Фраза прилагательного», «фраза глагола», «пункт» и «другое». Они обнаружили, что даты и числа составили 19,8% ответов, существительные - 32,6%, словосочетания - 31,8%, а другие категории - 15,8%.
  2. Требуется объяснение. Создатели выбрали вопросы из набора для разработки и вручную разметили вопросы по различным категориям аргументов, необходимых для ответа на них. Например, категория «синтаксическая вариация» означает, что вопрос существенно перефразирован, и для поиска ответа требуется перестановка слов. Под этими пунктами я включил исходную таблицу со всеми категориями и процентом вопросов, попадающих в эту категорию.
  3. Синтаксическое расхождение. Создатели измерили синтаксическое расхождение между вопросом и предложением, содержащим ответ, чтобы измерить сложность вопроса. По сути, они создали метрику, которая оценивает количество правок, необходимых для преобразования вопроса в предложение с ответом. Подробности можно найти в исходной статье здесь, но важно то, что в наборе данных был обнаружен широкий диапазон синтаксических расхождений. Всегда полезно убедиться, что набор данных разнообразен!

Что делает SQuAD таким хорошим? Конечно, для такой задачи, как ответы на вопросы, существует множество наборов данных. При сравнении SQuAD с другими наборами данных есть несколько основных отличий:

  • SQuAD большой. Другие наборы данных для понимания прочитанного, такие как MCTest и Deep Read, слишком малы для поддержки интенсивных и сложных моделей. В MCTest всего 2640 вопросов, а в Deep Read всего 600 вопросов. В SQuAD в этих наборах данных преобладает более 100 000 вопросов.
  • SQuAD - сложная задача. В других наборах данных для ответов на вопросы, основанных на документах, которые ориентированы на извлечение ответов, ответ на заданный вопрос находится в нескольких документах. Однако в SQuAD модель имеет доступ только к одному отрывку, что представляет собой гораздо более сложную задачу, поскольку упустить ответ не так уж и сложно.
  • SQuAD требует рассуждений. Популярный тип набора данных - набор данных cloze, который просит модель предсказать пропущенное слово в отрывке. Эти наборы данных большие, и они представляют собой задачу, в чем-то похожую на SQuAD. Ключевое улучшение, которое SQuAD вносит в этот аспект, заключается в том, что его ответы более сложные и, следовательно, требуют более интенсивных рассуждений, что делает SQuAD лучше для оценки понимания и возможностей модели.

Заключительные мысли. SQuAD, вероятно, является одним из самых популярных наборов данных с ответами на вопросы (его цитировали более 2000 раз), потому что он хорошо создан и улучшает многие аспекты, которые не учитываются другими наборами данных. Я настоятельно рекомендую всем, кто хочет оценить модель НЛП, протестировать ее на SQuAD, так как это отличный набор данных для проверки понимания модели языка и даже производительности в целом.

Дальнейшее чтение: