## Контекст
Программирование является ключевым аспектом развития современной цифровой экономики. Одним из основных элементов развития программного обеспечения являются кодовые языковые модели (CodeLLMs), которые используются для различных задач в области программирования, таких как перевод кода, завершение кода и его сводка. Однако традиционные CodeLLMs обучаются только на основе машинного внимания, которое определяет важность токенов во входном тексте на основе их зависимости от выходных токенов. Это подход не учитывает того факта, что люди, написавшие код, имеют интуитивное понимание того, какие токены важнее других, и это влияет на их принятие решений. Несмотря на то, что интуиция нельзя точно определить, визуальное внимание людей может служить показателем того, какие токены более важны. Мы предлагаем EyeMulator, новая техника, которая позволяет обучить CodeLLMs так, чтобы они могли мимикрировать зависимостью визуального внимания человека во время обучения.
## Метод
EyeMulator представляет собой метод, который модифицирует традиционные CodeLLMs в ходе их обучения. Для этого мы используем данные, полученные во время экспериментов по экспериментам с потоком сознания (eye-tracking experiments), проведенными ранее в области программирования. Эти данные позволяют определить, какие токены привлекают внимание человека во время просмотра кода. Мы добавляем эти данные в loss function во время тренировки модели. Это означает, что мы придаем больше важности тем токенам, на которые человек больше всего смотрит. Кроме того, в EyeMulator мы не требуем использования eye-tracking данных во время инференса (применения модели), так как веса для каждого токена были уже учтены в ходе обучения.
## Результаты
Мы провели ряд экспериментов, используя EyeMulator вместе с несколькими CodeLLMs на различных задачах в области кода: перевод кода, завершение кода и его сводка. Мы сравнили EyeMulator с сильными базовыми моделями, такими как CodeLLMs и CodeGPT. Наши результаты показали, что EyeMulator значительно превосходит эти модели по метрикам качества, таким как BLEU, ROUGE и CodeBLEU. Это доказывает, что EyeMulator действительно улучшает качество результатов, используя метод мимикрирования визуального внимания человека. Также мы провели анализ абляции (аблиационное исследование), который показал, что улучшение происходит благодаря тому, что модели учились мимикрировать зависимость визуального внимания.
## Значимость
EyeMulator может применяться во многих областях, в которых требуется повышение качества работы с кодом, такие как программирование, тестирование, документация и другие. Он привносит дополнительные преимущества, так как учитывает желания людей, быстрее и точнее реагировать на важные токены