Kaybı Azaltma: Stokastik Gradyan İniş

Gradyan inişte toplu, tek bir eğitim iterasyonunda gradyanı hesaplamak için kullandığınız örnek kümesidir. Şu ana kadar grubun tüm veri kümesini oluşturduğunu varsadık. Google ölçeğinde çalışırken veri kümeleri genellikle milyarlarca, hatta yüz milyarlarca örnek içerir. Ayrıca, Google veri kümeleri genellikle çok sayıda özellik içerir. Sonuç olarak, bir grup büyük bir boyuta sahip olabilir. Çok büyük bir toplu işlem, tek bir iterasyonun bile çok uzun sürede hesaplanmasına neden olabilir.

Rastgele örneklenmiş örneklerden oluşan büyük bir veri kümesi muhtemelen yedek veriler içerir. Hatta grup boyutu büyüdükçe yedeklilik olasılığı artar. Bazı yedeklilikler, gürültülü gradyanları düzeltmek için yararlı olabilir ancak büyük gruplar, büyük gruplardan çok daha fazla tahmine dayalı değer sağlama eğiliminde değildir.

Çok daha az hesaplamayla ortalama olarak doğru renk geçişini elde edebilseydik ne olurdu? Veri kümemizden rastgele örnekler seçerek, (güçlü bir şekilde) çok daha küçük bir ortalamadan büyük bir ortalama tahmin edebiliriz. Olasılıksal gradyan iniş (SGD) bu fikri son derece başarılı bir şekilde ele alır; iterasyon başına yalnızca tek bir örnek (1 grup boyutu) kullanır. Yeterli sayıda yineleme yapıldığında SGD çalışır ancak çok gürültülüdür. "Olasılıksal" terimi, her grubu içeren bir örneğin rastgele seçildiğini ifade eder.

Mini toplu stokastik gradyan iniş (mini-toplu SGD), tam toplu iterasyon ve SGD arasındaki bir uzlaşmadır. Mini grup, genellikle rastgele seçilen 10 ila 1.000 örnekten oluşur. Mini-toplu SGD, SGD'deki gürültü miktarını azaltır ancak tam toplu SGD'den daha verimlidir.

Açıklamayı basitleştirmek amacıyla, tek bir özellik için gradyan azalmaya odaklandık. Gradyan inişin birden fazla özellik içeren özellik gruplarında da kullanılabildiğinden emin olabilirsiniz.