- Role
- Full Stack Engineer



Bu proje, ML.NET kütüphanesini kullanarak e-posta içeriklerini analiz eden ve spam/phishing risklerini saptayan bir web uygulamasıdır. Projenin temel amacı, kağıt üzerinde mükemmel duran ama gerçek hayatta karşılığı olmayan %100 doğruluk oranları yerine, gerçekçi ve akademik olarak doğrulanabilir sonuçlar sunmaktır.
Neden Bu Proje?
Spam filtreleme üzerine yapılan birçok demo projesi, çok kısıtlı ve "aşırı belirgin" veri setleri kullandığı için yanıltıcı şekilde %100 başarı gösterir. SecureMail AI, bu sorunu şu yöntemlerle çözer:
- Bağlam Analizi (Ambiguity Handling): İçinde "link", "banka" veya "hesap" geçen her mail spam değildir. Sistem, "Toplantı linki aşağıdadır" (Normal) ile "Hesabınız askıya alındı, bu linke tıklayın" (Spam) arasındaki farkı bağlamsal olarak ayırt eder.
- Dürüst Metrikler: Metrikler (Accuracy, Precision, Recall, F1) sadece eğitim görmemiş bir test veri seti üzerinden hesaplanır. Veri setindeki gürültü ve belirsiz örnekler sayesinde sonuçlar gerçek dünya verileri olan %85-%97 bandında seyreder.
- Şeffaf Değerlendirme: ML kütüphanelerinin otomatik raporlarına güvenmek yerine; TP, FP, TN, FN değerleri üzerinden manuel confusion matrix hesaplaması yapılır.
Teknik Detaylar
- Model: Naive Bayes & Support Vector Machine (SVM)
- Featurization: TF-IDF (Metin verilerini sayısal vektörlere dönüştürme)
- Framework: ASP.NET MVC & .NET 6.0/9.0
- Kütüphane: ML.NET (Microsoft.ML)
- Veri Seti: 500+ Örnek (Dengeli dağılım, Türkçe-İngilizce karışık)
Ön İşleme (Preprocessing)
- Türkçe karakter desteği (ç, ğ, ı, ö, ş, ü)
- Gereksiz karakter ve noktalama temizliği
- Stop-words (ve, veya, da, de vb.) filtresi
Nasıl Çalıştırılır?
- Projeyi klonlayın.
- NuGet paketlerinin (Microsoft.ML) yüklendiğinden emin olun.
- Projeyi Visual Studio veya dotnet run ile ayağa kaldırın.
- https://localhost:7110 üzerinden dashboard'a erişin.