Вернуться к списку задач

MathLogicQA

Тип задачи
Математика и логика
Формат вывода
Выбор ответа
Метрика
Accuracy
Домены
Математика
Системное мышление
Статистика
dev: 680
test: 1143

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

Задание состоит в решении математических задач, сформулированных на естественном языке, следующих типов:

  • составление и решение уравнения,
  • составление и решение системы уравнений,
  • решение задачи на пропорции и сравнение,
  • сопоставление описываемых в задаче объектов с неизвестными переменными в уравнении.

Каждый пример в датасете состоит из текстовой задачи с вопросом и 4 вариантами ответа. Правильный ответ может быть только один.

Мотивация

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

Поля данных

Каждый пример имеет фиксированные поля данных:

  • instruction — строка, содержащая инструкцию для задачи и информацию о требованиях к формату вывода модели. Использованные промпты представлены в репозитории проекта.
  • inputs — словарь, содержащий данные для входа модели.
    • id — целое число, обозначающее индекс примера;
    • option_a — строка, содержащая вариант ответа A;
    • option_b — строка, содержащая вариант ответа B;
    • option_c — строка, содержащая вариант ответа C;
    • option_d — строка, содержащая вариант ответа D;
  • outputs — строка, содержащая букву правильного ответа.
  • meta — словарь, содержащий метаинформацию:
    • id — целое число, обозначающее номер задания;
    • task — строка, содержащая информацию о типе задания: math — решение систем уравнений и сравнение величин; logiс — сопоставление объектов, описываемые в задаче, с неизвестными переменными в уравнении и их решение.

Промпты

Промпты представлены в виде инструкций, всего 10 различных промптов.

Пример промпта:

"Решите математичеcкую задачу: {text}\nA) {option_a}\nB) {option_b}\nC) {option_c}\nD) {option_d}\nВыберите один правильный ответ. В ответе укажите только букву правильного ответа.\nОтвет:"

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

В датасет вошли два типа задач: logic и math.

logic

Задачи типа logic представляют собой математические задачи, сформулированные на естественном языке. Для решения подобного вида задач необходимо построить систему уравнений (или одно уравнение) и решить ее, сопоставив описываемые в задаче объекты с неизвестными переменными в уравнении. Задачи данного типа формировались с использовались открытых источников, содержащие базы математических задач. 

math

Задачи типа math состоят из математического выражения (линейного уравнения или системы линейных уравнений), а также вопроса по данному выражению. Для ответа на вопрос необходимо решить линейное уравнение или систему линейных уравнений. Для некоторых задач также необходимо произвести операцию сравнения. Математические выражения представляют собой синтетические данные, сгенерированные с помощью open source библиотеки google-deepmind/mathematics_dataset с использованием модулей linear_1d и linear_2d. Полученные сгенерированные выражения были переписаны с математического языка на естественный русский язык с использованием разметчиков. Далее для каждого выражения разметчики сформулировали вопрос на естественном языке и правильный ответ.

При формировании датасета к части задач разметчики добавляли инструкцию на естественном языке, характеризующую задание. Для каждого задания из датасета разметчики также сформулировали 3 неправильных варианта ответа.

Валидация

Все примеры из датасета прошли валидацию разметчиками на платформе Яндекс.Толока. Разметчики проверяли корректность условий задачи и правильность ответа. Основной пул разметки включал в себя все 2000 заданий типа math и 570 заданий типа logic. Для каждого примера было установлено перекрытие в 3 человека с возможностью увеличения до 5, если согласованность в задании менее 70%. Из итоговой разметки были исключены ответы разметчиков, которые показали точность разметки на контрольных заданиях менее 50% .

В результате валидации в итоговую тестовую выборку вошли примеры с полной согласованностью разметчиков. В обучающую выборку вошли оставшиеся примеры с согласованностью выше 60%.

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

Человеческая оценка производилась с помощью платформы Яндекс.Толока с перекрытием разметчиков равным 5.

Финальная оценка точности человека равна 0.99 .

Домены
Математика
Системное мышление
Статистика
dev: 680
test: 1143