Modeli doğrularken Keras'ta ayrıntılı kullanım nedir?


96

LSTM modelini ilk kez çalıştırıyorum. İşte modelim:

opt = Adam(0.002)
inp = Input(...)
print(inp)
x = Embedding(....)(inp)
x = LSTM(...)(x)
x = BatchNormalization()(x)
pred = Dense(5,activation='softmax')(x)

model = Model(inp,pred)
model.compile(....)

idx = np.random.permutation(X_train.shape[0])
model.fit(X_train[idx], y_train[idx], nb_epoch=1, batch_size=128, verbose=1)

Modeli eğitirken ayrıntılı kullanım nedir?

Yanıtlar:


228

Model.fit için belgeleri buradan kontrol edin .

Ayrıntılı 0, 1 veya 2'yi ayarlayarak, her dönem için eğitim ilerlemesini nasıl 'görmek' istediğinizi söylüyorsunuz.

verbose=0 sana hiçbir şey göstermeyecek (sessiz)

verbose=1 size aşağıdaki gibi hareketli bir ilerleme çubuğu gösterecek:

progres_bar

verbose=2 sadece şu şekilde çağ sayısından bahsedecek:

görüntü açıklamasını buraya girin


21
ayrıntılı: Tamsayı. 0, 1 veya 2. Ayrıntı modu. 0 = sessiz, 1 = ilerleme çubuğu, 2 = her dönem için bir satır. Teşekkürler @ank you rock ..
rakesh

2
Bu yorum, soruya verilen en iyi cevap, hatta yorumlanmakta olan cevaptan daha iyi. Bunu not edin ve sadece cevabı daha uzun hale getirmek için kelimelerden kaçınmaya çalışın. @rakesh, harikasın.
Konstantin Şeker

22

verbose: Integer. 0, 1 veya 2. Ayrıntı modu.

Ayrıntılı = 0 (sessiz)

Ayrıntılı = 1 (ilerleme çubuğu)

Train on 186219 samples, validate on 20691 samples
Epoch 1/2
186219/186219 [==============================] - 85s 455us/step - loss: 0.5815 - acc: 
0.7728 - val_loss: 0.4917 - val_acc: 0.8029
Train on 186219 samples, validate on 20691 samples
Epoch 2/2
186219/186219 [==============================] - 84s 451us/step - loss: 0.4921 - acc: 
0.8071 - val_loss: 0.4617 - val_acc: 0.8168

Ayrıntılı = 2 (her dönem için bir satır)

Train on 186219 samples, validate on 20691 samples
Epoch 1/1
 - 88s - loss: 0.5746 - acc: 0.7753 - val_loss: 0.4816 - val_acc: 0.8075
Train on 186219 samples, validate on 20691 samples
Epoch 1/1
 - 88s - loss: 0.4880 - acc: 0.8076 - val_loss: 0.5199 - val_acc: 0.8046

Farklı ayrıntılı vakalar için neden beklenen çıktıyı alamadığımı açıklayabilir misiniz? Dosyam için ayrıntılı = 0 ve 2 için aynı [sessiz] çıktı alıyorum? Ve ayrıntılı = 1 için, ilerleme çubuğunu yalnızca Epoch 10/10 - 21s gibi dönemlerin sonunda alıyorum - kayıp: 0.2354 - acc: 0.9286 - val_loss: 0.2206 - val_acc: 0.9344 [======== ======================] Doğruluk: 0.9344 Hata: 6.560000000000002
Dr Nisha Arora

harika cevap, bana yardım etti. Tensorflow 2.2 için geçerli
Bobs Burgers

9

İçin verbose> 0, fityöntem günlükleri:

  • kayıp : egzersiz verileriniz için kayıp işlevinin değeri
  • acc : egzersiz verileriniz için doğruluk değeri.

Not: Düzenleme mekanizmaları kullanılıyorsa, aşırı uydurmayı önlemek için bunlar açılır.

eğer validation_dataya validation_splitargümanlar, boş olmayan fityöntem günlükleri:

  • val_loss : doğrulama verileriniz için kayıp işlevinin değeri
  • val_acc : doğrulama verileriniz için doğruluk değeri

Not: Ağın tüm yeteneklerini kullandığımız için, düzenleme mekanizmaları test sırasında kapatılır.

Örneğin, verboseeğitim sırasında modeli kullanmak acc, val_accdaha kötüye giderken gelişmeye devam ederseniz ortaya çıkan aşırı uyumu tespit etmeye yardımcı olur .


Ayrıntı parametresiyle normalleştirme ne ilgisi var ?!
Chrisji

Ayrıntılı parametrenin, düzenleme mekanizmaları üzerinde hiçbir etkisi yoktur. Ben sadece ayrıntılı etkinleştirilmişse görüntülenenler hakkında bilgi ekliyorum (ilk soruyu yanıtlamak için "Modeli eğitirken ayrıntılı kullanım nedir?" => Örn: acc ve val_acc'yi karşılaştırarak aşırı uydurmadan kaçınmak).
Hugo Bevilacqua

2

Varsayılan olarak ayrıntılı = 1,

ayrıntılı = 1, hem ilerleme çubuğu hem de dönem başına bir satır içerir

ayrıntılı = 0, sessiz anlamına gelir

ayrıntılı = 2, her çağ için bir satır, yani epoch no./total no. çağların


0

Ayrıntılı bayrakla sağlanan ayrıntıların sıralaması aşağıdaki gibidir:

Daha az ayrıntı ... Daha fazla ayrıntı

0 <2 <1

Varsayılan 1

Üretim ortamı için 2 önerilir

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.