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.