Задачи

Скачать

ruModAr

Описание задачи

Russian Modified Arithmetics (ruModAr) / Модифицированная арифметика — это математическая задача из BIG-bench, проверяющая способность модели изучать новые знания на основе контекстных примеров и затем вычислять результат на основе новых навыков.

Каждый вопрос в каждой подзадаче начинается с инструкции и пяти арифметических выражений с подсчитанными результатами. Шестой пример неполный, задача модели — правильно его закончить (вычислить результат).

Ключевые слова: арифметика, свободный ответ, математика, few-shot

Мотивация

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

Описание датасета

Каждая подзадача (сложение, вычитание, умножение с/без добавления +1 к результату) включает 1000 вопросов. Символ -> используется вместо =, поскольку последний уже имеет определенное каноническое значение. В заданиях может обозначать “=” или “+ 1 = ”. В итоге получаются наборы данных для 6 подзадач: addition_control, addition_plus_one, subtraction_control, subtraction_plus_one, multiplication_control, multiplication_plus_one. Аргументы подзадач с двузначными числами (префикс задания multiplication_) генерируются случайным образом из [0, 100), а аргументы с трехзначными числами (префикс задания subtraction_ и addition_) — из [0, 1000).

Поля датасета

  • instruction — инструктивный промпт заданный под текущее задание;
  • inputs — пять примеров для распознавания закономерности, шестой — для вычисления моделью;
  • outputs — целевая переменная, результат вычисления последнего примера;
  • meta — поле для дополнительной информации:  
    • id — номер примера из датасета;
    • task_type — тип подзадачи.

Пример данных

Ниже приведен пример из подзадачи three_digit_addition_plus_one.

{
    "instruction": "В следующих строках символ -> представляет собой одну простую математическую операцию. Определи операцию и вычисли последний пример:\\n{inputs}"               
    "inputs": "102 + 435 -> 538\\n860 + 270 -> 1131\\n106 + 71 -> 178\\n700 + 20 -> 721\\n614 + 121 -> 736\\n466 + 214 ->"
    "outputs": "681"
    "meta": {
	"id": 1
	"task_type": "three_digit_addition_plus_one"
}

Разбиение датасета

Набор данных состоит из публичного тестового сета (train split) с разметкой (6000 примеров) и закрытого тестового набора (test split) для оценки модели (6000 примеров).

Промпты

Для датасета было подготовлено 5 промптов различной сложности. Пример:

В следующих строках символ -> представляет собой одну простую математическую операцию. Вычисли последний пример с учетом результатов вычисленных выражений:\n{inputs}

Создание датасета

Публичный тестовый сет взят из Big-Bench.
Закрытый тестовый сет сгенерирован с нуля кодом по оригинальной методологии из Big-Bench.

Оценка

Метрики качества

В качестве метрики качества используется Exact Match (EM). Для каждого примера 1.0 присваивается, если целевая последовательность ТОЧНО соответствует предсказанной последовательности. В противном случае присваивается 0.0. Общий балл равен средней точности по всем последовательностям.

Человеческая оценка

Измерялась на подмножестве из 1800 примеров (подвыборки по 300 примеров на одну подзадачу из тестового набора с исходным распределением целевой переменной). Подзадачи оценивались в одном пуле с перекрытием 5.

Финальная оценка  человека равна 0.999.

Ссылки

[1] Brown, T.B., et al. (2020) Language models are few-shot learners. arXiv:2005.14165.