Metin karşılaştırma algoritmalarıyla dosyalar arasındaki benzerlik oranını hesaplayan web tabanlı sistem.
Genel Bakış
Batunet Bilişim Hizmetleri bünyesinde, yazılım geliştirme stajı kapsamında geliştirilen web tabanlı bir intihal tespit sistemi. Sistem, birden fazla belge arasındaki metinsel benzerliği ölçer; her belge çifti için yüzdesel bir benzerlik oranı üretir ve örtüşen bölümleri görünür kılar.
İhtiyaç
Belge özgünlüğünün değerlendirilmesi, birebir kopyadan yeniden düzenlenmiş metne uzanan geniş bir yelpazeyi kapsar. Tek bir algoritmaya dayanan yaklaşımlar bu çeşitliliği yakalamakta yetersiz kalır. Hedef; farklı benzerlik türlerini tutarlı biçimde ölçen, sonuçlarını anlaşılır bir raporla sunan ve tarayıcı üzerinden erişilebilen bir sistemdi.
Çözüm
Sistem, birbirini tamamlayan dört aşamalı bir analiz hattı üzerine kurulmuştur:
- Normalleştirme — Metinler büyük-küçük harf, noktalama, boşluk ve Türkçe karakter farklılıklarından arındırılır; karşılaştırmanın biçimden değil içerikten etkilenmesi sağlanır.
- Parçalama — Belgeler kelime n-gram'larına ayrılır. Bu sayede yeri değiştirilmiş cümleler dahi eşleşen parçalar üzerinden tespit edilebilir.
- Çok yönlü benzerlik ölçümü — Ortak parçalar üzerinden Jaccard benzerliği ve kelime frekans vektörleri üzerinden kosinüs benzerliği birlikte hesaplanır; birebir kopya ile yeniden yapılandırılmış metin aynı analizde yakalanır.
- Raporlama — Her belge çifti için benzerlik oranı ve eşleşen bölümlerin vurgulandığı karşılaştırmalı görünüm sunulur.
Mimari ve Web'e Geçiş
Sistem ilk aşamada masaüstü bir Java uygulaması olarak geliştirilmiş, ardından JSP tabanlı bir arayüzle web platformuna taşınmıştır. İş mantığının sunum katmanından bağımsız sınıflarda konumlandırılması, bu geçişin analiz algoritmalarına müdahale edilmeden gerçekleştirilmesini mümkün kılmıştır. Dosya yükleme, sonuç tablosu ve karşılaştırma ekranı tamamen tarayıcı üzerinden kullanılabilir hâle getirilmiştir.
Kazanımlar
- Farklı benzerlik türlerini tek bir raporda birleştiren, açıklanabilir bir analiz yapısı kurulmuştur.
- Parçaların bir kez üretilip yeniden kullanılmasıyla, belge sayısı arttıkça karesel büyüyen karşılaştırma yükü verimli biçimde yönetilmiştir.
- Katmanlı mimari sayesinde sistem, yeni arayüzlere ve kullanım senaryolarına genişletilebilir bir temele kavuşmuştur.
- Proje, profesyonel bir yazılım ekibinin kod standartları ve devir teslim süreçleri içinde tamamlanmıştır.
Diğer projeler
Sardur Mühendislik
Kurumsal web sitesi, yönetim paneli ve müşteri portalı
Endüstriyel baca temizleme firması için üç bileşenli full-stack web uygulaması: herkese açık kurumsal site, admin yönetim paneli ve müşteri portalı.
Klinik Psikolog Web Sitesi
Kurumsal web sitesi, içerik yönetimi ve arama motoru görünürlüğü
Denizli'de hizmet veren bir klinik psikolog için hazır tema kullanılmadan sıfırdan tasarlanıp geliştirilen; güven veren, arama motorlarında görünür ve kolay yönetilen kurumsal web sitesi.