Описание задачи
Balanced Parentheses Sequence (BPS) / Сбалансированная последовательность — алгоритмическая задача из BIG-bench. Основная цель данной задачи — измерить способность языковых моделей понимать алгоритмические концепции компьютерных наук, такие как стеки, рекурсия или динамическое программирование.
Каждый пример представляет из себя последовательность скобок. Задача модели — правильно ответить, сбалансирована данная последовательность или нет.
Входная строка сбалансирована, если:
- Открытые скобки закрываются скобками того же типа.
- Открытые скобки закрываются в правильном порядке.
- Каждой закрывающей скобке соответствует открывающая скобка того же типа.
Замечание: Это диагностическое задание с открытым тестом. Результат на ней не участвует в расчет общего результата (Total score) модели на бенчмарке.
Ключевые слова: алгоритмы, численный ответ, длина контекста, скобки, бинарный ответ.
Авторы: Harsh Mehta, Behnam Neyshabur.
Мотивация
Алгоритмы — это способ экстраполяции примеров и один из способов описывать паттерны в задачах. В этом ключе способность языковых моделей понимать скобочные последовательности можно считать важным показателем “интеллекта”.
Поля датасета
instruction
— строка, содержащая инструкцию для задачи и информацию о требованиях к формату вывода модели;inputs
— пример скобочной последовательности;outputs
— строка, содержащая правильный ответ: “1” если последовательность скобок сбалансирована, иначе “0”;meta
— словарь, содержащий метаинформацию:id
— целое число, обозначающее номер задания.
Промпты
Для датасета было подготовлено 10 промптов различной сложности.
Пример:
"Проверьте входную последовательность скобок: \"{inputs}\" на сбалансированность. В случае положительного ответа выведите 1, иначе 0."
Создание датасета
Последовательности скобок c длинами: 2, 4, 8, 12, 20 были сгенерированы со следующим распределением:
— {20: 0.336; 12: 0.26; 8: 0.24; 4: 0.14; 2: 0.024}
для обучающего набора;
— {20: 0.301; 12: 0.279; 8: 0.273, 4: 0.121; 2: 0.026}
для тестового набора.
Человеческая оценка
Человеческая оценка замерялась на подмножестве размера 100
(с аналогичным распределением как в исходном сете). Результат на этой задаче равен 1.0
.