Sklearn Metrikleri Nelerdir ve Neden Onlar Hakkında Bilmeniz Gerekir?

Yayınlanan: 2021-10-22

Python, dünya çapında geliştiriciler arasında en çok kullanılan programlama dillerinden biridir. Veri otomasyonu ve algoritma yetenekleri, onu programlar, makineler ve bilgisayar tabanlı sistemler oluşturmak ve eğitmek ve tahminlerde bulunmak için ideal kılar. Bu nedenle, Python becerilerine sahip adaylar, Makine Öğrenimi ve Veri Bilimi gibi kazançlı kariyer yolları için giderek daha fazla tercih edilmektedir.

Yeni başlayan biriyseniz, doğru araçları kendi başınıza bulmak göz korkutucu görünebilir. Scikit-learn gibi özgür yazılımlar, az bir çabayla ilgili becerileri edinmenizi sağlayabilir. Makine öğrenimi kitaplığında Python programcıları için çeşitli sınıflandırmalar, regresyon ve kümeleme algoritmaları bulunur.

Bu blog, öğrenme yolculuğunuzda size rehberlik etmek için özellikle sınıflandırma sorunlarına ve sklearn metriklerine odaklanacaktır. Değerlendirme metriklerinin uygulanması hakkında bilgi edinecek ve ayrıca bunların arkasındaki matematiği anlayacaksınız.

İçindekiler

Scikit-Learn'de Sınıflandırma Metrikleri

Sınıflandırma, tahmine dayalı modellemenin ayrılmaz bir parçasıdır. Bir popülasyondan belirli bir örneğin ait olduğu sınıfı tanımlamak için kullanırsınız. Bir hastanın tekrar hastaneye kaldırılıp kaldırılmayacağını tahmin etmek istediğinizi varsayalım. Buradaki olası iki tür - Pozitif (Hastaneye yatırılmış) ve Negatif (Hastaneye yatırılmamış). Sınıflandırma modeli, örneğin Öngörülen Pozitif veya Öngörülen Negatif olarak yerleştirilmesi gereken kovayı tahmin eder. Modeli eğittiğinizde tahminlerin doğruluğunu keşfedeceksiniz.

Çoğu veri bilimcisi ve makine öğrenimi mühendisi, tahmine dayalı modellerin performansını analiz etmek için Scikit-Learn paketini kullanır. Sklearn metrik modülü, birçok yerleşik işlevselliğe erişmenizi sağlar. Bu metriklerle sıfırdan fonksiyon yazma sürecini ortaya çıkaralım.

Kariyerinizi hızlandırmak için Makine Öğrenimi Kursuna, Makine Öğrenimi ve Yapay Zeka alanında Dünyanın en iyi Üniversiteleri - Yüksek Lisanslar, Yönetici Yüksek Lisans Programları ve İleri Düzey Sertifika Programından çevrimiçi katılın.

Sklearn Metriklerinin Açıklaması

Sklearn metrikleri, sınıflandırma performansını değerlendirmek için puanları, kayıpları ve fayda işlevlerini uygulamanıza olanak tanır.

İşte ilgili temel adımlar:

  • Veri yükle;
  • Tren setine ve test setine ayırın;
  • Eğitim modelini oluşturun;
  • Test verileri üzerinde tahminler veya tahminler yapın;
  • Makine öğrenimi modelini belirli bir yöntemle değerlendirin.

Devam etmek için, Rastgele Orman ve Doğrusal Regresyon olmak üzere iki model için bir örnek veri seti ve tahmin yetenekleri yüklemeniz gerekecektir. Onlara Model_RF ve Model_LR diyelim.

Pandalar modülünü içe aktarmak ve veri dosyasını okumak ve öğelerini incelemek için bu kodu çalıştırın.

pandaları ps olarak içe aktar

df = ps.read_csv('data.csv')

df.head()

Çoğu projede bir eşik tanımlarsınız ve tahmin olasılıklarını tahmin edilen pozitif ve tahmin edilen negatif olarak etiketlersiniz. Bu, tablonuza iki sütun daha ekler.

harman = 0,5

df['öngörülen_RF'] = (df.model_RF >= 0,5).astype('int')

df['forecasted_LR'] = (df.model_LR >= 0.5).astype('int')

df.head()

Artık gerçek ve tahmini etiketlerimiz olduğuna göre, örneklerimizi dört farklı kovaya bölebiliriz.

Karışıklık_matrix ile, etiketlerin aşağıdaki bölümlere ayrıldığı 2X2'lik bir dizi elde edebiliriz:

  • Gerçek Pozitif (TP)
  • Yanlış Pozitif (FP)
  • Yanlış Negatif (FN)
  • Gerçek Negatif (TN)

Sklearn metriklerinden convert_matrix'i içe aktardıktan ve gerçek ve tahmin edilen etiketleri geçtikten sonra, bunu doğrulamak için işlevlerinizi tanımlayabilirsiniz.

Ayrıca Python'un assert işlevini ve NumPy'nin array_equal işlevini kullanarak sonuçlarınızın manuel olarak eşleşip eşleşmediğini kontrol edebilirsiniz.

Dört grup TP, FP, TN ve FN'yi kullanarak diğer birçok performans metriğini hesaplayabiliriz. Bunlar:

1. doğruluk_skoru

Girdi olarak gerçek ve tahmin edilen etiketleri alır ve doğru tahmin edilen numune fraksiyonunu üretir.

2. geri çağırma_skoru

Doğru tahmin edilen olumlu olayların oranını verir. Geri çağırma, duyarlılık olarak da bilinir.

3. kesinlik_skoru

Olumlu olan tahmin edilen olumlu olayların oranını gösterir.

Tüm bu metrikleri hesapladıktan sonra, RF modelini hatırlama ve kesinlik açısından daha iyi bulduğunuzu varsayalım. Buradaki seçim kolay olacaktır. Peki ya LR modeli hatırlamada daha iyiyse ve RF modeli hassasiyette daha iyiyse? Bu durumda, F1 puanı adı verilen başka bir yönteme ihtiyacınız olacaktır.

4. f1_score

Geri çağırma ve kesinliğin harmonik ortalamasıdır. Puanı yüksek olan model daha iyi bir seçenek olarak kabul edilir.

Yukarıdaki metrikler, tanımlanmış bir 0,5 eşiği ile hesaplanmıştır. Bu eşikteki bir değişikliğin performans ölçütlerini de değiştirip değiştirmeyeceği merak edilebilir. Cevap? Evet, olacak.

Bir eşik seçmeden bir modeli değerlendirmenin başka bir yolu var, yani Alıcı Çalışma Karakteristiği (ROC) eğrileri. Scikit-learn ayrıca bunları analiz etmek için yerleşik işlevlere sahiptir.

roc_curve ve roc_auc_score işlevleri, gerçek etiketleri ve tahmin edilen olasılıkları girdi olarak alır.

  • roc_curve

Eşikler (azalan sırada benzersiz tahmin edilen olasılıklar), FPR (yanlış pozitif oranlar) ve TPR (gerçek pozitif oranlar) olmak üzere üç liste döndürür.

  • roc_auc_curve

Hem RF hem de LR modelleri için eğrinin altındaki alanları bulur.

ROC eğrisini çizdikten ve AUC'yi göstergelere ekledikten sonra daha iyi performans metriğini belirleyebilirsiniz.

Özetliyor

Tahmine dayalı analitikte, çeşitli metrikler arasından seçim yapabilirsiniz. Doğruluk, hatırlama, kesinlik, f1 ve AUC, popüler puanlardan bazılarıdır.

Bazıları bir eşik tanımlamayı ve doğruluk, hatırlama, kesinlik ve f1 puanları gibi performans ölçütlerini kullanmayı tercih edebilir. Diğerleri, eşik seçimi gerektirmediğinden bir modelin performansını analiz etmek için AUC'yi kullanmak isteyebilir. Sonunda, eldeki iş sorununa en uygun metriğe gitmelisiniz.

Bununla, size sklearn metriklerine genel bir bakış sağladık. Python programlamanın temellerini netleştirmek ve çevrimiçi kurslarla öğrenmeye devam etmek için bu bilgileri kullanabilirsiniz. Ayrıca becerilerinizi geliştirmek ve geliştirmek için proje çalışması da yapabilirsiniz. upGrad'ın Makine Öğrenimi ve Yapay Zekada Bilim Ustası gibi programlar her ikisinde de yardımcı olabilir.

Müfredat sizi eksiksiz veri bilimi araç setine alıştırır ve Scikit-Learn ve diğer yazılımların pratik yönlerini kapsar. Ek olarak, Liverpool John Moores Üniversitesi ve IIIT Bangalore gibi tanınmış enstitülerden alınan referanslar, sizi iş başvurularında ve işe yerleştirme mülakatlarında rakiplerinizden farklı kılar.

Python'da değerlendirme metrikleri nelerdir?

Değerlendirme metrikleri tipik olarak Python'daki sınıflandırma sorunları için kullanılır. Scikit-Learn, çok çeşitli tahmine dayalı analitik görevleri sağlayan ücretsiz bir makine öğrenimi kitaplığıdır. Hevesli veri bilimcileri ve makine öğrenimi mühendisleri, veriler hakkında tahminlerde bulunmak ve belirli modellerin kalitesini analiz etmek için bunu kullanabilir.

Neden sklearn metriklerine ihtiyacınız var?

Sklearn metrikleri, tahminlerinizin kalitesini değerlendirmenize olanak tanır. Bu modülü Scikit-Learn'de çeşitli veri kümeleri, puan işlevleri ve performans ölçümleri için kullanabilirsiniz. Sklearn'deki karışıklık matrisi, tahminlerin doğruluğunun kullanışlı bir temsilidir. Gerçek ve tahmin edilen etiketler gibi girdilerin yanı sıra tanımlanmış bir eşik veya güven değeri ile hatırlama, kesinlik ve f1 puanları gibi metrikleri hesaplayabilirsiniz. ROC eğrisi yöntemi, olasılık tahminlerini dengeler ve eğrinin altındaki alan açısından bir performans ölçüsü verir.

AI ve ML'de lisansüstü eğitim kariyer gelişimine nasıl yardımcı olur?

Yapay Zeka ve Makine Öğrenimi alanındaki en gelişmiş sertifikalar, müfredatta Scikit-Learn gibi araçları içerir. Python programlama ve Veri Bilimi eğitiminin önemli bir bileşenidir. Ancak Python ve Scikit-Learn'deki tarifleri kodlamak günümüzün rekabetçi iş ortamında yeterli değil. Endüstri odaklı bilgi edinmeniz ve becerilerinizi uygulamanız gerekir. Bu nedenle, projeleri ve ödevleri uygulamak için fırsatlar sunan çalışma programları seçin.