Erken durdurma: Optimizasyonu optimize etmek
Artık optimizasyon boyunca model performansını nasıl izleyeceğini bildiğine göre, katkı sağlamadığında optimizasyonu durdurmak için erken durdurmayı kullanabilirsin. Optimizasyon işe yaramadığında kendiliğinden duracağı için, Dan'in videoda gösterdiği gibi .fit() çağrında epochs için yüksek bir değer de verebilirsin.
Optimize edeceğin model model olarak belirtildi. Daha önce olduğu gibi, veriler predictors ve target olarak önceden yüklendi.
Bu egzersiz
Python ile Deep Learning'e Giriş
kursunun bir parçasıdırEgzersiz talimatları
EarlyStopping'itensorflow.keras.callbacksiçinden içe aktar.- Modeli derle: yine
optimizerolarak'adam', kayıp fonksiyonu olarak'categorical_crossentropy've her epoch'ta doğruluğu görmek içinmetrics=['accuracy']kullan. early_stopping_monitoradlı birEarlyStoppingnesnesi oluştur.EarlyStopping()'inpatienceparametresini2yaparak, doğrulama kaybı 2 epoch boyunca iyileşmediğinde optimizasyonu durdur.- Modeli
predictorsvetargetile eğit.epochssayısını30olarak belirt ve0.3doğrulama ayrımı (validation split) kullan. Ayrıcacallbacksparametresine[early_stopping_monitor]geçir.
Uygulamalı interaktif egzersiz
Bu örnek kodu tamamlayarak bu egzersizi bitirin.
# Import EarlyStopping
____
# Save the number of columns in predictors: n_cols
n_cols = predictors.shape[1]
input_shape = (n_cols,)
# Specify the model
model = Sequential()
model.add(Dense(100, activation='relu', input_shape = input_shape))
model.add(Dense(100, activation='relu'))
model.add(Dense(2, activation='softmax'))
# Compile the model
____
# Define early_stopping_monitor
early_stopping_monitor = ____
# Fit the model
____