Формирование набора признаков и сравнительный анализ алгоритмов классификации для выявления искусственно сгенерированного исходного кода

DOI: 10.21293/1818-0442-2025-28-4-121-126

Скачать текст статьи в формате PDF

Скачать JATS xml

Аннотация: Представлен комплексный подход к формированию признакового пространства для решения задачи выявления искусственно сгенерированного исходного кода на языке программирования Python. Был разработан класс Algorithmic_Analyzer для извлечения 27 признаков, разделенных на четыре группы: базовые метрики кода, струк-турные характеристики, ключевые слова, библиотеки. Дополнительно извлекаются лексические паттерны с ис-пользованием словесных n-грамм. По результатам проведенных экспериментов с использованием классических алгоритмов машинного обучения установлено, что структурные характеристики демонстрируют более высокую значимость в сравнении с лексическими особенностями. Выявлены наиболее информативные признаки для ре-шения представленной в работе задачи. Наилучший результат показала модель XGBClassifier (F1_macro 0,90 в среднем).

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

Библиография статьи:
Букина С. Г. Формирование набора признаков и сравнительный анализ алгоритмов классификации для выявления искусственно сгенерированного исходного кода / С. Г. Букина, С. С. Харченко // Доклады Томского государственного университета систем управления и радиоэлектроники. – 2025. – Т. 28, № 4. – С. 121–126. DOI: 10.21293/1818-0442-2025-28-4-121-126

Авторы и правообладатели:

  • Букина С. Г. , Томский государственный университет систем управления и радиоэлектроники (Томск, Россия)
  • Харченко С. С. , Томский государственный университет систем управления и радиоэлектроники (Томск, Россия)

  • 1. Illia L. Ethical implications of text generation in the age of artificial intelligence / L. Illia, E. Colleoni, S. Zyglidopoulos // Business Ethics, the Environment & Responsibility. – 2023. – Vol. 32, No. 1. – P. 201–210.
  • 2. Asleep at the Keyboard? Assessing the Security of GitHub Copilot’s Code Contributions / H. Pearce, B. Ahmad, B. Tan, B. Dolan-Gavitt, R. Karri // 2022 IEEE Symposium on Security and Privacy (SP). – San Francisco, USA: IEEE, 2022. – P. 754–768.
  • 3. The «Code» of Ethics: A Holistic Audit of AI Code Generators / W. Ma, Y. Song, M. Xue, S. Wen, Y. Xiang // IEEE Transactions on Dependable and Secure Computing – 2024. – Vol. 21, No. 5. – P. 4997–5013.
  • 4. Yoo S.H. Security Analysis of Automated Code Generation: Structural Vulnerabilities in AI-Generated Code / S.H. Yoo, H.J. Kim // Technical Journal. – 2025. – Vol. 19, No. 4. – P. 560–574.
  • 5. Букина С.Г. Набор данных для выявления искусственно сгенерированного исходного кода / С.Г. Букина, С.С. Харченко // Доклады ТУСУР. – 2025. – Т. 28, № 2. – С. 106–110.
  • 6. Набор данных APPS на платформе Hugging Face [Электронный ресурс]. – URL: https://huggingface.co/datasets/codeparrot/apps (дата обращения: 03.08.2025).
  • 7. Idialu O.J. Whodunit: Classifying Code as Human Authored or GPT-4 Generated – A case study on CodeChef problems / O.J. Idialu, N.S. Mathews, R. Maipradit, J.M. Atlee // Proceedings of the 21st International Conference on Mining Software Repositories. – Lisbon, Portugal: ACM, 2024. – P. 394–406.
  • 8. Li K. Discriminating Human-authored from ChatGPT-Generated Code Via Discernable Feature Analysis / K. Li, S. Hong, C. Fu, Y. Zhang, M. Liu // IEEE 34th International Symposium on Software Reliability Engineering Workshops. – Florence, Italy: IEEE, 2023. – P. 120–127.
  • 9. Hoq M. Detecting ChatGPT-Generated Code Submissions in a CS1 Course Using Machine Learning Models / M. Hoq, Y. Shi, J. Leinonen, D. Babalola // Proceedings of the 55th ACM Technical Symposium on Computer Science Education. – New York, United States: ACM, 2024. – P. 526–532.
  • 10. Bukhari S.A. Issues in Detection of AI-Generated Source Code: Master's thesis. – University of Calgary, Calgary, Canada, 2024. – 102 p.
  • 11. Sjoerd S. The Detection of AI Generated Coding Content: Information and Computing Science: Master's thesis. – Utrecht University, Utrecht, Netherlands, 2024. – 75 p.
  • 12. Li J. Dynamic analysis of generated code for security vetting / J. Li, X. Wang, Y. Lin // Proceedings of the 2023 IEEE Symposium on Security and Privacy (S&P). – San Francisco, USA: IEEE, 2023. – P. 1234–1249.
  • 13. An Empirical Study on Automatically Detecting AI-Generated Source Code: How Far Are We? / H. Suh, M. Tafreshipour, J. Li, A. Bhattiprolu, I. Ahmed // The 47th IEEE/ACM International Conference on Software Engineering (ICSE 2025). – Ottawa, ON, Canada: ACM, 2025. – P. 859–871.
  • 14. Gurioli A. Is This You, LLM? Recognizing AI-written Programs with Multilingual Code Stylometry / A. Gurioli, M. Gabbrielli, S. Zacchiroli // 2025 IEEE International Conference on Software Analysis, Evolution and Reengineering (SANER). – Montréal, Québec, Canada: IEEE, 2025. – P. 394–405.
  • 15. Demirok B. AIGCodeSet: A New Annotated Dataset for AI Generated Code Detection / B. Demirok, M. Kutlu // arXiv. – 2025. DOI: 10.48550/arXiv.2412.16594.
  • 16. Demirok B. MultiAIGCD: A Comprehensive dataset for AI Generated Code Detection Covering Multiple Languages, Models, Prompts, and Scenarios / B. Demirok, M. Kutlu, S. Mergen // arXiv. – 2025. DOI: 10.48550/arXiv.2507.21693.
Адрес редакции

  634050, г. Томск, пр. Ленина, 40, МК, каб. 310/2

  (3822) 701-582, внутр.: 1456

  journal@tusur.ru