Naive Bayes Sınıflandırması- Machine Learning

Kaan Uğurluoğlu
3 min readMay 2, 2021

--

Naive Bayes , sınıflandırma işlemlerinde kullanılan olasılık esaslı bir makine öğrenme modelidir.

Naive Bayes sınıflandırıcısı, sınıflandırma görevi için kullanılanılır ve olasılık hesaplanılarak gerçekleştirilir. Sınıflandırıcının noktası, Bayes teoremine dayanır.

Bayes teoremini kullanarak, B oluşumu göz önüne alındığında, A olma olasılığını bulabiliriz. Burada B, kanıt ve A ise hipotezdir.

Formülü inceleyecek olursak;

P ( A | B ) = B olayına bağlı olarak A olayının gerçekleşme olasılığı
P ( A ) = A olayının gerçekleşme olasılığı
P ( B | A ) = A olayına bağlı olarak B olayının gerçekleşme olasılığı
P ( B ) = B olayının gerçekleşme olasılığı

Naive Bayes Sınıflandırıcısının Avantajları

  • Her özellik birbirinden bağımsız kabul edildiği için logistic regresyon gibi modellerden daha iyi performans gösterebilir.
  • Az veriyle iyi işler başarabilir.
  • Sürekli ve kesikli veriler ile kullanılabilir.
  • Yüksek boyutlu verilerde iyi çalışabilir.

Naive Bayes Sınıflandırıcısının Dezavantajları

  • Özellikler birbirinden bağımsız varsayılarak işlem yapıldığı için değişkenler arası ilişkiler modellenemez.
  • Sıfır olasılık problemi ile karşı karşıya kalabilirsiniz. Sıfır olasılık istediğimiz örneğin veri setinde hiç bulunmaması durumudur.Yani herhangi bir işleme alındığında sonucu sıfır yapacaktır. Bunun için en basit yöntem tüm verilere minimum değer ekleyerek (genellikle 1) bu olasılık ortadan kaldırılabilir. Bu duruma Laplace kullanılarak tahminleme de denmektedir.

Şimdi de Naive Bayes algoritmasını Python’da yazılmış örnek bir kodda gösterelim.

Kütüphaneleri ve veri setimizi tanıttık. Bağımsız değişken olarak sadece yaş ve tahmini maaşı kullanacağız.

Veri setinde 400 kayıt var bunun 300’ünü eğitim, 100’ünü test için ayıralım.

Bağımsız değişkenlerden yaş ile tahmini gelir aynı birimde olmadığı için feature scaling uygulayacağız.

Ayırdığımız test setimizi (X_test) kullanarak oluşturduğumuz model ile tahmin yapalım ve elde ettiğimiz set (y_pred) ile hedef değişken (y_test) test setimizi karşılaştıralım.

Şimdi test setini grafiğe dökelim.

10 tane hatalı sınıflandırma yapmış demiştik. Sayalım: Yeşil bölgede 3 tane kırmızı, kırmızı bölgede 7 tane yeşil var.

Bu yazıda Naive Bayes algoritmasının nasıl çalıştığını inceledik. Sonraki yazılarda görüşmek üzere…

--

--

No responses yet