2 research outputs found

    Π˜Π΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΡ Π°Π²Ρ‚ΠΎΡ€Π° исходного ΠΊΠΎΠ΄Π° ΠΌΠ΅Ρ‚ΠΎΠ΄Π°ΠΌΠΈ машинного обучСния

    Get PDF
    Π‘Ρ‚Π°Ρ‚ΡŒΡ посвящСна Π°Π½Π°Π»ΠΈΠ·Ρƒ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ опрСдСлСния Π°Π²Ρ‚ΠΎΡ€Π° исходного ΠΊΠΎΠ΄Π°, которая прСдставляСт интСрСс для исслСдоватСлСй Π² области ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ бСзопасности, ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π½ΠΎΠΉ криминалистики, ΠΎΡ†Π΅Π½ΠΊΠΈ качСства ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ процСсса, Π·Π°Ρ‰ΠΈΡ‚Ρ‹ ΠΈΠ½Ρ‚Π΅Π»Π»Π΅ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠΉ собствСнности. ΠŸΡ€Π΅Π΄ΡΡ‚Π°Π²Π»Π΅Π½ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½Ρ‹ΠΉ Π°Π½Π°Π»ΠΈΠ· соврСмСнных Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΉ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹. ΠŸΡ€Π΅Π΄Π»Π°Π³Π°ΡŽΡ‚ΡΡ Π΄Π²Π΅ Π½ΠΎΠ²Ρ‹Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΈΠΊΠΈ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ Π½Π° основС Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠ² машинного обучСния: ΠΌΠ°ΡˆΠΈΠ½Ρ‹ ΠΎΠΏΠΎΡ€Π½Ρ‹Ρ… Π²Π΅ΠΊΡ‚ΠΎΡ€ΠΎΠ², Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Π° быстрой коррСляции ΠΈ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΈΠ²Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠ·Π½Π°ΠΊΠΎΠ²; Π³ΠΈΠ±Ρ€ΠΈΠ΄Π½ΠΎΠΉ свСрточно-Ρ€Π΅ΠΊΡƒΡ€Ρ€Π΅Π½Ρ‚Π½ΠΎΠΉ Π½Π΅ΠΉΡ€ΠΎΠ½Π½ΠΎΠΉ сСти. ЭкспСримСнты ΠΏΡ€ΠΎΠ²ΠΎΠ΄ΠΈΠ»ΠΈΡΡŒ Π½Π° Π±Π°Π·Π΅ исходных ΠΊΠΎΠ΄ΠΎΠ², написанных Π½Π° Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ популярных языках программирования. Π’ ΡΠΊΡΠΏΠ΅Ρ€ΠΈΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½ΡƒΡŽ Π±Π°Π·Ρƒ вошли экзСмпляры исходных ΠΊΠΎΠ΄ΠΎΠ², написанных Π½Π° Java, C++, Python, PHP, JavaScript, C, C# ΠΈ Ruby. Π”Π°Π½Π½Ρ‹Π΅ Π±Ρ‹Π»ΠΈ ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Ρ‹ с Π²Π΅Π±-сСрвиса для хостинга IT-ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ² Github. ΠžΠ±Ρ‰Π΅Π΅ количСство исходных ΠΊΠΎΠ΄ΠΎΠ² ΠΏΡ€Π΅Π²Ρ‹ΡˆΠ°Π΅Ρ‚ 150 тысяч ΠΎΠ±Ρ€Π°Π·Ρ†ΠΎΠ², срСдняя Π΄Π»ΠΈΠ½Π° ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΈΠ· ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… составляСт 850 символов. Π Π°Π·ΠΌΠ΅Ρ€ корпуса β€” 542 Π°Π²Ρ‚ΠΎΡ€Π°. Π‘ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ пСрСкрСстной ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ ΠΏΠΎ 10 Π±Π»ΠΎΠΊΠ°ΠΌ ΠΎΡ†Π΅Π½Π΅Π½Π° Ρ‚ΠΎΡ‡Π½ΠΎΡΡ‚ΡŒ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Π½Ρ‹Ρ… ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΈΠΊ для Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΎΠ³ΠΎ количСства Π°Π²Ρ‚ΠΎΡ€ΠΎΠ². Для Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ популярного языка программирования Java ΠΏΡ€ΠΎΠ²Π΅Π΄Π΅Π½ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ ряд экспСримСнтов с количСством Π°Π²Ρ‚ΠΎΡ€ΠΎΠ² ΠΎΡ‚ 2 Π΄ΠΎ 50 ΠΈ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Ρ‹ Π³Ρ€Π°Ρ„ΠΈΠΊΠΈ зависимости точности ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ ΠΎΡ‚ Ρ€Π°Π·ΠΌΠ΅Ρ€Π° корпуса. Анализ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠ² ΠΏΠΎΠΊΠ°Π·Π°Π», Ρ‡Ρ‚ΠΎ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΈΠΊΠ° Π½Π° основС Π³ΠΈΠ±Ρ€ΠΈΠ΄Π½ΠΎΠΉ Π½Π΅ΠΉΡ€ΠΎΠ½Π½ΠΎΠΉ сСти способна Π΄ΠΎΡΡ‚ΠΈΠ³Π°Ρ‚ΡŒ точности 97%, Ρ‡Ρ‚ΠΎ являСтся Π½Π°ΠΈΠ»ΡƒΡ‡ΡˆΠΈΠΌ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠΌ Π½Π° сСгодняшний дСнь. ΠœΠ΅Ρ‚ΠΎΠ΄ΠΈΠΊΠ° Π½Π° основС ΠΌΠ°ΡˆΠΈΠ½Ρ‹ ΠΎΠΏΠΎΡ€Π½Ρ‹Ρ… Π²Π΅ΠΊΡ‚ΠΎΡ€ΠΎΠ² ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΠ»Π° Π΄ΠΎΠ±ΠΈΡ‚ΡŒΡΡ точности 96%. Гибридная нСйронная ΡΠ΅Ρ‚ΡŒ оказалась Ρ‚ΠΎΡ‡Π½Π΅Π΅ ΠΌΠ°ΡˆΠΈΠ½Ρ‹ ΠΎΠΏΠΎΡ€Π½Ρ‹Ρ… Π²Π΅ΠΊΡ‚ΠΎΡ€ΠΎΠ² Π² срСднСм Π½Π° 5%

    Π˜Π΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΡ Π°Π²Ρ‚ΠΎΡ€Π° исходного ΠΊΠΎΠ΄Π° ΠΌΠ΅Ρ‚ΠΎΠ΄Π°ΠΌΠΈ машинного обучСния

    Get PDF
    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%.Π‘Ρ‚Π°Ρ‚ΡŒΡ посвящСна Π°Π½Π°Π»ΠΈΠ·Ρƒ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ опрСдСлСния Π°Π²Ρ‚ΠΎΡ€Π° исходного ΠΊΠΎΠ΄Π°, которая прСдставляСт интСрСс для исслСдоватСлСй Π² области ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ бСзопасности, ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π½ΠΎΠΉ криминалистики, ΠΎΡ†Π΅Π½ΠΊΠΈ качСства ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ процСсса, Π·Π°Ρ‰ΠΈΡ‚Ρ‹ ΠΈΠ½Ρ‚Π΅Π»Π»Π΅ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠΉ собствСнности. ΠŸΡ€Π΅Π΄ΡΡ‚Π°Π²Π»Π΅Π½ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½Ρ‹ΠΉ Π°Π½Π°Π»ΠΈΠ· соврСмСнных Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΉ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹. ΠŸΡ€Π΅Π΄Π»Π°Π³Π°ΡŽΡ‚ΡΡ Π΄Π²Π΅ Π½ΠΎΠ²Ρ‹Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΈΠΊΠΈ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ Π½Π° основС Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠ² машинного обучСния: ΠΌΠ°ΡˆΠΈΠ½Ρ‹ ΠΎΠΏΠΎΡ€Π½Ρ‹Ρ… Π²Π΅ΠΊΡ‚ΠΎΡ€ΠΎΠ², Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Π° быстрой коррСляции ΠΈ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΈΠ²Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠ·Π½Π°ΠΊΠΎΠ²; Π³ΠΈΠ±Ρ€ΠΈΠ΄Π½ΠΎΠΉ свСрточно-Ρ€Π΅ΠΊΡƒΡ€Ρ€Π΅Π½Ρ‚Π½ΠΎΠΉ Π½Π΅ΠΉΡ€ΠΎΠ½Π½ΠΎΠΉ сСти. ЭкспСримСнты ΠΏΡ€ΠΎΠ²ΠΎΠ΄ΠΈΠ»ΠΈΡΡŒ Π½Π° Π±Π°Π·Π΅ исходных ΠΊΠΎΠ΄ΠΎΠ², написанных Π½Π° Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ популярных языках программирования. Π’ ΡΠΊΡΠΏΠ΅Ρ€ΠΈΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½ΡƒΡŽ Π±Π°Π·Ρƒ вошли экзСмпляры исходных ΠΊΠΎΠ΄ΠΎΠ², написанных Π½Π° Java, C++, Python, PHP, JavaScript, C, C# ΠΈ Ruby. Π”Π°Π½Π½Ρ‹Π΅ Π±Ρ‹Π»ΠΈ ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Ρ‹ с Π²Π΅Π±-сСрвиса для хостинга IT-ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ² Github. ΠžΠ±Ρ‰Π΅Π΅ количСство исходных ΠΊΠΎΠ΄ΠΎΠ² ΠΏΡ€Π΅Π²Ρ‹ΡˆΠ°Π΅Ρ‚ 150 тысяч ΠΎΠ±Ρ€Π°Π·Ρ†ΠΎΠ², срСдняя Π΄Π»ΠΈΠ½Π° ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΈΠ· ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… составляСт 850 символов. Π Π°Π·ΠΌΠ΅Ρ€ корпуса β€” 542 Π°Π²Ρ‚ΠΎΡ€Π°. Π‘ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ пСрСкрСстной ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ ΠΏΠΎ 10 Π±Π»ΠΎΠΊΠ°ΠΌ ΠΎΡ†Π΅Π½Π΅Π½Π° Ρ‚ΠΎΡ‡Π½ΠΎΡΡ‚ΡŒ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Π½Ρ‹Ρ… ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΈΠΊ для Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΎΠ³ΠΎ количСства Π°Π²Ρ‚ΠΎΡ€ΠΎΠ². Для Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ популярного языка программирования Java ΠΏΡ€ΠΎΠ²Π΅Π΄Π΅Π½ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ ряд экспСримСнтов с количСством Π°Π²Ρ‚ΠΎΡ€ΠΎΠ² ΠΎΡ‚ 2 Π΄ΠΎ 50 ΠΈ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Ρ‹ Π³Ρ€Π°Ρ„ΠΈΠΊΠΈ зависимости точности ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ ΠΎΡ‚ Ρ€Π°Π·ΠΌΠ΅Ρ€Π° корпуса. Анализ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠ² ΠΏΠΎΠΊΠ°Π·Π°Π», Ρ‡Ρ‚ΠΎ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΈΠΊΠ° Π½Π° основС Π³ΠΈΠ±Ρ€ΠΈΠ΄Π½ΠΎΠΉ Π½Π΅ΠΉΡ€ΠΎΠ½Π½ΠΎΠΉ сСти способна Π΄ΠΎΡΡ‚ΠΈΠ³Π°Ρ‚ΡŒ точности 97%, Ρ‡Ρ‚ΠΎ являСтся Π½Π°ΠΈΠ»ΡƒΡ‡ΡˆΠΈΠΌ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠΌ Π½Π° сСгодняшний дСнь. ΠœΠ΅Ρ‚ΠΎΠ΄ΠΈΠΊΠ° Π½Π° основС ΠΌΠ°ΡˆΠΈΠ½Ρ‹ ΠΎΠΏΠΎΡ€Π½Ρ‹Ρ… Π²Π΅ΠΊΡ‚ΠΎΡ€ΠΎΠ² ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΠ»Π° Π΄ΠΎΠ±ΠΈΡ‚ΡŒΡΡ точности 96%. Гибридная нСйронная ΡΠ΅Ρ‚ΡŒ оказалась Ρ‚ΠΎΡ‡Π½Π΅Π΅ ΠΌΠ°ΡˆΠΈΠ½Ρ‹ ΠΎΠΏΠΎΡ€Π½Ρ‹Ρ… Π²Π΅ΠΊΡ‚ΠΎΡ€ΠΎΠ² Π² срСднСм Π½Π° 5%
    corecore