27 Temmuz 2020 Pazartesi

Naive Bayes Classifier

Giriş
Naive Bayes Sınıflandırıcısı hakkında bulduğum okuması en kolay yazı burada.

Decision tree VS Naive Bayes classifier başlıklı soru da bilgilendirici sayılır.

Naive Bayes ve K-means Clustering ilişkilidir

Predictive Models 
Açıklaması şöyle. Naive Bayes Classifier "yes or no" cevabı değil de olasılık ihtimali döndürür.
Top 5 Predictive Models
1. Classification Model: It is the simplest of all predictive analytics models. It puts data in categories based on its historical data. Classification models are best to answer "yes or no" types of questions.

2. Clustering Model: This model groups data points into separate groups, based on similar behavior.

3. Forecast Model: One of the most widely used predictive analytics models. It deals with metric value prediction, and this model can be applied wherever historical numerical data is available.

4. Outliers Model: This model, as the name suggests, is oriented around exceptional data entries within a dataset. It can identify exceptional figures either by themselves or in concurrence with other numbers and categories.

5. Time Series Model: This predictive model consists of a series of data points captured, using time as the input limit. It uses the data from previous years to develop a numerical metric and predicts the next three to six weeks of data using that metric.

1. Classification Nedir?

Bir olaya etiket vererek hangi kategoriye ait olduğunun belirlenmesidir yani tasnif işlemidir. Regression ile elimizdeki veriye bakarak, yeni bir değer tahmini yapılmasıdır.

2. Classifier Nedir?
Bu sınıflandırıcının (classifier) benim anladığım en önemli özelliği bir olayın herhangi bir kategoriye ait olması olasılığını hesaplaması.

Classifier özellikle robotik ve computer vision (bilgisayar görüşü/bilgisayarla görü) alanında çokça kullanılır

3. Conditional Probability
Naive Bayes' i anlamadan önce Conditional Probability kavramını anlamak gerekir. Conditional Probability daha önce olmuş bir olaya bakarak bir sonraki olayın gerçekleşme olasılığını bulur.

Örnek
Mesela bir demokrat senatörün kadın olma olasılığı nedir sorusu şöyle cevaplanır.
Önce senatörün demokrat olma olasılığını buluruz. Daha sonra demokrat olduğunu bildiğimiz bu kişinin kadın olma olasılığı ile çarparız.
P(Democrat & Female) = P(Democrat) x P(Female / Democrat)
Bir başka açıklama şöyle.
Bayes Rule: P(A|B) = P(B|A) * P(A) / P(B)
The probability of A (when B has occurred) = the probability of B (when A has occurred) *  probability of A (anytime) / probability of B (anytime)
4. Naive Kelimesi Nereden Geliyor?
Soru şöyle
Some articles say that naive Bayes is naive because of "independence of attributes". Whereas others say "independence of attributes within a class". Can anybody please clear this confusion? Thanks
Açıklaması şöyle
Naive Bayes doesn't assume independence of attributes ... It assumes conditional independence (or what you call independence within a class). This allows us to write the likelihood in the bayes rule P(X | Y) as the product of all P(Xi | Y), where X = (X1, ... Xi, ... Xn) and n is the number of attributes.
Bu açıklamalarda "Conditional Independence" önemli. Çünkü Naive Bayes kullanırken yapılan en önemli kabul "niteliklerin birbirinden bağımsız olduğudur". Yani nitelikler birbirlerini etkilemez. Dolayısıyla sonucun çıkma olasılığı o sonuca etkiyen tüm niteliklerin olasılıklarının çarpımıdır.

Örnek
Elimizde şöyle bir şekil olsun. Şekildeki X1, X2...X5 conditionally independent yani bir kişi Flu X1 ve X2 ve ... X5 belirtileri gösterebilir/göstermeyebilir.



Olasılık Gösterimi Nasıl ?
Naive Bayes sınıflandırıcısını açıklarken kullanılan olasılık gösteriminin açıklaması şöyle.
P (A|B) : B kümesinde A'nın olma olasılığı demek.

Formül Nasıl Çalışır
(Kategorinin olma olasılığı * elimizdeki niteliklerin olma olasılığı) / küme sayısı gibi düşünülebilir.
Burada nitelik yukarıdaki X1...X5'e denk geliyor.

Örnek
Aşağıdaki şekilde 15. günde eğer hava koşulu Outlook = Sunny, Temperature=Cool, Humidity=High, Wind=Strong ise Tenis oynama olasılığı hesaplanıyor.



Hesaplama şöyle: Her niteliğin kendi olasılık kümesinin büyüklüğüne bölündüğüne dikkat etmek lazım.
Toplam veri sayısı = 14
Toplam Yes sayısı = 9
Toplam No sayısı = 5
Outlook = Sunny sayısı = 2
Temperature=Cool sayısı = 3
Humidity=High sayısı = 3
Wind=Strong sayısı 3

Yes çıkma olasılığı P(y)=9/14 x 2/9 x 3/9 x 3/9 x 3/9=0,0053

No çıkma olasılığı P(n)=5/14 x 3/5 x 1/5 x 4/5 x 3/5=0,0205

Yani tenis oynanmama olasılığı daha yüksek.

Hiç yorum yok:

Yorum Gönder