Автоматический синтез экстракторов признаков: LLM-агент обогнал экспертные методы
Выбор подходящего алгоритма для решения задачи удовлетворения ограничений во многом зависит от признаков, описывающих структуру задачи. Обычно такие признаки разрабатываются вручную, что требует глубоких экспертных знаний и замедляет реакцию на появление новых классов задач.
В новой работе на arXiv предложен автоматический подход: большая языковая модель в цикле check-fix-verify синтезирует исполняемые Python-скрипты. Эти скрипты выступают в роли интерпретируемых экстракторов признаков, специфичных для конкретной задачи.
На вход агент получает высокоуровневую модель MiniZinc и экземпляр задачи. Сгенерированный код строит типизированное графовое представление и вычисляет структурные характеристики: плотность графа, кластеризацию переменных и жесткость ограничений.
Работу метода проверили на трех комбинаторных задачах: маршрутизации транспорта, последовательности выпуска автомобилей и кодах с исправлением ошибок фиксированной длины. В эксперименте использовался портфель из пяти современных решателей.
Синтезированные экстракторы позволили создать селекторы алгоритмов, которые стабильно превосходят экспертный инструмент mzn2feat. На задаче FLECC точность на тестовом наборе выросла до 8,3 процентного пункта. Кроме того, результаты оказались лучше, чем у лучших вариантов трансформерного подхода trans2feat.
Важное преимущество предложенного метода — сохраняемая интерпретируемость создаваемых экстракторов. Это упрощает контроль и доработку кода, тогда как автоматический процесс снимает необходимость ручной настройки при появлении новых классов задач.



