RUS  ENG
Full version
JOURNALS // Informatics and Automation // Archive

Tr. SPIIRAN, 2019 Issue 18, volume 3, Pages 742–766 (Mi trspy1062)

This article is cited in 5 papers

Artificial Intelligence, Knowledge and Data Engineering

Identification author of source code by machine learning methods

A. V. Kurtukova, A. S. Romanov

Tomsk State University of Control Systems and Radioelectronics (TUSUR)

Abstract: The paper is devoted to the analysis of the problem of determining the source code author, which is of interest to researchers in the field of information security, computer forensics, assessment of the quality of the educational process, protection of intellectual property.
The paper presents a detailed analysis of modern solutions to the problem. The authors suggest two new identification techniques based on machine learning algorithms: support vector machine, fast correlation filter and informative features; the technique based on hybrid convolutional recurrent neural network.
The experimental database includes samples of source codes written in Java, C ++, Python, PHP, JavaScript, C, C # and Ruby. The data was obtained using a web service for hosting IT-projects – Github. The total number of source codes exceeds 150 thousand samples. The average length of each of them is 850 characters. The case size is 542 authors.
The experiments were conducted with source codes written in the most popular programming languages. Accuracy of the developed techniques for different numbers of authors was assessed using 10-fold cross-validation. An additional series of experiments was conducted with the number of authors from 2 to 50 for the most popular Java programming language. The graphs of the relationship between identification accuracy and case size are plotted. The analysis of result showed that the method based on hybrid neural network gives 97% accuracy, and it’s at the present time the best-known result. The technique based on the support vector machine made it possible to achieve 96% accuracy. The difference between the results of the hybrid neural network and the support vector machine was approximately 5%.

Keywords: source code writer, deep learning, neural network, SVM, HNN.

UDC: 519.25: 004.8

Received: 23.02.2019

DOI: 10.15622/sp.2019.18.3.741-765



Bibliographic databases:


© Steklov Math. Inst. of RAS, 2024