Репозитарій КНУ
Увійти(current)
  1. Головна
  2. Кваліфікаційні роботи | Qualifying works
  3. Дисертації | Dissertations
  4. Проєктування і застосування нейронних мереж для створення методів оцінювання якості та генерації повідомлень про внесені зміни в системах контролю версій

Проєктування і застосування нейронних мереж для створення методів оцінювання якості та генерації повідомлень про внесені зміни в системах контролю версій

Тип публікації :
Дисертація
Дата випуску :
9 липня 2026 р.
Автор(и) :
Семьонов, Богдан Олександрович
Науковий(і) керівник(и)/редактор(и) :
Погорілий, Сергій Дем'янович  
Кафедра комп'ютерної інженерії  
Мова основного тексту :
Ukrainian
eKNUTSHIR URL :
https://ir.library.knu.ua/handle/15071834/35760
Цитування :
[APA 7] Семьонов, Б. О. (2026). Проєктування і застосування нейронних мереж для створення методів оцінювання якості та генерації повідомлень про внесені зміни в системах контролю версій [Дис. доктора філософії, Київський національний університет імені Тараса Шевченка]. eKNUTSHIR. https://ir.library.knu.ua/handle/15071834/35760
[ДСТУ] Семьонов Б. О. Проєктування і застосування нейронних мереж для створення методів оцінювання якості та генерації повідомлень про внесені зміни в системах контролю версій : дис. … доктора філософії : 123 Комп’ютерна інженерія. Київ, 2026. 201 с. URL: https://ir.library.knu.ua/handle/15071834/35760
Семьонов Б.О. Проєктування і застосування нейронних мереж для створення методів оцінювання якості та генерації повідомлень про внесені зміни в системах контролю версій. – Кваліфікаційна наукова праця на правах рукопису.
Дисертація на здобуття наукового ступеня доктора філософії за спеціальністю 123 «Комп’ютерна інженерія». – Київський національний університет імені Тараса Шевченка, Київ, 2026.
Робота присвячена дослідженню проєктування і застосування нейронних мереж різної архітектури для створення методів оцінювання якості та автоматичної генерації повідомлень про внесені зміни (commit messages) в системах контролю версій.
Повідомлення про внесені зміни є невід’ємним елементом процесу супроводу програмного забезпечення, який становить від 60 % до 80 % загальних витрат протягом життєвого циклу програмного продукту. Якість повідомлень безпосередньо впливає на ефективність аналізу історії змін, локалізацію дефектів, рефакторинг та командну комунікацію. Водночас емпіричні дослідження свідчать, що значна частина повідомлень у реальних проєктах є надто короткими, шаблонними або семантично неінформативними, що обґрунтовує необхідність розроблення засобів автоматизованого аналізу та генерації таких повідомлень.
У роботі здійснено комплексний аналіз існуючих методів формування та оцінювання якості повідомлень про внесені зміни, що охоплює лексичний та текстовий аналіз, статистичні методи (n-грамний аналіз, TF-IDF, тематичне моделювання LDA), методи машинного навчання та обробки природної мови (SVM, Random Forest, LSTM, трансформери) та гібридні підходи. Проведено систематизацію методів автоматичної генерації повідомлень, включаючи евристичні та шаблонні методи, підходи на основі рекурентних нейронних мереж, трансформерні моделі з попереднім навчанням та методи із використанням структурної інформації абстрактних синтаксичних дерев.
Згідно зі сформованими метою та задачами роботи створено методи оцінки якості та автоматичної генерації повідомлень про внесені зміни у системах контролю версій на основі моделей нейронних мереж різної архітектури; досліджено ефективність застосування рекурентних та трансформерних моделей для задачі бінарної класифікації повідомлень; розроблено методи мовно-специфічного донавчання та семантичного збагачення ідентифікаторів вихідного коду для підвищення якості генерації повідомлень. Нижче наведені основні результати та наукова новизна.
В результаті аналізу впливу попередньо навчених моделей векторного представлення слів на якість бінарної класифікації повідомлень показано доцільність:
• застосування методу FastText для технічних текстів завдяки підтримці підслівних n-грам, що дозволяє формувати вектори для незнайомих слів – технічних абревіатур, назв бібліотек та нестандартних токенів, характерних для повідомлень про внесені зміни;
• використання трансферного навчання з попередньо навченими векторами, що суттєво підвищує якість класифікації: модель SO_vectors_200 (Word2Vec, навчена на технічних текстах Stack Overflow) досягла найвищого Accuracy = 0,861.
Розроблено метод оцінювання якості повідомлень про внесені зміни у системах контролю версій на основі рекурентних нейронних мереж. Побудовано серію із семи моделей-кандидатів зростаючої складності: від базової моделі з повнозв’язним шаром до двошарових двонаправлених рекурентних мереж (BiLSTM, BiGRU). Для всіх моделей використано уніфіковану архітектуру із фіксованою загальною кількістю нейронів рекурентних шарів, що забезпечує коректність порівняльного аналізу. Модель BiGRU з одним шаром досягла оптимального балансу між Accuracy (0,811) та F1-score (0,629).
Розроблено метод оцінювання якості повідомлень на основі трансформерних моделей із застосуванням методології трансферного навчання. Досліджено шістнадцять конфігурацій на базі чотирьох сімейств моделей – BERT, RoBERTa, DistilBERT та XLM-RoBERTa. Найвищу якість продемонструвала модель roberta_large_en (Accuracy = 0,876, F1-score = 0,719), яка перевершила найкращу RNN-модель на 1,5 відсоткових пункти за Accuracy та на 1,8 за F1-score.
Досліджено застосування трансформерних моделей типу кодувальник-декодувальник для автоматичної генерації повідомлень про внесені зміни. Обґрунтовано вибір та досліджено дев’ять моделей: T5, FLAN-T5, CodeT5, CodeT5+ та BART. Показано, що моделі, орієнтовані на вихідні тексти програм (CodeT5, CodeT5+), суттєво перевершують моделі загального призначення: середній BLEU для CodeT5+ становить 6,55 проти менше 1,0 для T5 та FLAN-T5.
Розроблено метод мовно-специфічного донавчання трансформерних моделей для систем контролю версій. Сформовано навчальні корпуси для шести мов програмування (C/C++, Ruby, Python, Java, JavaScript, PHP) загальним обсягом 271 504 навчальні пари. Метод передбачає незалежне донавчання моделі на корпусі кожної мови, що дозволяє моделі адаптуватися до синтаксичних та семантичних особливостей конкретної мови програмування.
Вперше запропоновано метод семантичного збагачення ідентифікаторів вихідного коду через автоматичне розкриття абревіатур для підвищення якості автоматичної генерації повідомлень про внесені зміни. Розроблено п’ятиетапний конвеєр збагачення, що включає вилучення ідентифікаторів через побудову абстрактного синтаксичного дерева, сегментацію за конвенціями іменування, генерацію кандидатів розкриття на основі словникового підходу та контекстної моделі CodeBERT, семантичне ранжування кандидатів та формування збагачених текстових представлень.
Виконано експериментальну перевірку ефективності застосування запропонованих методів. Підтверджено, що комбінація мовно-специфічного донавчання та семантичного збагачення забезпечує послідовне накопичення покращень: перехід від базової моделі T5 до донавченої CodeT5+ збільшує BLEU у 10,8 разу, а подальше застосування семантичного збагачення додає ще 35 % приросту. Найкращі результати продемонструвала модель codet5p-770m із мовно-специфічним донавчанням та семантичним збагаченням ідентифікаторів (BLEU = 11,15, ROUGE-1 = 44,62). Найвищі абсолютні результати після збагачення зафіксовано для JavaScript (BLEU = 16,47, BERTScore = 0,92), а найбільший відносний приріст – для Java (+51,5 % за BLEU) та C/C++ (+49,7 %).
Проведено порівняльний аналіз ефективності застосування технологій паралельних обчислень (GPGPU та TPU) для прискорення навчання нейронних класифікаторів. Встановлено, що GPU-акселерація (NVIDIA Tesla T4) забезпечує середнє прискорення у 45 разів порівняно з CPU та у 15 разів порівняно з TPU. Найвище прискорення GPU/CPU (56×) зафіксовано для моделі LSTM, що вказує на можливість впровадження запропонованих методів у системи загального призначення.
Ключові слова :
оцінка якості повідомлень про внесені зміни автоматична генерація повідомлень системи контролю версій рекурентна нейронна мережа трансформерна модель BERT RoBERTa CodeT5 CodeT5+ бінарна класифікація трансферне навчання мовно-специфічне донавчання семантичне збагачення ідентифікаторів розкриття абревіатур BLEU BERTScore. commit message quality assessment automatic message generation version control systems recurrent neural network transformer model BERT RoBERTa CodeT5 CodeT5+ binary classification transfer learning language-specific fine-tuning semantic enrichment of identifiers abbreviation expansion BLEU BERTScore
Галузі знань та спеціальності :
F7 Комп’ютерна інженерія
Файл(и) :
Вантажиться...
Ескіз
Завантажити
Формат :

Adobe PDF

Розмір :

5.05 MB

Контрольна сума :

(MD5):1d7e91ffecf561ab409202a4e10963a9

Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International
Якщо не вказано інше, ця робота розповсюджується на умовах ліцензії Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International
Контакти
  • ir.library@knu.ua
  • (044) 239-33-30
  • м. Київ, вул. Володимирська, 58, к. 42

Побудовано за допомогою Програмне забезпечення DSpace-CRIS - Розширення підтримується та оптимізується 4Наука

  • Доступність
  • Політика приватності
  • Угода користувача
  • Надіслати відгук