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

Düzenlileştirilmiş lojistik regresyon

  1. bölümde, el yazısı rakamlar veri kümesi üzerinde lojistik regresyon kullanmıştın. Burada, L2 düzenlileştirmenin etkisini inceleyeceğiz.

El yazısı rakamlar veri kümesi önceden yüklenmiş, bölünmüş ve X_train, y_train, X_valid ve y_valid değişkenlerinde saklanmıştır. train_errs ve valid_errs değişkenleri boş listeler olarak zaten başlatılmış durumda.

Bu egzersiz

Python'da Lineer Sınıflandırıcılar

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

Egzersiz talimatları

  • Farklı C_value değerleri üzerinde döngü kurarak, her seferinde bir LogisticRegression modeli oluşturup eğit.
  • Her model için eğitim kümesi ve doğrulama kümesi hatasını kaydet.
  • Düzenlileştirme parametresi C'ye bağlı olarak eğitim ve test hatasının grafiğini oluştur.
  • Grafiğe bakarak, en iyi C değeri hangisi?

Uygulamalı interaktif egzersiz

Bu örnek kodu tamamlayarak bu egzersizi bitirin.

# Train and validaton errors initialized as empty list
train_errs = list()
valid_errs = list()

# Loop over values of C_value
for C_value in [0.001, 0.01, 0.1, 1, 10, 100, 1000]:
    # Create LogisticRegression object and fit
    lr = ____
    lr.fit(____)
    
    # Evaluate error rates and append to lists
    train_errs.append( 1.0 - lr.score(____) )
    valid_errs.append( 1.0 - lr.score(____) )
    
# Plot results
plt.semilogx(C_values, train_errs, C_values, valid_errs)
plt.legend(("train", "validation"))
plt.show()
Kodu Düzenle ve Çalıştır