Doğrusal regresyon: Hiperparametreler

Hiperparametreler, eğitimin farklı yönlerini kontrol eden değişkenlerdir. Sık kullanılan üç hiperparametre şunlardır:

Buna karşılık parametreler, ağırlıklar ve önyargı gibi modelin bir parçası olan değişkenlerdir. Diğer bir deyişle, hiperparametreler sizin kontrol ettiğiniz değerlerdir; parametreler ise modelin eğitim sırasında hesapladığı değerlerdir.

Öğrenme hızı

Öğrenme hızı, modelin ne kadar hızlı yakınsadığını etkileyen, sizin belirlediğiniz bir kayan nokta sayısıdır. Öğrenme hızı çok düşükse modelin birleşmesi uzun sürebilir. Bununla birlikte, öğrenme hızı çok yüksekse model hiçbir zaman yakınlaşmaz. Bunun yerine, kaybı en aza indiren ağırlıklar ve ağırlıklar etrafından çıkar. Amaç, modelin hızla yakınlaşabilmesi için çok yüksek veya çok düşük olmayan bir öğrenme hızı seçmektir.

Öğrenme hızı, gradyan azalma sürecinin her adımında ağırlıklarda ve önyargıda yapılacak değişikliklerin büyüklüğünü belirler. Model, bir sonraki iterasyonda modelin parametrelerini (ağırlık ve yanlılık değerleri) belirlemek için gradyanı öğrenme hızıyla çarpar. Eğim azalma yönteminin üçüncü adımında, negatif eğim yönünde hareket edilecek "az miktar" öğrenme hızını ifade eder.

Eski model parametreleri ile yeni model parametreleri arasındaki fark, kayıp işlevinin eğimiyle orantılıdır. Örneğin, eğim büyükse model büyük bir adım atar. Küçükse küçük bir adım atar. Örneğin, gradyanın büyüklüğü 2,5 ve öğrenme hızı 0,01 ise model parametreyi 0,025 oranında değiştirir.

İdeal öğrenme hızı, modelin makul sayıda iterasyonda birleşmesine yardımcı olur. Şekil 21'de kayıp eğrisi, modelin yakınlaşmaya başlamadan önce ilk 20 iterasyonda önemli ölçüde iyileştiğini gösterir:

Şekil 21. Düzleşmeden önce dik bir eğim gösteren kayıp eğrisi.

Şekil 21. Hızlıca yakınlaşan bir öğrenme hızıyla eğitilmiş bir modeli gösteren kayıp grafiği.

Buna karşılık, çok küçük bir öğrenme hızı, yakınsaması için çok fazla iterasyon gerektirebilir. Şekil 22'de kayıp eğrisi, modelin her iterasyondan sonra yalnızca küçük iyileştirmeler yaptığını gösterir:

Şekil 22. Yaklaşık 45 derecelik bir eğim gösteren kayıp eğrisi.

Şekil 22. Küçük bir öğrenme hızıyla eğitilen bir modeli gösteren kayıp grafiği.

Her iterasyon kaybın dalgalanmasına veya sürekli artmasına neden olduğundan çok yüksek bir öğrenme hızı hiçbir zaman yakınsama sağlamaz. Şekil 23'te kayıp eğrisi, modelin her iterasyondan sonra kaybı azalttığını ve ardından artırdığını gösterir. Şekil 24'te ise kayıp daha sonraki iterasyonlarda artar:

Şekil 23. Dağınık bir yukarı ve aşağı çizgi gösteren kayıp eğrisi.

Şekil 23. Çok yüksek bir öğrenme hızı ile eğitilmiş bir modeli gösteren kayıp grafiği. Bu modelde, iterasyon sayısı arttıkça kayıp eğrisi büyük dalgalanmalar göstererek yukarı ve aşağı hareket ediyor.

Şekil 24. Daha sonraki iterasyonlarda kaybın arttığını gösteren kayıp eğrisi

Şekil 24. Çok yüksek bir öğrenme hızıyla eğitilmiş bir modeli gösteren kayıp grafiği. Bu modelde, sonraki iterasyonlarda kayıp eğrisi önemli ölçüde artar.

Alıştırma: Anladığınızdan emin olun

İdeal öğrenme hızı nedir?
İdeal öğrenme hızı, soruna bağlıdır.
Her model ve veri kümesinin kendi ideal öğrenme hızı vardır.
0,01
1,0

Grup boyutu

Grup boyutu, modelin ağırlıklarını ve önyargılarını güncellemeden önce işlediği örnek sayısını ifade eden bir hiper parametredir. Modelin, ağırlıkları ve önyargıyı güncellemeden önce veri kümesindeki her örnek için kaybı hesaplaması gerektiğini düşünebilirsiniz. Ancak bir veri kümesi yüz binlerce hatta milyonlarca örnek içeriyorsa tüm grubu kullanmak pratik değildir.

Ağırlıkları ve önyargıyı güncellemeden önce veri kümesindeki her bir örneği incelemeye gerek kalmadan ortalama olarak doğru gradyanı elde etmek için kullanılan yaygın iki teknik stokastik gradyan azalma ve mini grup stokastik gradyan azalma'dır:

  • Stokastik gradyan azalma (SGD): Stokastik gradyan azalma, iterasyon başına yalnızca tek bir örnek (bir grup boyutu) kullanır. Yeterli sayıda yineleme yapıldığında SGD çalışır ama çok gürültülüdür. "Gürültü", eğitim sırasında iterasyon sırasında kaybın azalması yerine artışa neden olan varyasyonları ifade eder. "Stokastik" terimi, her bir grubu içeren bir örneğin rastgele seçildiğini ifade eder.

    Aşağıdaki resimde, model SGD kullanarak ağırlıklarını ve yanlılığını güncellerken kaybın nasıl hafif bir dalgalanma gösterdiğine dikkat edin. Bu durum, kayıp grafiğinde gürültüye neden olabilir:

    Şekil 25. Düzleşen ancak çok sayıda küçük dalgalanmaya sahip dik bir kayıp eğrisi.

    Şekil 25. Kayıp eğrisinde gürültü gösteren, stokastik gradyan inişi (SGD) ile eğitilmiş model.

    Stokastik gradyan azalma kullanıldığında yalnızca yakınlaşmaya yakın değil, kayıp eğrisinin tamamında gürültü oluşabileceğini unutmayın.

  • Küçük grup stokastik gradyan inişi (küçük grup SGD): Küçük grup stokastik gradyan inişi, tam grup ve SGD arasında bir uzlaşmadır. $ N $ veri noktası için toplu boyut, 1'den büyük ve $ N $'den küçük herhangi bir sayı olabilir. Model, her bir gruba dahil edilen örnekleri rastgele seçer, gradyanlarını ortalama alır ve ardından ağırlıkları ve önyargıyı iterasyon başına bir kez günceller.

    Her bir grup için örnek sayısının belirlenmesi, veri kümesine ve kullanılabilir bilgi işlem kaynaklarına bağlıdır. Genel olarak küçük toplu boyutlar SGD gibi, büyük toplu boyutlar ise tam toplu gradyan azalma gibi davranır.

    Şekil 26. Yakınlaşmaya yakın çok daha küçük dalgalanmalarla düzleşmeye başlayan dik kayıp eğrisi.

    Şekil 26. Küçük grup SGD ile eğitilmiş model.

Bir modeli eğitirken gürültünün ortadan kaldırılması gereken istenmeyen bir özellik olduğunu düşünebilirsiniz. Ancak belirli bir miktarda gürültü iyi bir şey olabilir. Sonraki modüllerde gürültünün bir modelin genellemesini daha iyi yapmasına nasıl yardımcı olabileceğini ve nöral ağda optimum ağırlıkları ve yanlılığı bulmaya nasıl yardımcı olabileceğini öğreneceksiniz.

Dönemler

Eğitim sırasında bir dönem, modelin eğitim veri kümesindeki her örneği bir kez işlediği anlamına gelir. Örneğin, 1.000 örnek içeren bir eğitim kümesi ve 100 örneklik bir mini grup boyutu verildiğinde, modelin bir epoch'u tamamlaması 10 iterations sürer.

Eğitim genellikle birçok epoch gerektirir. Yani sistemin, eğitim veri kümesindeki her örneği birden çok kez işlemesi gerekir.

Dönem sayısı, model eğitime başlamadan önce belirlediğiniz bir hiper parametredir. Çoğu durumda, modelin yakınlaşması için kaç tane dönem gerektiğiyle ilgili deneme yapmanız gerekir. Genel olarak, daha fazla dönem daha iyi bir model oluşturur ancak eğitilmesi de daha uzun sürer.

Şekil 27. Tam toplu işlem, veri kümesinin tamamıdır. Mini toplu işlem, veri kümesinin bir alt kümesidir. Dönem ise on mini toplu işlemden oluşan tam bir geçiştir.

Şekil 27. Tam grup ve mini gruplar.

Aşağıdaki tabloda, toplu boyut ve dönemlerin bir modelin parametrelerini güncelleme sayısıyla ilişkisi açıklanmaktadır.

Grup türü Ağırlıklar ve yanlılık güncellemeleri gerçekleştiğinde
Tam grup Model, veri kümesindeki tüm örnekleri inceledikten sonra. Örneğin, bir veri kümesi 1.000 örnek içeriyorsa ve model 20 dönem boyunca eğitiliyorsa model, ağırlıkları ve önyargıyı 20 kez (dönem başına bir kez) günceller.
Stokastik gradyan iniş Model, veri kümesinden tek bir örneği inceledikten sonra. Örneğin, bir veri kümesi 1.000 örnek içeriyorsa ve 20 epoch boyunca eğitiliyorsa model, ağırlıkları ve önyargıyı 20.000 kez günceller.
Mini grup stokastik gradyan inişi Model daha sonra her gruptaki örneklere bakar. Örneğin, bir veri kümesi 1.000 örnek içeriyorsa ve grup boyutu 100 ise model, 20 dönem boyunca eğitilirse model, ağırlıkları ve yanlılığı 200 kez günceller.

Alıştırma: Anladığınızdan emin olun

1. Mini grup SGD kullanırken en iyi grup boyutu nedir?
Duruma göre değişir
İdeal toplu boyut, veri kümesine ve mevcut bilgi işlem kaynaklarına bağlıdır.
Her grup için 10 örnek
Grup başına 100 örnek
2. Aşağıdaki ifadelerden hangisi doğrudur?
Büyük gruplar, çok sayıda aykırı değere sahip veriler için uygun değildir.
Bu ifade yanlıştır. Daha büyük toplu boyutlar, daha fazla gradyanın ortalamasını alarak verilerde aykırı değerlerin olumsuz etkilerini azaltmaya yardımcı olabilir.
Öğrenme hızını iki katına çıkarmak eğitimi yavaşlatabilir.
Bu ifade doğrudur. Öğrenme hızını ikiye katlamak, çok yüksek bir öğrenme hızına yol açabilir ve bu nedenle ağırlıkların "sallanmasına" neden olarak yakınsama için gereken süreyi uzatabilir. Her zaman olduğu gibi, en iyi hiper parametreler veri kümenize ve mevcut bilgi işlem kaynaklarına bağlıdır.