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

Uçuş süresi modeli: Düzenlileştirme!

Önceki egzersizde uçuş süresi modeline daha fazla yordayıcı ekledin. Model test verisinde iyi performans gösterdi, ancak bu kadar çok katsayıyla yorumlamak zordu.

Bu egzersizde daha yalın bir model oluşturmak için Lasso regresyonu (L1 cezasıyla düzenlileştirilmiş) kullanacaksın. Ortaya çıkan modeldeki katsayıların birçoğu sıfıra ayarlanacak. Bu da yalnızca yordayıcıların bir alt kümesinin modele gerçekten katkı verdiği anlamına gelir. Model daha basit olsa da, test verisinde yine de iyi bir RMSE üretir.

Düzenlileştirme gücü için belirli bir değer kullanacaksın. Daha sonra çapraz doğrulama ile en iyi değeri nasıl bulacağını öğreneceksin.

Veriler (önceki egzersizle aynı) flights olarak mevcut ve rastgele biçimde flights_train ve flights_test olarak bölünmüş durumda.

Bu model için iki parametre vardır: λ (regParam) ve α (elasticNetParam). Burada α düzenlileştirmenin türünü, λ ise düzenlileştirme gücünü belirler.

Bu egzersiz

PySpark ile Machine Learning

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

Egzersiz talimatları

  • Eğitim verisine bir doğrusal regresyon modeli uydur. Düzenlileştirme gücünü 1 olarak ayarla.
  • Test verisi üzerinde RMSE’yi hesapla.
  • Model katsayılarına bak.
  • Katsayıların kaç tanesi sıfıra eşit?

Uygulamalı interaktif egzersiz

Bu örnek kodu tamamlayarak bu egzersizi bitirin.

from pyspark.ml.regression import LinearRegression
from pyspark.ml.evaluation import RegressionEvaluator

# Fit Lasso model (λ = 1, α = 1) to training data
regression = ____(____, ____, elasticNetParam=1).____(____)

# Calculate the RMSE on testing data
rmse = ____(____).____(____)
print("The test RMSE is", rmse)

# Look at the model coefficients
coeffs = regression.____
print(coeffs)

# Number of zero coefficients
zero_coeff = sum([____ == ____ for beta in regression.coefficients])
print("Number of coefficients equal to 0:", zero_coeff)
Kodu Düzenle ve Çalıştır