Stokastik degrade iniş (SGD) için uygun bir minibatch boyutu seçme


13

Stokastik degrade iniş yaparken minibatch boyutu seçimini inceleyen literatür var mı? Deneyimlerime göre, genellikle çapraz doğrulama veya değişen başparmak kuralları kullanılarak bulunan ampirik bir seçim gibi görünüyor.

Doğrulama hatası azaldıkça minibatch boyutunu yavaşça arttırmak iyi bir fikir mi? Bunun genelleme hatası üzerinde ne gibi etkileri olur? Son derece küçük bir minibatch kullanarak ve modelimi yüz binlerce kez güncelleyerek daha iyi miyim? Çok küçük ve toplu arasında dengeli bir sayı ile daha iyi olurdu?
Minibatch'umun boyutunu veri kümesinin boyutuyla veya veri kümesindeki beklenen özellik sayısıyla ölçeklendirmeli miyim?

Minibatch öğrenme programlarının uygulanması hakkında çok fazla sorum var. Ne yazık ki, okuduğum çoğu makale bu hiperparametreyi nasıl seçtiklerini gerçekten belirtmiyor. Yann LeCun gibi yazarlardan, özellikle de Tricks of the Trade koleksiyonlarından bazı başarılar elde ettim. Ancak, hala bu soruların tam olarak ele alındığını görmedim. Makaleler için herhangi bir tavsiyeniz veya özellikleri öğrenmeye çalışırken iyi minibatch boyutlarını belirlemek için hangi kriterleri kullanabileceğim konusunda tavsiyesi var mı?


Bu konuda çok fazla isabet almıyorum. Makine öğrenimi veya bunun gibi derin öğrenme soruları sormak için daha iyi bir yığın değişim sitesi var mı?
Jason_L_Bens

Yanıtlar:


6

SGD'nin etkinliği teorisi tek örnek güncellemeler (yani minibatch boyutu 1) üzerinde çalışılmıştır, bu nedenle daha büyük minibatchların kullanılması teorik olarak gerekli değildir. İki pratik avantajı vardır:

Birincisi , hesaplama vektörleştirilebiliyorsa, küçük bir minibatch> 1 için degradeleri neredeyse aynı derecede hızlı bir şekilde hesaplayarak eğitimde önemli hız artışlarına yol açabilirsiniz.

Bu durumda, optimum minibatch boyutu, birlikte çalıştığınız belirli donanım ve uygulamanın bir işlevidir, bu nedenle muhtemelen en iyi yeri bulmak için denemekten vazgeçersiniz.

İkincisi , degradeyi bir minibatch boyutunda> 1 hesaplamak, daha doğru degradelere ve daha optimum adımlara yol açacaktır. Ancak, minibatch boyutu 1'in üzerine çıktığında bu avantaj hızlı bir şekilde gelir ve düzleşir, böylece öncelikle ilk hedefe odaklanabilirsiniz.

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.