You are on page 1of 5

Analytic House Veri Analiz Danışmanlık Yazılım Tic. LTD. ŞTİ.

@çağrı aksu

Belli özellikleri bilinen ama etiketlendirilmemiş yani ne oldukları tanımlanmamış olay yada
nesneleri, tanımlanmış yani ne oldukları bilinen olay ya da nesneler aracılığı ile etiketlemek ya
da tanımlamak işi basit anlamı ile sınıflandırma analizi yapmaktır.
Bir örnek ile açıklamak gerekir ise; aşağıdaki görselde görüldüğü üzere elimizdeki birinci veri
seti(Eğitim veri seti), farklı araçlar ve bu araçların özelliklerini içeriyor. Ve bir de özellikleri
bilinen ama ne oldukları bilinmeyen araçlar olan ikinci veri seti(Test veri seti) var.
Biz birinci veri setindeki bildiğimiz araç tipleri ve bunların özelliklerini kullanarak, ikinci veri seti
içerisindeki özellikleri bilinen ama araç tipleri bilinmeyen gözlemler için araç tipi tahmin
etmeye çalışıyoruz.

Bu tahmin sürecinde kullanmak üzere bir model belirliyoruz ve bu modeli eğitim veri seti ile
eğiterek bir fonksiyon elde ediyoruz. Burada model dediğimiz şey, bize tahmin etmek
istediğimiz değere götürecek fonksiyonu oluşturmamızı sağlayacak metodoloji yada
metodolojiler topluluğudur. Basit anlamıyla “Karar Ağacı”, “SVM”, “Neural Network” vs…
Fonksiyonu elde ettikten sonra araç tiplerini tahmin etmek istediğimiz ikinci veri seti
içerisindeki gözlemlerin özelliklerini fonksiyonda yerine yerleştirip araç tipi tahminlerini
yapmış oluyoruz.

www.analytichouse.com iletisim@analytichouse.com
Analytic House Veri Analiz Danışmanlık Yazılım Tic. LTD. ŞTİ. @çağrı aksu

Sınıflandırmada eğitim veri seti ile eğittiğimiz modelin çıktısı olan fonksiyonun doğruluğunu
sınamak için veri setimizin test için ayırdığımız kısmının içerdiği her bir gözlem(satır) için
gözlemin özniteliklerini bu fonksiyonda yerine koyarak bir rakamlarla ifade edilen bir tahmin
değeri elde ederiz.
Bu tahmin değerleri ile gerçekte olan değerleri karşılaştırıp oluşturduğumuz eşitliğin başarısını
test ederiz. Bu test için confusion matris gibi oluşturur ve bu matris üzerinden elde ettiğimiz
istatistikleri kabul edilmiş normlar üzerinden anlamlandırırız.

Tahmin Edilen

8 2 1 11
Gerçekte Olan

7 7

1 11 2 14

2 4 6

4 9 13

9 9 13 9 11

Örneğin yukarıda confusion matrisine bakacak olursak, Test veri seti içerisindeki gözlemler için
yaptığımız tahminler ve bu gözlemlerin gerçekte ne oldukları çapraz bir tablo ile sunulmuştur.

Gerçekte araba olan 11 gözlemimiz varmış. Bu 11 araba için yaptığımız tahminlerde ise bu 11
arabanın sadece 8 tanesini doğru tahmin etmişiz. Gerçekte araba olan 2 gözlemi motosiklet 1
tanesini de tren olarak tahmin etmişiz.

Toplam da ise gözlemler arasında 9 tane araba var olduğunu tahmin etmişiz. Ve tabi gerçekte uçak
olan 1 gözlemi de araba olarak tahmin etmişiz.

www.analytichouse.com iletisim@analytichouse.com
Analytic House Veri Analiz Danışmanlık Yazılım Tic. LTD. ŞTİ. @çağrı aksu

Tabi motosiklet, uçak ve diğerleri içinde benzer cümleler kurabiliriz. Ve dolayısı ile bu görselden
elde ettiğimiz sonuçlar arttıkça karmaşıklaşır ve yorumlamak zorlaşır. Ve tabi bunları bir bilgisayara
öğretmek de oldukça sıkıntılı bir hale dönüşebilir.

Bu sebepler ile confusion matrisini anlamlandırmak için bazı istatistikler kullanırız. Fakat öncesinde
bu istatistikleri elde ederken kullanacağımız TP, TN, FP ve FN yi nasıl hesaplayacağımıza bir bakalım.

Burada oluşturduğumuz Confisuon matrisi için TP, TN, FP ve FN hesap ederken her bir farklı etiket
için ayrı ayrı hesap edip bu hesapların ortalamasını kullanmalıyız. Örneğin araba için TP hesaplıyor
isek matrisi araba ve diğerleri şeklinde yeniden yapmalıyız.

Gerçek Sınıflar

Diğerleri
Tahmin edilen

True Pozitif False Pozitif


sınıflar

Diğerleri

False
True Negatif
Negatif

Diğer etiketler içinde TP hesabını yaptıktan sonra bu TP’lerin toplamanı TP olarak, aritmetik
ortalamalarını ise TP oranı olarak kullanırız. Tabi aynı işlem TN, FP ve FN içinde geçerlidir.
𝐹𝑎𝑟𝑘𝑙𝚤
𝑠𝚤𝑛𝚤𝑓
𝑠𝑎𝑦𝚤𝑠𝚤

∑ 𝑇𝑃𝑖 = 𝑇𝑃0(𝑎𝑟𝑎𝑏𝑎) + 𝑇𝑃1(𝑚𝑜𝑡𝑜𝑟) + 𝑇𝑃2(𝑢ç𝑎𝑘) + 𝑇𝑃3(𝑡𝑟𝑒𝑛) + 𝑇𝑃4(𝑖ş𝑚𝑎𝑘𝑖𝑛𝑒𝑠𝑖)


𝑖=0

Accuracy(ACC)-Doğruluk
Bu istatistik doğru tahmin oranıdır. Doğru tahmin oranı, etiketleri doğru tahmin edilen test
gözlemlerinin toplam test gözlemlerinin sayısına bölünmesidir.
∑ 𝑇𝑃 + ∑ 𝑇𝑁
𝐴𝑐𝑐𝑢𝑟𝑎𝑐𝑦 =
𝐵ü𝑡ü𝑛 𝐺ö𝑧𝑙𝑒𝑚𝑙𝑒𝑟𝑖𝑛 𝑆𝑎𝑦𝚤𝑠𝚤

www.analytichouse.com iletisim@analytichouse.com
Analytic House Veri Analiz Danışmanlık Yazılım Tic. LTD. ŞTİ. @çağrı aksu

Bu oran, eğittiğimiz algoritmanın gerçek hayatta ki kullanımı sırasında yapacağı tahminlerin ne


kadar doğru olacağını belirtir. Fakat burada unutmamak gereken çok önemli bir durum var. Bu
da algoritmayı eğitirken kullandığımız eğitim gözlemlerinin gerçek hayatta ortaya çıkabilecek
bütün farklı durumları temsil ettiğinin varsayılması halinde bu istatistiğin güvenilir olacağıdır.
Örneğin ben araç tipleri içinden araba olanlar için sadece 3 farklı model alsaydım ve bu
modellerin hepsi 4 kapılı olsa idi ve bu gözlemlerle eğittiğim algoritmayı test ederken doğruluk
oranım da %98 çıksa idi ben oluşturduğum bu araç tipi tahmin edicisinin çok başarılı olduğunu
düşünecektim. Oysaki, gerçek hayatta bu tahmin ediciyi kullandığımda 3 kapılı araçların önemli
bir bölümünü tahmin edemeyecektim.
Ya da farklı bir durum da, oluşturduğum tahmin edici Trenlerin hiçbirini doğru tahmin
edememiş ama diğer araçları doğru tahmin etmiş olsa idi yine de accuracy değerim ~%86
olmuş olacaktı.
Bu istatistiğin güvenli olabilmesi için eğitim veri kümesinin içerdiği gözlemlerin dağılımlarının
sınıf değeri bakımından homojen olması ve gerçek dünyada ortaya çıkabilecek farklı
gözlemlerin büyük bir bölümünü temsil ediyor olması gerekmektedir.

Recall, True positive rate (TPR), Sensitivity, probability of detection


Recall yada Sensitivity, sınıflar içerisinde doğru olduğu bilinen gözlemlerin doğru olarak
tahmin edilenlerinin bütün doğru olduğu bilinen gözlemlere oranıdır. Örneğin Arabalar için
yapılan doğru tahminlerin tüm araba sayısına bölümü araba sınıfı için 𝑅𝑒𝑐𝑎𝑙𝑙𝑎𝑟𝑎𝑏𝑎 değerini
verir. Her sınıf için bu işlemin yapılıp aritmetik ortalamasının alınması genel Recall değerini
verir.
𝐹𝑎𝑟𝑘𝑙𝚤
𝑠𝚤𝑛𝚤𝑓
𝑠𝑎𝑦𝚤𝑠𝚤
∑𝑖=0 𝑅𝑒𝑐𝑎𝑙𝑙𝑖 𝑇𝑃𝑖
𝑅𝑒𝑐𝑎𝑙𝑙 = , 𝑅𝑒𝑐𝑎𝑙𝑙𝑖 =
𝐹𝑎𝑟𝑘𝑙𝚤 𝑆𝚤𝑛𝚤𝑓 𝑆𝑎𝑦𝚤𝑠𝚤 𝑇𝑃𝑖 + 𝐹𝑁𝑖

Specificity (SPC), Selectivity, True negative rate (TNR)


Specificity, sınıflar içerisinde yanlış olduğu bilinen gözlemlerin yanlış olarak tahmin
edilenlerinin bütün yanlış olduğu bilinen gözlemlere oranıdır. Örneğin motorlar için
oluşturulan Confisuon matrisi içerisinde motor olmayanların motor olmayan olarak
işaretlenenlerinin bütün motor olmayanlara oranı Specificity𝑚𝑜𝑡𝑜𝑟 değerini verir. Her sınıf için
bu işlemin yapılıp aritmetik ortalamasının alınması genel Specificity değerini verir.

𝐹𝑎𝑟𝑘𝑙𝚤
𝑠𝚤𝑛𝚤𝑓
𝑠𝑎𝑦𝚤𝑠𝚤
∑𝑖=0 Specificity𝑖 𝐹𝑃𝑖
Specificity = , Specificity𝑖 =
𝐹𝑎𝑟𝑘𝑙𝚤 𝑆𝚤𝑛𝚤𝑓 𝑆𝑎𝑦𝚤𝑠𝚤 𝐹𝑃𝑖 + 𝑇𝑁𝑖

www.analytichouse.com iletisim@analytichouse.com
Analytic House Veri Analiz Danışmanlık Yazılım Tic. LTD. ŞTİ. @çağrı aksu

Positive predictive value (PPV), Precision


Precision doğru olduğu bilinen gözlemlerin doğru olarak tahmin edilmişlerinin bütün doğru
olarak tahmin edilmişlere oranıdır. Örneğin trenler içerisinde tren olarak tahmin edilenlerin
sayısının bütün tren olarak yapılan tahminlere oranı Precision𝑡𝑟𝑒𝑛 değerini verir. Buradaki
bütün tren olarak yapılan tahminler gerçekte farklı araçlar olup da tren olarak tahmin edilenler
ve gerçekte tren olup yine tren olarak tahmin edilenlerin toplamıdır.
𝐹𝑎𝑟𝑘𝑙𝚤
𝑠𝚤𝑛𝚤𝑓
𝑠𝑎𝑦𝚤𝑠𝚤
∑𝑖=0 Precision𝑖 𝑇𝑃𝑖
Precision = , Precision𝑖 =
𝐹𝑎𝑟𝑘𝑙𝚤 𝑆𝚤𝑛𝚤𝑓 𝑆𝑎𝑦𝚤𝑠𝚤 𝑇𝑃𝑖 + 𝐹𝑃𝑖

F score
F score sınıflandırma algoritmalarını karşılaştırırken çok sık kullandığımız bir ölçüdür. Precision
ve Recall değerlerinin harmonik ortalamasıdır. Bu sebeple başarının iyi bir göstergesidir.
2 ∗ 𝑃𝑟𝑒𝑐𝑖𝑠𝑖𝑜𝑛 ∗ 𝑅𝑒𝑐𝑎𝑙𝑙
𝐹 𝑠𝑐𝑜𝑟𝑒 =
𝑃𝑟𝑒𝑐𝑖𝑠𝑖𝑜𝑛 + 𝑅𝑒𝑐𝑎𝑙𝑙

www.analytichouse.com

Çağrı AKSU

www.analytichouse.com iletisim@analytichouse.com

You might also like