Yazılım güvenliğinde derin öğrenme tabanlı kaynak kod analizi ve yorum önerimi
Deep learning based source code analysis and review recommendations in software security
- Tez No: 827286
- Danışmanlar: PROF. DR. KEMAL ÖZKAN
- Tez Türü: Doktora
- Konular: Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve Kontrol, Computer Engineering and Computer Science and Control
- Anahtar Kelimeler: Belirtilmemiş.
- Yıl: 2023
- Dil: Türkçe
- Üniversite: Eskişehir Osmangazi Üniversitesi
- Enstitü: Fen Bilimleri Enstitüsü
- Ana Bilim Dalı: Bilgisayar Mühendisliği Ana Bilim Dalı
- Bilim Dalı: Bilgisayar Yazılımı Bilim Dalı
- Sayfa Sayısı: 108
Özet
Modern kod incelemesi, güvenliği sağladığı, hataları erken tespit ettiği ve kod kalitesini iyileştirdiği için yazılım geliştirme süreçlerinde kritik bir adımdır. Ancak, manuel incelemeler zaman alıcı ve güvenilmez olabilmektedir. Otomatik kod incelemesi bu sorunları çözebilir. Kod inceleme yorumlarını önermek için önerilmiş derin öğrenme yöntemleri olsa da, bunların eğitilmesi ve çalıştırılması maliyetlidir. Bunun yerine, otomatik kod incelemesi için bilgi erişim tabanlı yöntemler verimlilik, etkililik ve esneklik açısından umut verici sonuçlar sergilemektedir. Ana hedef, otomatik kod incelemede en iyi sonuçları veren vektöre dönüştürme yöntemi ile benzerlik yönteminin optimal kombinasyonunu belirlemek ve böylece bilgi erişim tabanlı yöntemlerin performansını ölçmektir. Ayrıca ön işlemlerin modellerin başarısı üzerindeki etkisini incelemek de hedefler arasında bulunmaktadır. Önceki araştırmalardan (TF-IDF ve Bag-of-Words) farklı olan birden fazla vektörleştirme yöntemi (Word2Vec, Doc2Vec ve Transformer) ve benzerlik yöntemi (Kosinüs, Öklid ve Manhattan) kaynak kod metinleri arasındaki anlamsal benzerlikleri belirlemek için çalışmaya dahil edilmiştir. BLUE, METEOR ve ROUGE-L gibi standart metrikleri kullanarak bu yöntemlerin performansı değerlendirilmiş ve modellerin çalışma süreleri de sonuçlara dahil edilmiştir. Elde edilen sonuçlara göre Transformer modeli tüm standart metriklerde ve benzerlik ölçümlerinde son çalışmalara göre daha iyi performans göstermektedir. Ayrıca tam eşleşme sağlamada \%19,1'lik ve benzer öneriler sağlamada \%6,2'lik bir iyileşme görülmektedir. Elde edilen bulgular, transformer modelinin, insanlar tarafından yazılanlara çok benzeyen kod inceleme yorumları önermek için oldukça etkili ve verimli bir yaklaşım olduğunu, otomatik kod inceleme sistemleri geliştirmek için değerli bilgiler sağladığını göstermektedir.
Özet (Çeviri)
Modern code review is a critical step in software development as it ensures security, detects errors early and improves code quality. However, manual reviews can be time-consuming and unreliable. Automatic code review can fix these issues. While deep learning-based technics are proposed for recommending code review comments, they are costly to train and run. Instead, information retrieval-based methods for automated code review show promising results in efficiency, effectiveness, and flexibility. The main objective is to determine the optimal combination of the vector conversion and similarity methods that gives the best results in automatic code review, thus measuring the performance of information retrieval-based methods. It is also among the objectives to examine the effect of preprocessing on the success of the models. Different from previous studies (TF-IDF and Bag-of-Words), multiple vectorization methods (Word2Vec, Doc2Vec, and Transformer) and similarity methods (Cosine, Euclidean, and Manhattan) were included in the study to determine semantic similarities between source codes. The performance of these methods was evaluated using standard metrics such as BLUE, METEOR, and ROUGE-L, and the running times of the models were also included in the results. According to the results, the Transformer model performs better in all standard metrics and similarity measurements than in recent studies. In addition, there is an improvement of 19.1\% in providing an exact match and an improvement of 6.2\% in providing similar recommendations. The findings show that the transformer model is highly effective and efficient in suggesting code review comments similar to those written by humans, providing valuable information for developing automated code review systems.
Benzer Tezler
- A social navigation approach for mobile assistant robots
Asistan mobil robotlar için sosyal bir navigasyon yaklaşımı
HASAN KIVRAK
Doktora
İngilizce
2021
Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve Kontrolİstanbul Teknik ÜniversitesiBilgisayar Mühendisliği Ana Bilim Dalı
DOÇ. DR. HATİCE KÖSE
- Android cihazlarda makine öğrenmesi algoritmaları kullanılarak kötücül yazılım tespiti
Malware detection using machine learning algorithms on android devices
DURMUŞ ÖZKAN ŞAHİN
Doktora
Türkçe
2022
Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve KontrolOndokuz Mayıs ÜniversitesiHesaplamalı Bilimler Ana Bilim Dalı
PROF. DR. ERDAL KILIÇ
- Secure and coordinated beamforming in 5G and beyond systems using deep neural networks
5G ve ötesi sistemlerde derin sinir ağları kullanarak güvenli ve koordineli hüzmeleme
UTKU ÖZMAT
Doktora
İngilizce
2024
Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve Kontrolİstanbul Teknik ÜniversitesiBilişim Uygulamaları Ana Bilim Dalı
DR. ÖĞR. ÜYESİ MEHMET AKİF YAZICI
DR. ÖĞR. ÜYESİ MEHMET FATİH DEMİRKOL
- DERİN ÖĞRENME YÖNTEMLERİ KULLANILARAK WEB UYGULAMA GÜVENLİĞİ SAĞLANMASI
ENSURING WEB APPLICATION SECURITY USING DEEP LEARNING METHODS
MEHMET SEVRİ
Doktora
Türkçe
2022
Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve KontrolGazi ÜniversitesiBilişim Sistemleri Ana Bilim Dalı
DOÇ. DR. HACER KARACAN
- Yazılım tabanlı araçsal ağlara yönelik gerçekleştirilen DDoS saldırılarının derin öğrenme tabanlı gerçek zamanlı tespiti
Deep learning based real-time detection of DDoS attacks on software-defined based vehicular networks
ONUR POLAT
Doktora
Türkçe
2023
Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve KontrolGazi ÜniversitesiBilgisayar Mühendisliği Ana Bilim Dalı
DOÇ. DR. HÜSEYİN POLAT