Sınıflandırma Ölçütlerine Derinlemesine Bakış
Karmaşıklık matrisi, kesinlik, duyarlılık, F1, ROC-AUC ve PR eğrisi — doğru ölçütü seçme.
Sınıflandırma Ölçütlerine Derinlemesine Bakış, CoddyKit'te ücretsiz bir Learn AI with Python dersidir. Bu, 4 dersinin 2. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, Learn AI with Python öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. Learn AI with Python kursu toplamda 4 dersten oluşur.
Doğruluk Tek Başına Yeterli Değildir
Doğruluk, doğru tahminlerin oranıdır; ancak dengesiz verilerde yanıltıcı olabilir. Yalnızca çoğunluk sınıfını tahmin eden bir model %99 puan alabilirken nadir sınıf için hiçbir işe yaramayabilir.
Karmaşıklık Matrisi
Karmaşıklık matrisi, tahminleri doğru pozitifler, yanlış pozitifler, doğru negatifler ve yanlış negatifler olarak ayırır. Diğer tüm metriklerin temelini oluşturur.
from sklearn.metrics import confusion_matrix
y_true = [0, 1, 1, 0, 1, 0]
y_pred = [0, 1, 0, 0, 1, 1]
print(confusion_matrix(y_true, y_pred))
# rows = actual, columns = predictedKesinlik
Kesinlik = TP / (TP + FP). Pozitif tahmin edilen tüm öğelerin kaçı gerçekten pozitiftir? Yüksek kesinlik, az sayıda yanlış alarm anlamına gelir. Yanlış pozitiflerin maliyetli olduğu durumlarda önemlidir (ör. istenmeyen ileti filtreleri).
from sklearn.metrics import precision_score
print(precision_score(y_true, y_pred))Duyarlılık
Duyarlılık = TP / (TP + FN). Gerçek pozitiflerin tümünün kaçını yakaladık? Yüksek duyarlılık, az sayıda gözden kaçırma anlamına gelir. Yanlış negatiflerin maliyetli olduğu durumlarda önemlidir (ör. hastalık taraması).
from sklearn.metrics import recall_score
print(recall_score(y_true, y_pred))F1 Skoru
F1 skoru, kesinlik ile duyarlılığın harmonik ortalamasıdır: 2 * P * R / (P + R). İkisini dengeler ve dengesiz verilerde tek bir sayıya ihtiyaç duyduğunuzda kullanışlıdır.
from sklearn.metrics import f1_score, classification_report
print(f1_score(y_true, y_pred))
print(classification_report(y_true, y_pred))ROC Eğrisi ve AUC
ROC eğrisi, farklı eşik değerlerinde doğru pozitif oranını yanlış pozitif oranına karşı gösterir. roc_auc_score bu eğriyi özetler: 1.0 kusursuz, 0.5 ise rastgele tahmin anlamına gelir.
from sklearn.metrics import roc_auc_score
# needs probability scores, not hard labels
proba = model.predict_proba(Xte)[:, 1]
print(roc_auc_score(yte, proba))Kesinlik-Duyarlılık Eğrisi
PR eğrisi, farklı eşik değerlerinde kesinliği duyarlılığa karşı gösterir. Sınıflar büyük ölçüde dengesiz olduğunda ROC'tan daha bilgilendiricidir; çünkü pozitif sınıfa odaklanır.
from sklearn.metrics import precision_recall_curve
prec, rec, thresh = precision_recall_curve(yte, proba)
# plot rec (x) vs prec (y) to see the tradeoffOrtalama Kesinlik
average_precision_score, PR eğrisini tek bir sayıyla özetler (PR eğrisinin altındaki alan). Dengesiz ikili sınıflandırma için tercih edilen özet metriktir.
from sklearn.metrics import average_precision_score
print(average_precision_score(yte, proba))ROC AUC ve Ortalama Kesinlik
ROC AUC, doğru negatifler baskın olduğu için dengesiz verilerde iyimser görünebilir. Ortalama kesinlik, doğru negatifleri göz ardı eder ve nadir pozitif sınıftaki performansı daha gerçekçi biçimde yansıtır.
Doğru Metriği Seçme
Dengesiz problemler için F1 veya ortalama kesinlik kullanın. Dengeli sıralama kalitesi için ROC AUC kullanın. Yanlış alarmlar zararlıysa kesinliği, gözden kaçırmalar zararlıysa duyarlılığı seçin. Seçim yapmadan önce önceliğinizi her zaman belirtin.
Eşik Ayarlama
Çoğu metrik karar eşiğine (varsayılan 0.5) bağlıdır. Eşiği değiştirerek kesinlik ile duyarlılık arasında denge kurarsınız. İş gereksiniminizi karşılayan eşiği seçmek için PR eğrisini kullanın.
import numpy as np
# pick threshold for at least 0.9 precision
idx = np.argmax(prec >= 0.9)
chosen = thresh[idx]
preds = (proba >= chosen).astype(int)Kısa Kontrol
Metrik anlayışınızı sınayın.
Özet
Özet: confusion_matrix ile başlayın. Kesinlik yanlış alarmları, duyarlılık gözden kaçırmaları cezalandırır; F1 ikisini dengeler. roc_auc_score sıralama kalitesini ölçer; average_precision_score ve PR eğrisi dengesiz veriler için daha iyidir. Önceliklerinize uygun olması için eşiği ayarlayın.
Sıkça Sorulan Sorular
“Sınıflandırma Ölçütlerine Derinlemesine Bakış” dersi ücretsiz mi?
Evet — “Sınıflandırma Ölçütlerine Derinlemesine Bakış” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve Learn AI with Python kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. Learn AI with Python kursu toplamda 4 dersten oluşur.
“Sınıflandırma Ölçütlerine Derinlemesine Bakış” dersinde ne öğreneceğim?
Karmaşıklık matrisi, kesinlik, duyarlılık, F1, ROC-AUC ve PR eğrisi — doğru ölçütü seçme. Learn AI with Python ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.
Learn AI with Python öğrenmeye başlamak için deneyim gerekli mi?
Önceden deneyim gerekmez. CoddyKit'te Learn AI with Python, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 4 dersinin 2. dersidir.
“Sınıflandırma Ölçütlerine Derinlemesine Bakış” dersi ne kadar sürer?
Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.
Bu Learn AI with Python dersinde kod yazıp çalıştırabilir miyim?
Evet. Her Learn AI with Python dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.
Bu kursun tüm dersleri
- Çapraz Doğrulama Stratejileri
- Sınıflandırma Ölçütlerine Derinlemesine Bakış
- Izgara Araması ve Rastgele Arama
- Optuna ile Bayesçi Optimizasyon