Параметрична оптимізація формування масиву вхідних даних на основі символьних крос-зв’язків
DOI:
https://doi.org/10.34121/1028-9763-2026-3-72-81Ключові слова:
атрибуція авторства, програмний код, рефакторинг коду, масив вхідних даних, символьні крос-зв’язки, межа інформативної достатності, програмування мікросервісів, параметрична оптимізація, моніторинг та аналіз даних, машинне навчання, розробка web-додатків на java, генеративні моделі, вебпрограмування, серверне програмуванняАнотація
Розглянуто задачу параметричної оптимізації формування масиву вхідних даних (МВД) для атрибуції авторства програмних кодів, зокрема розрізнення кодів, написаних людиною та згенерованих великими мовними моделями. Розвинуто тип мовнонезалежних ознак — символьні крос-зв’язки між словами, що формуються як упорядковані пари суфіксів і префіксів слів у вікні. Завдяки врахуванню всіх пар слів, а не лише сусідніх, ознаки нечутливі до локальних переставлень фрагментів коду. Якість класифікації оцінюється на рівні вікон і на рівні авторів за мажоритарним голосуванням із використанням турніру 39 архітектур моделей машинного навчання. Проведено повнофакторний обчислювальний експеримент зі 168 дослідів для 12 авторів (10 людей і дві генеративні моделі) у чотирьох мовах програмування. Досліджено вплив розміру вікна, межі інформативної достатності, режиму фільтрації та рангу крос-зв’язків на частку правильно класифікованих об’єктів і розмір словника ознак. Установлено, що крос-зв’язки забезпечують приріст у 37 % конфігурацій, найбільший внесок (до +7,56 %) спостерігається для вікна 2000 символів — точки максимального внеску додаткових ознак, але не максимальної абсолютної якості. Парето-оптимальною є конфігурація з вікном 500 символів, межею три та усередненим режимом фільтрації, що досягає 99,37 %, коли розмір словника лише 310 ознак; режим максимуму підвищує якість ціною зростання словника майже у 20 разів. Визначено межі застосовності методу й умови, за яких крос-зв’язки знижують частку правильно класифікованих об’єктів, зокрема внаслідок ефекту стелі. Табл.: 5. Іл.: 4. Бібліогр.: 9 назв.
Посилання
1. Голуб М.С. Формування масиву чисельних ознак для класифікації україномовних текстів в інформаційній технології інтелектуального моніторингу: дис. канд. техн. наук: 05.13.06. Черкаси: ЧДТУ, 2018. 157 с.
2. Caliskan-Islam A., Harang R., Liu A. et al. De-anonymizing programmers via code stylometry. Proceedings of the 24th USENIX Security Symposium. Washington, 2015. P. 255–270.
3. Abuhamad M., AbuHmed T., Mohaisen A., Nyang D. Large-scale and language-oblivious code authorship identification. Proc. of the 2018 ACM SIGSAC. Conference on Computer and Communications Security. Toronto, 2018. P. 101–114.
4. Li Z., Chen G.Q., Chen C. et al. Towards robustness of deep program processing models — detection, estimation and enhancement (RoPGen). Proc. of the 44th International Conference on Software Engineering (ICSE). Pittsburgh, 2022. P. 1097–1108.
5. Pan W.H., Chok M.J., Wong J.L.S. et al. Assessing AI detectors in identifying AI-generated code. Proc. of the 46th International Conference on Software Engineering: Software Engineering in Society (ICSESEET). Lisbon, 2024. P. 1–12.
6. Nguyen P.T., Di Rocco J., Di Ruscio D. et al. GPTSniffer: A CodeBERT-based classifier to detect source code written by ChatGPT. Journal of Systems and Software. 2024. Vol. 214. P. 112059.
7. Oedingen M., Engelhardt R.C., Denz R. et al. ChatGPT code detection: Techniques for uncovering the source of code. AI. 2024. Vol. 5, N 3. P. 1066–1094.
8. Ивахненко А.Г. Индуктивный метод самоорганизации моделей сложных систем. Киев: Наукова думка, 1981. 296 с.
9. Голуб С.В., Немов Р.Г. Формування масиву чисельних ознак для класифікації авторства програмних кодів із використанням символьних крос-зв’язків між словами. Математичні машини і системи. 2026. № 2. С. 70–78. DOI: https://doi.org/10.34121/1028-9763-2026-2-70-78.
Опубліковано
Номер
Розділ
Ліцензія

Ця робота ліцензується відповідно до ліцензії Creative Commons Attribution 4.0 International License.
