BaşlayınÜcretsiz Başlayın

En uygun L1 ceza katsayısını belirle

Şimdi L1 düzenlileştirme için C parametresini ayarlayarak, model karmaşıklığını azaltırken iyi performans metriklerini koruyan değeri bulacaksın. Olası C değerleri üzerinde bir for döngüsü çalıştıracak, her biri için Lojistik Regresyon örnekleri kurup performans metriklerini hesaplayacaksın.

Olası değerlerle bir C listesi oluşturuldu. l1_metrics dizisi 3 sütunla kuruldu; ilki C değerleri, sonraki ikisi ise sıfır olmayan katsayı sayıları ve modelin recall skorunu tutmak için yer tutucu. Ölçeklenmiş öznitelikler ve hedef değişkenler eğitim için train_X, train_Y, test için test_X, test_Y olarak yüklendi.

Hem numpy hem pandas sırasıyla np ve pd olarak, ayrıca sklearn içinden recall_score fonksiyonu yüklendi.

Bu egzersiz

Python ile Pazarlama için Machine Learning

kursunun bir parçasıdır
Kursu Görüntüle

Egzersiz talimatları

  • C listesinin uzunluğuna kadar 0'dan başlayan bir aralık üzerinde bir for döngüsü çalıştır.
  • Her C adayı için bir Lojistik Regresyon başlat, eğit ve test verisi üzerinde churn tahmini yap.
  • Her C adayı için sıfır olmayan katsayı sayısını ve recall skorunu l1_metrics'in ikinci ve üçüncü sütunlarına kaydet.
  • l1_metrics'ten uygun sütun adlarıyla bir pandas DataFrame oluştur.

Uygulamalı interaktif egzersiz

Bu örnek kodu tamamlayarak bu egzersizi bitirin.

# Run a for loop over the range of C list length
for index in ___(0, len(C)):
  # Initialize and fit Logistic Regression with the C candidate
  logreg = ___(penalty='l1', C=C[___], solver='liblinear')
  logreg.fit(___, train_Y)
  # Predict churn on the testing data
  pred_test_Y = logreg.___(test_X)
  # Create non-zero count and recall score columns
  l1_metrics[index,1] = np.___(logreg.coef_)
  l1_metrics[index,2] = recall_score(___, pred_test_Y)

# Name the columns and print the array as pandas DataFrame
col_names = ['C','Non-Zero Coeffs','Recall']
print(pd.DataFrame(l1_metrics, columns=___))
Kodu Düzenle ve Çalıştır