Информация о статье

2026 г., Том 31, № 4, с.123-131

Шипицын М.Н., Фёдоров Р.К.

Векторное представление исходного кода на основе хеширования абстрактного синтаксического дерева

Разработано представление исходного кода в виде бинарных векторов на основе хеширования поддеревьев абстрактного синтаксического дерева (AST). Предлагаемый подход позволяет выявлять структурные сходства и различия между фрагментами программ за счет перехода к количественным метрикам, что упрощает решение задач сравнения версий, поиска дубликатов и обнаружения плагиата. В рамках исследования создано расширенное представление AST с возможностью аннотирования узлов метаданными и реализован рекурсивный алгоритм хеширования с фильтрацией полей, не влияющих на структуру управления. На основе полученных хеш-значений сформированы бинарные векторы фиксированной размерности, которые после исключения редких признаков и преобразования в разреженный формат использованы в качестве входных данных для классификатора Random Forest. Экспериментальная валидация проведена на наборе данных Python75 с решениями 75 задач. Точность классификации типа решаемой задачи по исходному коду достигла 89.8 %, что подтверждает практическую пригодность разработанного метода для задач анализа программного кода с применением методов машинного обучения.


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

Библиографическая ссылка:
Шипицын М.Н., Фёдоров Р.К. Векторное представление исходного кода на основе хеширования абстрактного синтаксического дерева // Вычислительные технологии. 2026. Т. 31. № 4. С. 123-131
Главная| Цели| Редколлегия| Содержание| Поиск| Подписка| Правила| Контакты
ISSN 1560-7534
© 2026 ФИЦ ИВТ, Новосибирск