Сбор и анализ датасета для задачи автоматической генерации сообщений коммитов
https://doi.org/10.32362/2500-316X-2025-13-2-7-17
EDN: OQUHWL
Аннотация
Цели. Для управления процессом разработки современного программного обеспечения нередко применяются системы контроля версий, которые позволяют фиксировать изменения в программном коде и передавать контекст этих изменений при помощи сообщений коммитов. Релевантное и качественное описание внесенных изменений при помощи таких сообщений требует от разработчика высокой компетенции и времени, но современные методы машинного обучения позволяют решать эту задачу автоматически. Целью работы является статистический и сравнительный анализ собранной выборки данных с наборами изменений в программном коде и их описаниями на естественном языке.
Методы. В исследовании использован комплексный подход, включающий сбор данных с популярных репозиториев на GitHub, предварительную обработку и фильтрацию данных, а также статистический анализ и метод обработки естественного языка (векторизация текста). Для оценки семантической близости между первым предложением и полным текстом сообщений коммитов было использовано косинусное сходство.
Результаты. Проведено исследование структуры и качества сообщений коммитов, включающее сбор данных из репозиториев GitHub и их предварительную очистку. Осуществлена векторизация текста сообщений коммитов и оценка семантической близости между первыми предложениями и полными текстами сообщений с использованием косинусного сходства. Выполнен сравнительный анализ качества сообщений в собранном датасете и в нескольких аналогичных наборах данных с помощью классификации при помощи модели CodeBERT.
Выводы. Проведенный анализ выявил низкий уровень косинусного сходства между первыми предложениями и полными текстами сообщений коммитов (0.0969), что свидетельствует о слабой семантической связи между ними и опровергает гипотезу о том, что первые предложения выступают в качестве обобщения содержания сообщений. Процентная доля пустых сообщений в собранном наборе данных составила лишь 0.0007%, что существенно ниже ожидаемого значения и указывает на высокое качество собранных данных. Классификационный анализ показал, что доля сообщений, отнесенных к категории «плохих», в собранном датасете составляет 16.82%, что значительно ниже аналогичных показателей в других сопоставимых наборах данных, где этот процент варьируется от 34.75% до 54.26%. Данный факт подчеркивает высокое качество собранного набора данных и его адекватность для дальнейшего применения в системах автоматической генерации сообщений коммитов
Об авторах
И. А. КосьяненкоРоссия
Косьяненко Иван Александрович, аспирант, кафедра инструментального и прикладного программного обеспечения, Институт информационных технологий
119454, Москва, пр-т Вернадского, д. 78
Конфликт интересов:
Авторы заявляют об отсутствии конфликта интересов.
Р. Г. Болбаков
Россия
Болбаков Роман Геннадьевич, к.т.н., доцент, заведующий кафедрой инструментального и прикладного программного обеспечения, Институт информационных технологий
119454, Москва, пр-т Вернадского, д. 78
Scopus Author ID 57202836952
Конфликт интересов:
Авторы заявляют об отсутствии конфликта интересов.
Список литературы
1. Tian Y., Zhang Y., Stol K., Jiang L., Liu H. What makes a good commit message? Proceedings of the 44th International Conference on Software Engineering. 2022;44:2389–2401. https://doi.org/10.1145/3510003.3510205
2. Kosyanenko I.A., Bolbakov R.G. About automatic generation of commit messages in version control systems. International Journal of Open Information Technologies (INJOIT). 2022;10(4):55–60 (in Russ.).
3. Liu Z., Xia X., Hassan A., Lo D., Xing Z. Neural-machine-translation-based commit message generation: how far are we? In: Proceedings of the 33rd ACM/IEEE International Conference on Automated Software Engineering. 2018;33:373–384. https://doi.org/10.1145/3238147.3238190
4. Sun Z., Li L., Liu Y., Du X., Li L. On the importance of building high-quality training datasets for neural code search. In: Proceedings of the 44th International Conference on Software Engineering. 2022;44:1609–1620. https://doi.org/10.1145/3510003.3510160
5. Hawkins D.M. The problem of overfitting. J. Chem. Inf. Comput. Sci. 2004;44(1):1–12. https://doi.org/10.1021/ci0342472
6. Banko M., Brill E. Scaling to Very Very Large Corpora for Natural Language Disambiguation. In: Proceedings of the 39th Annual Meeting on Association for Computational Linguistics. 2001;26–33. https://doi.org/10.3115/1073012.1073017
7. Halevy A., Norvig P., Pereira F. The unreasonable effectiveness of data. IEEE Intell. Syst. 2009;24(2):8–12. https://doi.org/10.1109/MIS.2009.36
8. Tao W., Wang Y., Shi E., Du L., Han S., Zhang H., Zhang D., Zhang W. On the evaluation of commit message generation models: An experimental study. In: 2021 IEEE International Conference on Software Maintenance and Evolution (ICSME). IEEE. 2021;126–136. https://doi.org/10.48550/arXiv.2107.05373
9. Jiang S., McMillan C. Towards automatic generation of short summaries of commits. In: 2017 IEEE/ACM 25th International Conference on Program Comprehension (ICPC). IEEE. 2017;320–323. https://doi.org/10.48550/arXiv.1703.09603
10. Myagkova E.Yu. To the problem of “formal” and “inner” grammar. Vestnik Tverskogo gosudarstvennogo universiteta. Seriya: Filologiya = Herald of Tver State University. Series: Philology. 2012;24(4):96–102 (in Russ.).
11. Xu S., Yao Y., Xu F., Gu T., Tong H., Lu J. Commit message generation for source code changes. In: Proceedings of the TwentyEighth International Joint Conference on Artificial Intelligence (IJCAI-19). 2019;3975–3981. https://doi.org/10.24963/ijcai.2019/552
12. Liu Q., Liu Z., Zhi H., Fan H., Du B., Qian Y. Generating commit messages from diffs using pointer-generator network. In: 2019 IEEE/ACM 16th International Conference on Mining Software Repositories (MSR). IEEE. 2019;299–309. http://doi.org/10.1109/MSR.2019.00056
13. Loyola P., Marrese-Taylor E., Matsuo Y. A neural architecture for generating natural language descriptions from source code changes. In: Proceedings of the 55th Annual Meeting of the Association for Computational Linguistics. 2017;287–292. https://doi.org/10.18653/v1/P17-2045
14. Liu S., Gao C., Chen S., Yiu L., Liy Y. ATOM: Commit message generation based on abstract syntax tree and hybrid ranking. IEEE Trans. Software Eng. 2020;48(5):1800–1817. https://doi.org/10.48550/arXiv.1912.02972
15. Eliseeva A., Sokolov Y., Bogomolov E., Golubev Y., Dig D., Bryskin T. From Commit Message Generation to History-Aware Commit Message Completion. In: 2023 38th IEEE/ACM International Conference on Automated Software Engineering (ASE). IEEE. 2023;723–735. https://doi.org/10.48550/arXiv.2308.07655
16. Dey T., Mousavi S., Ponce E. Detecting and characterizing bots that commit code. In: Proceedings of the 17th international conference on mining software repositories. 2020;209–219. https://doi.org/10.1145/3379597.3387478
17. Kuchnik M., Smith V., Amvrosiadis G. Validating large language models with ReLM. Proceedings of Machine Learning and Systems. 2023;5:457–476. https://doi.org/10.48550/arXiv.2211.15458
18. Haque S., Zachary E. Semantic similarity metrics for evaluating source code summarization. In: Proceedings of the 30th IEEE/ACM International Conference on Program Comprehension. 2022;36–47. https://doi.org/10.1145/3524610.3527909
19. Rahutomo F., Kitasuka T., Aritsugi M. Semantic cosine similarity. In: The 7th International Student Conference on Advanced Science and Technology (ICAST). 2012;4(1):1–2.
20. Roshan R., Bhacho I.A., Zai S. Comparative Analysis of TF–IDF and Hashing Vectorizer for Fake News Detection in Sindhi: A Machine Learning and Deep Learning Approach. Eng. Proc. 2023;46(1):5. https://doi.org/10.3390/engproc2023046005
21. Aggarwal C.C., Yu P.S. Outlier Detection in High Dimensional Data. In: Proceedings of the 2001 ACM SIGMOD International Conference on Management of Data. 2001;30(2):37–46. http://dx.doi.org/10.1145/376284.375668
22. Feng Z., Guo D., Tang F., et al. CodeBERT: A pre-trained model for programming and natural languages. In: Findings of the Association for Computational Linguistics: EMNLP 2020. P. 1536–1547. Online. Association for Computational Linguistics. https://doi.org/10.18653/v1/2020.findings-emnlp.139
23. Qasim R., Bangyal W.H. A fine-tuned BERT-based transfer learning approach for text classification. J. Healthc. Eng. 2022;2022:3498123. https://doi.org/10.1155/2022/3498123
Дополнительные файлы
|
1. Распределение количества токенов в сообщениях коммитов | |
Тема | ||
Тип | Исследовательские инструменты | |
Посмотреть
(62KB)
|
Метаданные ▾ |
- Проведено исследование структуры и качества сообщений коммитов, включающее сбор данных из репозиториев GitHub и их предварительную очистку.
- Осуществлена векторизация текста сообщений коммитов и оценка семантической близости между первыми предложениями и полными текстами сообщений с использованием косинусного сходства.
- Выполнен сравнительный анализ качества сообщений в собранном датасете и в нескольких аналогичных наборах данных с помощью классификации при помощи модели CodeBERT
Рецензия
Для цитирования:
Косьяненко И.А., Болбаков Р.Г. Сбор и анализ датасета для задачи автоматической генерации сообщений коммитов. Russian Technological Journal. 2025;13(2):7-17. https://doi.org/10.32362/2500-316X-2025-13-2-7-17. EDN: OQUHWL
For citation:
Kosyanenko I.A., Bolbakov R.G. Dataset collection for automatic generation of commit messages. Russian Technological Journal. 2025;13(2):7-17. https://doi.org/10.32362/2500-316X-2025-13-2-7-17. EDN: OQUHWL