21.09.2025.
Machine Learning for Software Engineering Research Group
machine-learning-for-software-engineering-rg-thumb-456x702-.png

About Us

We founded our research group in 2018, because we found the then-forming intersection of software technology and machine learning interesting. Our goal was to create an environment where we and the interested students can jointly research this area. Our main activity is the application of machine learning, and within that mainly deep learning, to the tasks of software development: teaching computers to understand, write, and fix program code. Source codes to a certain extent and in their properties are similar to natural languages, thus the methods used in the machine processing of natural languages, such as large language models, can be applied to them.

Research Interests

Program code transformations 
Code idiomatization 
Idiomatizing Python programs. The above Python program counts the positive values with a traditional loop, the improved version uses a more idiomatic approach with a list comprehension. The two-component method created by us solves the task of idiomatization with architectures based on deep learning.

Related publications:
☞ Idiomatizing Python source code using different recurrent architectures
☞ Localizing and idiomatizing nonidiomatic Python code with deep learning 

Automatic fixing of program bugs

Related publications:
☞ Fine-tuning CodeLlama to fix bugs

Neural decompilation
Multi-component decompilation model. A sequence-to-sequence model receives the textual input (left side), then transforms it word by word to the expected output format (in the middle). The architecture can improve the quality of the returned text with the help of an attention mechanism, and with the help of the copying mechanism it is able to transfer word sequences from the input to the output.

Related publications:
☞ Single-pass end-to-end neural decompilation using copying mechanism 

Requirements analysis 

Research Methodology

  • Recurrent neural networks
  • Transformers
  • Large language models
  • Copying mechanism

Research Staff 

  • Balázs Pintér (research group leader, MTMT)
  • Tibor Gregorics, associate professor
  • Balázs Szalontai PhD student
  • Gergő Szalay PhD student
  • Silva Matti PhD student
  • 15-20 MSc and BSc students

Key Publications

  • G. Szalay, M. B. Poór, B. Pintér, T. Gregorics (2024): Single-pass end-to-end neural decompilation using copying mechanism, Neural Computing and Applications [DOI]
  • B. Szalontai, A. Vadász, T. Márton, B. Pintér, T. Gregorics (2024): Fine-tuning CodeLlama to fix bugsProceedings of International Conference on Recent Innovations in Computing [DOI]
  • B. Szalontai, T. Márton, Á. Kukucska, B. Pintér, T. Gregorics (2024): Idiomatizing Python source code using different recurrent architectures, Intelligent Systems and Applications [DOI]
  • B. Szalontai, Á. Kukucska, A. Vadász, B. Pintér, T. Gregorics (2023): Localizing and idiomatizing nonidiomatic Python code with deep learning, Intelligent Computing [DOI]
  • B. Mucsányi, B. Gyarmathy, Á. Czapp, B. Pintér (2022): Flexible example-based program synthesis on tree-structured function compositions, SN Computer Science [DOI]

Contact

Pintér Balázs – pinter@inf.elte.hu