2016-07-31 21 views
5

22 sınıflı bir dizi 15000 eğitim görüntüsüyle bir konvnet eğitimi için tensorflow kullanıyorum. 2 tane konv katmanım ve bir tane tamamen bağlı bir katmanım var. Ağı 15000 görüntülerle eğittim ve eğitim setinde yakınsama ve yüksek doğruluk elde ettim. Ben ağını varsayıyorum böyleceBırakma, Convolutional Neural Network'te neden yakınsayı önlüyor?

Ancak, benim test seti çok daha düşük doğruluk yaşanıyor uydurma bitti. Bununla savaşmak için ağımın tamamen bağlı olan katmanından önce ayrılma ekledim.

Ancak, okulu terk etme ekleyerek birçok tekrarlamalar sonra yakınsama asla ağı neden oldu. Bunun neden olabileceğini merak ediyordum. Hatta yüksek bir ayrılma olasılığı (.9 olasılığını) kullandım ve aynı sonuçları yaşadım.

+1

yüksek bırakma nedenleri sizin düğümleri vb doyurabilecek Yani, daha az ben yakınsama beklenir. Düşük bırakma oranlarını denediniz mi? –

+0

Eh, keep_prob'u 0.9'a ayarlamaktan bahsediyor, bu da nöronların sadece% 10'unu sıfırlayacak. Eğer aslında nöronların% 90'ını sıfırlıyorsanız, bu problem olurdu. Bir model birbirine yaklaşmadığında genellikle bana yardımcı olan şey, öğrenme oranını 10 katına indirmektir. – chasep255

+0

Teşekkürler Bir deneyeceğim. Evet, kötüyüm, benim keep_prob'umun .9. –

cevap

0

Eh senin tutmak bırakma olasılığını 0,9 yaparak her tekrarında inerken o nöron bağlantısının% 10 şansı var demektir. Bırakma için ayrıca optimum bir değer olmalıdır.

This is taken from cs231 course

yukarıda biz de bizim nöronlar ölçeklendirme vardır yarıda bırakılması ile anlayabileceği gibi. Yukarıdaki durum 0,5 damladır. Eğer o.9 ise tekrar farklı bir ölçekleme olacaktır.

Yani temelde eğer 0.9 Bırakma biz 0.9 ile onu en yükseğe çıkarmak gerek olasılığını tutun. Yani testte 0.1 büyüklükte bir şey alıyoruz.

Sadece bu ederek terk nasıl etkilediğini bir fikir edinebilirsiniz. Bazı olasılıklar tarafından olmayan yakınsak sorunu ..

İlgili konular