Ana içeriğe geç Tamamlayıcı içeriğe geç

İkili sınıflandırma modellerini puanlama

İkili sınıflandırma modellerinde sonuçlar, Evet veya Hayır gibi iki kategoriye dağılır. Bir modelin, sonuçları ne kadar doğru dağıttığı çeşitli puan metrikleriyle değerlendirilebilir.

Metrikler, modelin farklı güçlü ve zayıf yönlerini ortaya çıkarır. Hiçbir metrik tek başına uygunluk ölçütü olamaz. Genel doğruluk puanın iyi olmasının, modelin iyi olduğu anlamına gelmediğini kesinlikle unutmayın. Örneğin, bir işletmenin günlük dönüşüm oranı yalnızca %10 ise ne olur? Model, hiçbir potansiyel müşteride dönüşüm gerçekleşmeyeceğini tahmin ederek %90 doğruluk puanı kazanabilir. Bu noktada, modelin güçlü ve zayıf yönleri arasındaki dengeyi tespit etmenize yardımcı olmak için F1, recall ve precision devreye girer. Model, potansiyel müşterilerinin %100'ünde dönüşüm gerçekleşmeyeceğini varsayarsa F1, 0 olur.

Bir ikili sınıflandırma deneyinin eğitimi sırasında, oluşturulan modellerin hızlı bir şekilde analiz edilmesini sağlamak için aşağıdaki grafikler otomatik olarak oluşturulur:

  • Permütasyon önemi: Makine öğrenim modeli performansı her bir özelliğe ne kadar bağlı olduğunu gösteren bir grafik. Permütasyon önemi

  • SHAP'nin önemi: Her bir özelliğin tahmin edilen sonucu ne kadar etkilediğini gösteren bir grafik. Deney eğitiminde SHAP'ın önemi

  • Karmaşıklık matrisi: Bir sınıflandırma modelindeki tahmin sonuçlarının doğruluğunu özetleyen bir grafik. Bkz. Karmaşıklık matrisi.

  • ROC eğrisi: Makine öğrenimi modelinin gerçek sonuç pozitifken pozitif sınıfı tahmin etmede ne kadar iyi olduğunu açıklayan bir grafik. Bkz. AUC ve ROC eğrisi.

Karmaşıklık matrisi

İkili sınıflandırma problemleri için çoğu metrik, confusion matrix'teki değerlerin farklı hesaplamalarıyla elde edilir. Confusion matrix, model görünümündeki görselleştirmelerden biridir. Her sınıfın toplamıyla birlikte, gerçek doğru ve gerçek yanlış değerlerden kaçının doğru tahmin edildiğini gösterir. Grafikte gösterilen değerler, eğitimden sonra model performansını doğrulamak için kullanılan otomatik bekletme verilerine dayanır. Veri kümesindeki her kayıt, şu çeyreklerden birine ayrılır:

  • Gerçek pozitif (TP), doğru sonucuyla tahmin edilmesi doğru olan, aslen doğru değerlerdir.

  • Hatalı pozitif (FP), doğru sonucuyla tahmin edilmesi yanlış olan, aslen yanlış değerlerdir.

  • Hatalı negatif (FN), yanlış sonucuyla tahmin edilmesi yanlış olan, aslen doğru değerledir.

  • Gerçek negatif (TN), yanlış sonucuyla tahmin edilmesi doğru olan, aslen yanlış değerlerdir.

Her bir çeyrekteki sayıların altında, recall (TP), fallout (FP), miss rate (FN) ve specificity (TN) metriklerine ait yüzde değerlerini görebilirsiniz. Metrikle ilgili araç ipucunu görüntülemek için değerlerin üzerine gelin.

Confusion matrix görselleştirmesi

Çeyreklere ayrılmış confusion matrix.

Gerçekçi senaryolarda, confusion matrix içinde hatalı pozitif ve hatalı pozitif sonuçlar gösterilir. Eğitim verilerinde hatasız tahmin yapılması, modelin yanıtları ezberlediğini ve gerçek dünyada performansının düşük olacağını gösterir. Yeterli sayıda gerçek pozitif ve negatif sonuçlar belirlediğinizden emin olmanız gerekir.

İpucu notuBazı durumlarda makine öğrenimi probleminiz için uygun seçim regresyon olabilir ancak yine de confusion matrix görselleştirmesinin sunduğu kolay karşılaştırma olanağını kullanmak isteyebilirsiniz. Bu durumda yapmanız gereken şey, hedef sütun dışında aynı verileri kullanarak bir modeli regresyon bir modeli ikili sınıflandırma olarak çalıştırmaktır. Bunu yapmak, regresyonun güvenilirliğinin ile iki sınıflandırmanın kolay açıklama olanağını bir arada sunar.

F1

F1 puanı, sınıflar arasında dengesizlik olduğunda pozitif tahminlerin ve aslen pozitif olan kayıtların doğruluğuna odaklanarak doğruluğu değerlendirmeye çalışan bir metriktir. Modelin, önemli sonuçları ne kadar doğru biçimde belirlediği olarak görülebilir. Bu metrik, recall ve precision arasında, ideal şekilde tam bir orta nokta bulmak için denge sağlamayı amaçlar. Veri kümesi ne kadar dengesiz olursa F1 puanının genel doğrulukla eşit olma olasılığı o kadar düşük olur.

F1 değeri yüksekse diğer tüm puanlama metrikleri de yüksek olur. Değer düşükse bu, daha fazla analiz yapmanız gerektiğini gösterir. Buna karşın, puan çok yüksekse veya bekletme puanı, çapraz doğrulama puanından çok düşükse bu, veri sızıntısının bir göstergesi olabilir.

F1 şu şekilde hesaplanır: 2 x ((Precision x Recall) / (Precision + Recall))

Hatırlama

Recall, gerçek pozitif oranıdır. Sonucun aslen doğru olduğu durumlarda, modelin ne sıklıkta isabetli bir şekilde doğru sonucunu tahmin ettiğini ölçer. Bu, modelin veri kümesi içindeki aslen doğru senaryoları ne kadar isabetli bir şekilde bulduğunu gösterir. Recall, pozitif sınıfın ne kadar iyi hatırlandığını ölçer. Şu şekilde hesaplanır: TP / (TP + FN)

Kesinlik

Precision, pozitif tahmin değeri olarak da bilinir. Bir değerin doğru olacağını tahmin ettiğinde modelin doğru tahminde bulunma olasılığını ölçer. Şu şekilde hesaplanır: TP / (TP + FP)

Recall ve precision arasındaki değişim

Recall, modelin kullandığı ağın genişliği olarak açıklanabilir: Bazı hatalı pozitif tahminler yapmış olsa bile tüm doğru değerleri belirledi mi? Mümkün olduğu kadar fazla doğruyu belirledi mi? Precision ise recall'ın tersi gibidir. Burada model doğru sonucunu tahmin ettiğinde, bu doğru sonucunu tahmin işleminden kesinlikle emin olmak isteriz. Ancak yüksek precision'da, değer doğru olduğunda bile modelin yanlış olarak tahmin ettiği daha fazla hatalı negatif ortaya çıkar.

Hiçbir doğru sonucun kaçırılmadığı ve doğru olarak tahmin edilen sonuçlardan hiçbirin aslen yanlış olmadığından emin olunmasını sağlayan bir değişim vardır. Yüksek precision veya yüksek recall yanlılığının önerilip önerilmeyeceği, iş kullanım senaryonuza bağlıdır. Örneğin, hastalık teşhisiyle ilgili tahmin yaparken gerçekten hasta olan kimseyi (hatalı negatif) gözden kaçırmadığınızdan emin olmak istersiniz.

  • Hatalı negatifin "maliyeti" yüksekse yüksek recall yanlılığına sahip bir model makul olabilir.

  • Hatalı pozitifin "maliyeti" yüksekse yüksek precision yanlılığına sahip bir model makul olabilir.

Doğruluk

Doğruluk, bir modelin ortalama olarak doğru tahmini ne sıklıkta yaptığını ölçer. Şu şekilde hesaplanır: (TP + TN) / (Tüm tahminler)

Özgüllük

Specificity, gerçek negatif oranıdır. Modelin, aslen yanlış olan bir değeri isabetli bir şekilde yanlış olarak tahmin etme sıklığını ölçer. Şu şekilde hesaplanır: TN / (FP + TN)

MCC

Matthews Korelasyon Katsayısı (MCC), -1 ile 1 aralığında yer alır. 1 değeri, modelin her örneği doğru tahmin ettiği anlamına gelir. MCC şöyle hesaplanır: ((TP x TN) - (FP x FN)) / [(TP + FP) x (FN + TN) x (FP + TN) x (TP + FN)]^(1/2)

Yanlış olma oranı

Miss rate, hatalı negatif oranıdır. Hatalı negatifler ile aslen doğru olan toplam olay sayısının arasındaki oranı belirtir. Şu şekilde hesaplanır: FN / (TP + FN)

FPR

Fallout, hatalı pozitif oranıdır. Hatalı pozitifler ile aslen negatif olan toplam olay sayısının arasındaki oranı belirtir. Şu şekilde hesaplanır: FP / (FP + TN)

NPV

Negatif tahmin değeri (NPV), bir değerin yanlış olduğunu tahmin ettiğinde modelin doğru tahminde yapmış olma olasılığını ölçer. Şu şekilde hesaplanır: TN / (FN + TN)

Günlük Kaybı

Log Loss, lojistik regresyonda doğruluk için yaygın kullanılan bir ölçümdür. Düşük log loss değeri, daha iyi tahmin anlamına gelir. Kusursuz bir modelin log loss değeri 0'dır.

AUC ve ROC eğrisi

Eğri altındaki alan (AUC), modelin ne kadar deterministik olduğunu anlamanıza yardımcı olabilen daha gelişmiş bir doğruluk metriğidir. Asıl sonuç pozitifken modelin pozitif sınıfı tahmin etmede ne kadar başarılı olduğunu açıklar.

AUC, bir ROC eğrisinin altındaki alan olarak tanımlanır. ROC eğrisi, 0,0 ile 1,0 arasındaki farklı bir dizi threshold değeri için hatalı pozitif oranı (x-axis) ile gerçek pozitif oranı (y-axis) karşılaştırmasını gösterir. Başka bir deyişle, yanlış alarm oranı ile isabet oranının karşılaştırmasını gösterir. Bu eğri, sınıflar arasında yarım yapmanın mümkün olup olmadığını anlamak için yararlıdır. Verilerin, tahmin edilen değerler arasında doğru bir şekilde ayrım yapmaya olanak sağlayacak kadar iyi olup olmadığını gösterir.

Gerçek pozitif oranı şöyle hesaplanır: TP / (TP + FN)

  • Gerçek pozitif oranı 1,0'a (eğri altındaki maksimum olası alan) ne kadar yakınsa model de o kadar deterministiktir.

  • Gerçek pozitif oranı 0,5'e ne kadar yakınsa model o kadar az deterministiktir.

Aşağıdaki resimde iyi bir ROC eğrisi gösterilmektedir. 1'e olabildiğince yakın olması ve yüksek AUC sağlaması gerektiğinden bu iyi bir eğridir. Noktalı çizgi, 50:50 oranındaki rastgele şansı gösterir. AUC düşükse eğrinin zayıf bir eğri olduğu düşünülür.

Yüksek AUC değerine sahip iyi bir ROC eğrisi

İyi bir ROC eğrisi

Eşik

Threshold, tahminin doğru olma olasılığıdır. Hatalı pozitifler ile hatalı negatifler arasındaki değişimi temsil eder. Threshold değeri algoritmaya göre belirlendiğinden büyük olasılıkla modelinizdeki her algoritma için farklı bir threshold değeri bulunacaktır.

Threshold ayarlama

Threshold ayarlama, ikili sınıflandırma modellerinin F1 puanlarını optimize etmek için doğru threshold değerinin seçildiğinden emin olmanın iyi bir yoludur. AutoML, 0 ile 1 arasındaki olası yüzlerce farklı threshold değeri için precision ve recall'u hesaplar. En yüksek F1 puanına ulaşan threshold değeri seçilir.

Varsayılan 0,5 threshold değerine bağımlı kalmak yerine bir threshold seçmek, farklı pozitif ve negatif durumlar arasında dengesizlik barındıran veri kümeleri için daha güçlü tahminler sağlar.

Grafikte threshold 0,5 olarak ayarlanmıştır. Bu durumda aslen doğru olan ve 0,5'ten düşük tahmin edilen kayıtlar, hatalı tahmin etiketine (hatalı negatif) sahip olur.

0,5 noktasındaki threshold değeri

Threshold değeri 0,5 noktasında işaretlenmiş grafik.

Bir kaydın doğru veya yanlış tahmin edilip edilmediğini belirleyen threshold değerini değiştirerek yüksek recall ya da yüksek precision yanlılığı elde edebiliriz.

Alternatif threshold değerleri, yüksek recall veya yüksek precision'a yol açar

İki alternatif threshold'un işaretlendiği grafik.

Daha fazla bilgi

Bu sayfa size yardımcı oldu mu?

Bu sayfa veya içeriği ile ilgili bir sorun; bir yazım hatası, eksik bir adım veya teknik bir hata bulursanız, bize bildirin, düzeltelim!