EDİT
Derin öğrenme, çok katmanlı yapay sinir ağlarının kullanımıyla yüksek boyutlu ve karmaşık verilerden öğrenmeyi mümkün kılan bir makine öğrenmesi alanıdır. Bu öğrenme sürecinde temel amaç, modelin parametrelerini ayarlayarak kayıp fonksiyonunu minimize etmektir. Parametrelerin güncellenmesinde kullanılan yöntemler optimizasyon algoritmaları olarak adlandırılır. Bu algoritmalar, gradyanların hesaplanması ve uygun adımlarla parametrelerin güncellenmesi yoluyla modelin hedef fonksiyona daha hızlı ve doğru biçimde yakınmasını sağlar.
Optimizasyon algoritmalarının seçiminde veri setinin büyüklüğü, modelin yapısı, bellek sınırlamaları ve hesaplama maliyetleri belirleyici rol oynar.
Gradyan İnişi ve Çeşitleri
Derin öğrenmede model parametrelerinin güncellenmesi için en temel yöntem gradyan inişi (Gradient Descent, GD) yaklaşımıdır. Bu yöntem, kayıp fonksiyonunun türevine (gradyanına) dayanarak parametreleri ardışık adımlarla günceller. Amaç, parametrelerin fonksiyonun en düşük değerine (minimumuna) doğru hareket etmesini sağlamaktır.
Gradyan inişi, kullanılan veri miktarına göre üç temel alt kategoriye ayrılmaktadır: Batch Gradient Descent, Stochastic Gradient Descent (SGD) ve Mini-Batch Gradient Descent.
Batch Gradient Descent
Batch Gradient Descent, gradyan tabanlı optimizasyon yöntemlerinin en temel biçimlerinden biridir ve derin öğrenme bağlamında tarihsel olarak önemli bir yere sahiptir. Bu yöntemde, modelin parametrelerinin güncellenmesi sürecinde tüm eğitim verisi bir arada değerlendirilir. Başka bir ifadeyle, kayıp fonksiyonunun türevleri yalnızca tek bir örnek ya da küçük bir örnek grubu üzerinden değil, verisetinin tamamı üzerinden hesaplanır. Bu özellik, yönteme yüksek derecede istikrar kazandırır; çünkü parametre güncellemeleri, örneklerin oluşturabileceği rastlantısal dalgalanmalardan bağımsızdır ve global bir doğrultuyu yansıtır.
Batch Gradient Descent’in temel matematiksel kuralı, parametre vektörü ’in her iterasyonda kayıp fonksiyonunun negatif gradyanı yönünde güncellenmesiyle ifade edilir. Bu süreç şu formülle gösterilir:
Burada xk, k. iterasyondaki parametre vektörünü, tk öğrenme oranını, ise n adet eğitim örneğinin tamamı kullanılarak elde edilen ortalama gradyanı temsil eder. Tüm veri üzerinden gradyan hesaplandığı için her güncelleme adımı oldukça kesindir ve konveks fonksiyonlar için global minimuma, konveks olmayan fonksiyonlar içinse en azından yerel minimumlardan birine yönelim sağlanır.
Batch Gradient Descent’in avantajı, sağladığı bu istikrarlı yakınsamadır. Özellikle küçük boyutlu veriler üzerinde, optimuma ulaşma süreci güvenilir bir şekilde gerçekleşir. Ancak bu avantaj, büyük ölçekli veri kümelerinde ciddi bir dezavantaja dönüşebilir. Çünkü her iterasyonda tüm veri setinin işlenmesi, hem zaman hem de bellek açısından çok maliyetlidir. Milyonlarca ya da milyarlarca örnek içeren veri kümelerinde tek bir güncelleme adımı dahi çok uzun sürebilir. Bunun yanında, yüksek boyutlu parametre uzaylarında bu hesaplama daha da zorlaşır.
Stohastic Gradient Descent (SGD)
Stochastic Gradient Descent (SGD), gradyan inişinin temel bir varyantı olup özellikle büyük ölçekli veri kümeleri üzerinde öğrenme sürecini hızlandırmak amacıyla geliştirilmiştir. Klasik Batch Gradient Descent yönteminde her güncelleme adımında tüm veri seti üzerinden gradyan hesaplanırken, SGD’de bu işlem yalnızca tek bir örnek üzerinden gerçekleştirilir. Böylece her iterasyonda kayıp fonksiyonunun gradyanı, tüm veri kümesinin değil, rastgele seçilen tek bir örneğin katkısına göre belirlenir. Bu yaklaşım, hesaplama maliyetini ciddi ölçüde azaltır ve güncellemelerin çok daha sık yapılmasına olanak tanır.
SGD’nin güncelleme kuralı şu şekilde ifade edilir:
Burada xk, k. iterasyondaki parametre vektörünü, tk öğrenme oranını, ise yalnızca tek bir eğitim örneği üzerinden hesaplanan gradyanı temsil eder. Bu formül, öğrenme sürecinin her adımında verinin küçük bir kısmının, hatta çoğunlukla tek bir örneğin değerlendirilmesiyle parametre güncellemesinin yapıldığını ortaya koymaktadır.
SGD’nin en önemli özelliği, hesaplama süresinde sağladığı dramatik azalmadır. Büyük veri setlerinde, her iterasyonda tüm veriyi işlemek yerine yalnızca tek bir örneğin kullanılması, güncellemeleri çok daha hızlı hale getirir. Ancak bu hızın beraberinde getirdiği en belirgin etki, kayıp fonksiyonunun değerinde meydana gelen dalgalanmalardır. Çünkü her adımda hesaplanan gradyan, yalnızca seçilen örneğin özelliklerini yansıtır ve bu durum, kayıp fonksiyonunun tekdüze bir biçimde azalmak yerine düzensiz bir şekilde salınım göstermesine neden olur. Bu salınımlar kimi zaman bir dezavantaj gibi görünse de, aslında SGD’nin yerel minimumlardan kurtulabilmesine yardımcı olur. Yani algoritma, yalnızca en yakın yerel minimuma sıkışıp kalmak yerine, rastlantısal dalgalanmalar sayesinde daha iyi çözümlere ulaşabilir.
Bununla birlikte, SGD’nin yakınsama davranışı Batch Gradient Descent’e kıyasla daha yavaş ve gürültülüdür. Öğrenme oranı uygun biçimde ayarlanmadığında parametre güncellemeleri ya çok büyük sıçramalar yaparak optimum noktayı aşabilir ya da çok küçük adımlarla ilerleyerek süreci gereksiz yere uzatabilir. Dolayısıyla, SGD’nin etkinliği büyük ölçüde öğrenme oranının seçimine bağlıdır. Ayrıca, parametre güncellemelerinin rastlantısal doğası, sürecin kararlılığını azaltabilmektedir.
Mini-Batch Gradient Descent
Mini-Batch Gradient Descent, gradyan tabanlı optimizasyon algoritmalarında Batch Gradient Descent ve Stochastic Gradient Descent’in avantajlarını bir araya getiren, pratikte en yaygın kullanılan yöntemdir. Bu yaklaşımda eğitim verisi küçük gruplara, yani mini-batch’lere ayrılır ve her güncelleme adımı bu alt kümeler üzerinden gerçekleştirilir. Böylelikle parametre güncellemeleri, tek bir örneğe dayalı SGD’ye kıyasla daha kararlı, tüm veri kümesine dayalı Batch Gradient Descent’e kıyasla ise çok daha hızlı ve verimli hale gelir.
Mini-batch yönteminin temel güncelleme kuralı şu şekilde ifade edilmektedir:
Burada xk, k. iterasyondaki parametre vektörünü, tk öğrenme oranını, ise i. örnekten i+m. örneğere kadar olan mini-batch üzerinde hesaplanan ortalama gradyanı göstermektedir. Mini-batch boyutu m, genellikle deneysel olarak belirlenir ve donanım kapasitesi ile modelin karmaşıklığına göre değişiklik gösterebilir.
Bu yöntemin temel avantajı, hesaplama verimliliği ile yakınsama kararlılığı arasında bir denge sağlamasıdır. Tüm veriyi aynı anda işleyen Batch Gradient Descent yönteminde tek bir güncelleme adımı oldukça maliyetlidir. Buna karşılık yalnızca tek bir örnek kullanan SGD, hızlı olmasına rağmen yüksek varyans nedeniyle dalgalı bir yakınsama sergiler. Mini-batch yaklaşımı ise bu iki uç yöntem arasında bir denge kurarak, hem hesaplamaların daha verimli gerçekleştirilmesine hem de parametre güncellemelerinin daha istikrarlı olmasına olanak tanır.
Modern derin öğrenme uygulamalarında mini-batch kullanımının bir diğer önemli nedeni de donanım uyumluluğudur. Özellikle GPU ve TPU gibi paralel hesaplama donanımları, verilerin küçük gruplar halinde işlenmesini doğal olarak destekler. Bu nedenle mini-batch yöntemi yalnızca teorik olarak değil, aynı zamanda pratik hesaplama açısından da tercih edilen standart bir yaklaşımdır.
Mini-Batch Gradient Descent’in davranışı, seçilen batch boyutuna da doğrudan bağlıdır. Çok küçük batch boyutları yöntemi SGD’ye yaklaştırarak daha gürültülü bir öğrenme süreci yaratabilirken, çok büyük batch boyutları ise yöntemi Batch Gradient Descent’e yaklaştırarak hesaplama maliyetini artırabilir. Dolayısıyla optimum performans için batch boyutunun dikkatli bir şekilde seçilmesi gerekir.
Momentum Tabanlı Yöntemler
Gradyan inişi yöntemlerinde, özellikle dar vadilere sahip yüzeylerde veya yüksek eğimli eksenlerde, parametre güncellemeleri istikrarsız hale gelebilir. Standart Stochastic Gradient Descent (SGD) yöntemi, bu tür durumlarda gradyan yönünde sürekli dalgalanmalar yaparak yavaş yakınsamaya yol açar. Bu sorunu azaltmak ve daha hızlı, kararlı bir öğrenme süreci elde etmek için momentum tabanlı yöntemler geliştirilmiştir.
Momentum
Momentum yöntemi, gradyan tabanlı optimizasyon algoritmalarında öğrenme sürecini hızlandırmak ve parametre güncellemelerindeki dalgalanmaları azaltmak amacıyla geliştirilmiş bir tekniktir. Klasik Stochastic Gradient Descent, her güncellemede yalnızca mevcut gradyanı dikkate aldığı için özellikle dar vadilerde veya yüksek eğimli yüzeylerde parametrelerin sürekli ileri geri hareket etmesine yol açar. Momentum yaklaşımı bu sorunu, geçmiş gradyanların etkisini de hesaba katarak güncellemeleri daha dengeli ve ivmeli hale getirmek suretiyle çözmeye çalışır.
Momentum’un temel mantığı, fiziksel dünyadaki hareket kavramından esinlenmiştir. Bir cismin hareket yönü, yalnızca anlık kuvvete değil, aynı zamanda geçmişteki hızına da bağlıdır. Benzer biçimde, optimizasyonda momentum kullanıldığında parametre güncellemeleri yalnızca anlık gradyan bilgisine göre değil, önceki güncellemelerin kümülatif etkisine göre yapılır. Bu yaklaşım, algoritmanın yüksek eğimli doğrultularda daha az salınım göstermesine ve düz alanlarda daha hızlı ilerlemesine olanak tanır.
Matematiksel olarak momentum yöntemi şu şekilde ifade edilmektedir:
Burada vk güncellemelerin yönünü ve büyüklüğünü temsil eden hız terimini, momentum katsayısını (genellikle 0.5 ile 0.9 arasında seçilir), öğrenme oranını ve ilgili noktadaki gradyanı ifade etmektedir. Bu formülasyonda yeni güncelleme, önceki güncellemenin belirli bir oranı ile mevcut gradyanın birleşiminden oluşur.
Momentum kullanımının en önemli sonuçlarından biri, optimizasyon sürecinde daha pürüzsüz bir yakınsama eğrisi elde edilmesidir. Gradyanların yön değiştirmesinden kaynaklanan keskin salınımlar azalır, bu da parametrelerin daha istikrarlı bir şekilde optimuma doğru ilerlemesini sağlar. Ayrıca momentum, özellikle derin sinir ağlarının yüksek boyutlu parametre uzaylarında sık karşılaşılan yerel minimumlara sıkışma riskini de azaltır. Çünkü ivme kazandırılan güncellemeler, modelin küçük çukurlardan çıkmasına yardımcı olabilir.
Bununla birlikte momentumun etkinliği, seçilen hiperparametrelerin değerine duyarlıdır. Öğrenme oranı çok yüksek seçilirse parametre güncellemeleri minimum noktayı aşabilir; momentum katsayısı çok düşük seçildiğinde ise yöntemin hızlandırıcı etkisi kaybolur. Dolayısıyla pratik uygulamalarda öğrenme oranı ve momentum katsayısı, veri setinin yapısına ve modelin karmaşıklığına uygun biçimde ayarlanmalıdır.
Nesterov Accelerated Gradient (NAG)
Nesterov Accelerated Gradient (NAG), momentum yönteminin geliştirilmiş bir versiyonu olarak derin öğrenme optimizasyonunda önemli bir yere sahiptir. Klasik momentum yaklaşımı, mevcut parametre güncellemesini geçmiş gradyanların birikimli etkisiyle birleştirerek daha hızlı ve dengeli bir yakınsama sağlamaktadır. Ancak bu yöntem, güncellemeyi daima mevcut konumda hesaplanan gradyana dayandırdığı için kimi zaman optimum noktanın ötesine geçme riskini taşır. NAG ise bu sorunu, gradyanı doğrudan mevcut konumda değil, momentumun öngördüğü “ilerideki konum” üzerinden hesaplayarak çözmeye çalışır.
Bu yaklaşımın temel fikri, parametrelerin bir sonraki adımda bulunabileceği konumu önceden tahmin etmek ve gradyanı bu tahmini konumda değerlendirmektir. Böylece algoritma, atacağı adımın sonucunu öngörerek daha bilinçli bir güncelleme yapar. Bu öngörülü davranış, parametrelerin minimum noktaya yaklaşırken aşırı ileri gitmesini engeller ve daha hassas bir yakınsama sağlar.
Matematiksel olarak NAG şu şekilde formüle edilir:
Burada vk, momentum terimini; momentum katsayısını; , öğrenme oranını ve ifadesi, parametrelerin öngörülen konumu üzerindeki gradyanı temsil etmektedir. Bu formülasyonda, gradyan bilgisi klasik momentum yönteminden farklı olarak ileriye bakışlı (lookahead) bir noktada hesaplanır.
NAG’in pratik etkisi, optimizasyon sürecinde daha öngörülü ve kontrollü adımlar atılmasıdır. Parametre güncellemeleri, yalnızca mevcut gradyanın etkisiyle değil, gelecekteki hareketin tahminiyle şekillendiği için salınımlar azaltılır. Bu durum özellikle derin sinir ağlarının yüksek boyutlu ve konveks olmayan optimizasyon yüzeylerinde, daha hızlı ve kararlı bir yakınsamaya yol açar. Ayrıca NAG, standart momentum yöntemine kıyasla optimum noktaya daha hassas yaklaşarak öğrenme sürecinde gereksiz ileri-geri hareketleri önler.
Yöntemin başarısı, momentum katsayısı ve öğrenme oranı gibi hiperparametrelerin uygun biçimde ayarlanmasına bağlıdır. Çok yüksek değerler, yine minimumu aşma riskini doğurabilirken çok düşük değerler, hızlanma etkisini zayıflatabilir. Buna rağmen, iyi ayarlanmış parametrelerle NAG, klasik momentum ve SGD’ye kıyasla daha verimli ve dengeli bir optimizasyon süreci sunmaktadır.
Uyarlamalı Öğrenme Oranı Yöntemleri
Gradyan inişi tabanlı algoritmalarda en kritik hiperparametrelerden biri öğrenme oranı (learning rate) seçimidir. Sabit öğrenme oranı kullanıldığında, bazı parametreler için güncellemeler çok küçük kalırken bazıları için aşırı büyük olabilir. Bu da ya çok yavaş öğrenmeye ya da kararsız bir yakınsamaya yol açar. Bu nedenle, öğrenme oranını parametrelerin geçmişteki gradyan bilgisine göre uyarlayan (adaptive) optimizasyon algoritmaları geliştirilmiştir.
Adagrad (Adaptive Gradient Algorithm)
Adagrad (Adaptive Gradient Algorithm), derin öğrenme ve genel makine öğrenmesi bağlamında öne çıkan ilk uyarlamalı öğrenme oranı yöntemlerinden biridir. Bu algoritmanın çıkış noktası, tüm parametreler için tek bir sabit öğrenme oranı kullanmanın verimli olmamasıdır. Özellikle yüksek boyutlu veri kümelerinde bazı parametreler çok sık güncellenirken bazıları nadiren güncellenir. Adagrad, bu duruma çözüm olarak her bir parametre için ayrı bir öğrenme oranı tanımlar ve bu oranları parametrelerin geçmişteki gradyan büyüklüklerine göre uyarlamalı biçimde ayarlar.
Adagrad’ın temel mekanizması, her parametre için geçmiş gradyan karelerinin kümülatif toplamını saklamaya dayanır. Böylece sık güncellenen parametrelerin öğrenme oranı zamanla küçülürken, seyrek güncellenen parametreler için öğrenme oranı görece daha büyük kalır. Bu özellik, özellikle doğal dil işleme gibi seyrek özelliklerin yoğun olduğu alanlarda Adagrad’ın etkili olmasını sağlar.
Matematiksel olarak güncelleme kuralı şu şekilde formüle edilmektedir:
Burada Gk, parametreye ait gradyan karelerinin birikimli toplamını, başlangıç öğrenme oranını, ise sıfıra bölme hatasını önlemek için kullanılan küçük bir sabiti ifade eder. Bu formülasyonda dikkate değer nokta, öğrenme oranının her parametre için farklı şekilde ölçeklenmesidir.
Adagrad’ın en güçlü yönlerinden biri, hiperparametre ayarına olan ihtiyacı azaltmasıdır. Özellikle öğrenme oranı seçimi konusunda hassas ayarlamalara duyulan gereksinimi büyük ölçüde ortadan kaldırır. Ancak bu avantaj aynı zamanda bir sınırlılık da doğurur. Çünkü gradyan karelerinin kümülatif toplamı zamanla sürekli artar ve bu artış sonucunda öğrenme oranı çok küçük değerlere düşebilir. Bu durum, eğitim sürecinin erken dönemlerinde hızlı bir yakınsama sağlarken, ilerleyen dönemlerde modelin öğrenme sürecini neredeyse durma noktasına getirebilir.
Adadelta
Adadelta, Adagrad algoritmasının önemli bir sınırlılığını aşmak amacıyla geliştirilmiş bir uyarlamalı optimizasyon yöntemidir. Adagrad, her parametre için ayrı bir öğrenme oranı tanımlayarak seyrek güncellemelerde büyük avantaj sağlamış olsa da, geçmiş gradyanların karelerinin kümülatif toplamını kullanması nedeniyle öğrenme oranı zamanla giderek küçülmekte ve neredeyse sıfıra yaklaşmaktadır. Bu durum, modelin ilerleyen eğitim aşamalarında yeni bilgileri öğrenme kapasitesini kaybetmesine yol açar. Adadelta, bu sorunu çözmek için tüm geçmiş gradyanları biriktirmek yerine sabit boyutlu bir hareketli pencere üzerinden gradyan bilgisini değerlendirir ve böylece öğrenme oranının tükenmesini önler.
Algoritmanın matematiksel yapısı, gradyanların karelerinin üstel hareketli ortalaması üzerine kuruludur. Bu ortalama şu şekilde ifade edilir:
Burada çürüme katsayısını temsil eder ve genellikle 0.95 civarında seçilir. Bu formülasyon, yakın geçmişteki gradyanların daha fazla ağırlık almasını sağlarken, daha eski gradyanların etkisini giderek azaltır. Bu sayede algoritma, parametre güncellemelerinde yalnızca güncel ve anlamlı bilgiyi dikkate alır.
Parametre güncellemesi ise şu şekilde yapılır:
Burada , sıfıra bölme hatasını engellemek için eklenen küçük bir sayıdır. Bu güncelleme kuralında dikkat çeken nokta, yalnızca gradyan büyüklüklerinin değil, aynı zamanda geçmiş parametre güncellemelerinin büyüklüklerinin de dikkate alınmasıdır. Böylece öğrenme süreci hem gradyanların istatistiksel özelliklerine hem de parametrelerin önceki hareketlerine göre uyarlanır.
Adadelta’nın en önemli avantajlarından biri, global bir öğrenme oranına ihtiyaç duymamasıdır. Öğrenme oranının adaptif biçimde belirlenmesi, hiperparametre ayarlarını kolaylaştırır ve algoritmayı daha pratik hale getirir. Ayrıca, Adagrad’ın aksine, uzun süreli eğitimlerde öğrenme sürecinin durma noktasına gelmesi gibi bir sorunla karşılaşılmaz. Bunun sonucunda Adadelta, parametre güncellemelerinde daha kararlı bir davranış sergiler.
Uygulamalarda Adadelta, genellikle genel amaçlı bir optimizasyon yöntemi olarak tercih edilir. Özellikle derin sinir ağlarının eğitiminde, öğrenme oranı seçimine duyarlılığın azaltılması ve uzun süreli kararlı öğrenme sağlanması açısından önemli bir avantaj sunar. Bununla birlikte, algoritmanın performansı pencere boyutunun ve çürüme katsayısının seçimine bağlıdır; bu parametrelerin yanlış ayarlanması, öğrenme sürecinin etkinliğini olumsuz etkileyebilir.
RMSProp (Root Mean Square Propagation)
RMSProp (Root Mean Square Propagation), adaptif öğrenme oranı yöntemleri arasında yer alan ve özellikle derin öğrenme modellerinin eğitiminde yaygın biçimde kullanılan bir optimizasyon algoritmasıdır. Bu yöntemin geliştirilme amacı, Adagrad’ın zamanla giderek küçülen ve neredeyse sıfıra yaklaşan öğrenme oranı sorununu çözmektir. Adagrad, parametre başına adaptif ölçeklendirme sağlayarak önemli bir ilerleme getirmiştir, ancak gradyan karelerinin kümülatif toplamını kullanması, uzun vadede öğrenme sürecini durma noktasına getirmektedir. RMSProp ise bu kümülatif toplam yerine üstel hareketli ortalama yaklaşımını benimseyerek daha dengeli ve sürekli bir öğrenme oranı sağlar.
Algoritmanın matematiksel temelinde, gradyan karelerinin üstel hareketli ortalaması bulunmaktadır. Bu süreç şu şekilde tanımlanır:
Burada , üstel çürüme katsayısını temsil etmekte olup genellikle 0.9 civarında seçilir. Bu ifade, yakın geçmişteki gradyanların daha fazla ağırlık almasını sağlarken, daha eski gradyanların etkisini giderek azaltır. Böylelikle algoritma, geçmişte biriken tüm gradyanlara eşit ağırlık vermek yerine, yalnızca yakın zamanda gözlemlenen gradyanların etkisini güçlü biçimde yansıtır.
Parametre güncellemesi şu şekilde yapılmaktadır:
Burada öğrenme oranını, ise sıfıra bölme hatalarını engellemek için kullanılan küçük bir sabiti ifade eder. Güncelleme kuralı, öğrenme oranının her parametre için yakın geçmişteki gradyanların kare ortalamasına göre ölçeklenmesini sağlar. Böylece çok büyük gradyan değerleri nedeniyle öğrenme sürecinin dengesizleşmesi engellenirken, küçük gradyanlarda ise öğrenme süreci aşırı yavaşlamaz.
RMSProp’un en dikkat çekici özelliklerinden biri, çevrimiçi öğrenme ve durağan olmayan (non-stationary) problemlerde başarılı performans göstermesidir. Üstel hareketli ortalama kullanımı sayesinde algoritma, değişen veri dağılımlarına daha hızlı uyum sağlayabilir. Ayrıca derin sinir ağlarının eğitiminde, özellikle gradyanların büyüklüğünün çok değişken olduğu katmanlarda, RMSProp hızlı ve kararlı yakınsama davranışı sergiler.
Bununla birlikte, RMSProp’un etkinliği hiperparametrelerin ayarına bağlıdır. Özellikle katsayısı, gradyanların ne ölçüde geçmiş bilgilere dayalı olarak dengeleneceğini belirlediği için kritik bir rol oynamaktadır. Yanlış seçilen bir değer, ya öğrenme sürecini aşırı dalgalı hale getirebilir ya da aşırı yavaşlatabilir.
Adam ve Varyantları
Adam (Adaptive Moment Estimation), derin öğrenme optimizasyon algoritmaları arasında en yaygın kullanılan ve en etkili yöntemlerden biri olarak kabul edilmektedir. Bu algoritma, Stochastic Gradient Descent’in verimliliğini artırmayı amaçlayan momentum tabanlı yöntemler ile Adagrad ve RMSProp gibi adaptif öğrenme oranı yöntemlerinin güçlü yönlerini bir araya getirmektedir. Adam’ın başarısının temelinde, gradyanların hem birinci momentini (ortalama) hem de ikinci momentini (karelerinin ortalaması) adaptif biçimde tahmin ederek parametre güncellemelerini daha dengeli ve hızlı hale getirmesi yatmaktadır.
Adam algoritmasının mekanizması, geçmiş gradyanların üstel hareketli ortalamalarını takip etmeye dayanır. Birinci moment tahmini, gradyanların yönünü yansıtırken; ikinci moment tahmini, gradyanların büyüklüklerine ilişkin bilgi sağlar. Bu iki bilginin birlikte kullanılması, parametre güncellemelerinin hem ivmeli hem de adaptif olmasını mümkün kılar.
Matematiksel olarak Adam şu şekilde tanımlanır:
Burada mk, birinci moment tahminini, vk ise ikinci moment tahminini göstermektedir. ve katsayıları sırasıyla birinci ve ikinci momentler için çürüme oranlarını ifade eder; genellikle , değerleri tercih edilmektedir.
Ancak başlangıç aşamalarında bu moment tahminleri sıfıra yakın değerlerden başladığı için, önyargı düzeltmesi uygulanır. Bu düzeltme şu şekilde yapılır:
Son olarak parametre güncellemesi şu formüller gerçekleştirilir:
Burada öğrenme oranını, ise sayısal kararlılığı sağlamak amacıyla eklenen küçük bir değeri temsil etmektedir.
Adam’ın en önemli avantajı, hem momentum etkisi sayesinde gradyan dalgalanmalarını azaltması hem de adaptif ölçeklendirme sayesinde parametrelerin farklı öğrenme oranları ile güncellenmesine olanak tanımasıdır. Bu iki özellik bir araya geldiğinde, algoritma geniş bir problem yelpazesinde hızlı ve kararlı yakınsama sağlayabilmektedir. Ayrıca Adam, hiperparametre seçimlerinde genellikle daha az hassastır ve çoğu durumda varsayılan parametrelerle dahi başarılı sonuçlar verebilmektedir.
Bununla birlikte Adam’ın da sınırlılıkları vardır. Özellikle bazı durumlarda, öğrenme sürecinin genel optimum yerine daha düşük kaliteli çözümlere sıkışabildiği gözlemlenmiştir. Bu nedenle Adam’ın performansını artırmak üzere Adamax ve Nadam gibi varyantlar geliştirilmiştir.
Adam algoritmasının başarısı, onu temel alarak geliştirilmiş farklı varyantların da ortaya çıkmasına zemin hazırlamıştır. Bu varyantlar, Adam’ın güçlü yönlerini korurken belirli sınırlılıklarını gidermeyi amaçlar. En çok öne çıkan varyantlar arasında Adamax ve Nadam yer almaktadır.
Adamax, Adam algoritmasının ikinci moment tahmini için normu yerine normuna dayalı bir formülasyon kullanır. Bu yaklaşım, özellikle çok büyük gradyan değerleriyle karşılaşıldığında sayısal kararlılığı artırır. Adam’da ikinci moment tahmini parametresiyle üstel hareketli ortalama olarak güncellenirken, Adamax’te bu hesaplama maksimum norm üzerinden yapılır. Matematiksel olarak Adamax’in güncelleme kuralı şu şekilde ifade edilir:
Burada , gradyanların maksimum normunu temsil eder. Bu yapı, parametre güncellemelerinin çok büyük gradyan değerlerinden etkilenmesini engelleyerek daha dengeli bir öğrenme süreci sağlar. Özellikle büyük ölçekli ve dengesiz veri kümelerinde Adamax, Adam'a kıyasla daha istikrarlı sonuçlar verebilir.
Nadam (Nesterov-accelerated Adaptive Moment Estimation), Adam algoritmasına Nesterov momentumunun öngörülü doğasını entegre eden bir başka varyanttır. Adam, momentum ve adaptif ölçeklendirmeyi birleştirerek güçlü bir güncelleme mekanizması sunarken, Nadam bu mekanizmaya Nesterov’un ileriye bakışlı (lookahead) özelliğini ekler. Böylece parametre güncellemeleri, yalnızca mevcut gradyan bilgisinden değil, aynı zamanda gelecekteki olası konumun tahmininden de etkilenir. Bu durum, özellikle optimuma yaklaşırken daha hassas ve kararlı bir yakınsama sağlar. Nadam’ın güncelleme kuralı, Adam’ın formülasyonuna eklenen öngörü terimleriyle ifade edilir ve parametrelerin gereksiz salınımlarını azaltır.
Her iki algoritma da Adam’ın temel yapısını korurken belirli açılardan farklı avantajlar sunar. Adamax, özellikle büyük gradyanların neden olduğu kararsızlıkları hafifletirken; Nadam, daha öngörülü bir güncelleme mekanizması ile optimum noktalara daha hassas yaklaşmayı mümkün kılar.
Yeni Nesil Yöntemler ve Gelişmeler
Yeni nesil optimizasyon yöntemleri, Adam, RMSProp ve momentum tabanlı algoritmaların sınırlılıklarını aşmak amacıyla geliştirilmiştir. Bu yöntemler, özellikle öğrenme oranı uyarlaması, kararlılık, genelleme kabiliyeti ve yakınsama hızı gibi temel konularda iyileştirmeler sunmaktadır. Modern derin öğrenme uygulamalarında karşılaşılan büyük ölçekli veri kümeleri ve karmaşık model yapıları, daha esnek ve güvenilir optimizasyon tekniklerine duyulan ihtiyacı artırmış, bu da AdaBound, RAdam ve Lookahead gibi algoritmaların öne çıkmasını sağlamıştır.
AdaBound, Adam algoritmasının hızlı yakınsama avantajını korurken, aynı zamanda öğrenme oranlarının belirli aralıklara sınırlandırılmasıyla daha kararlı bir öğrenme süreci sağlar. Adam’ın adaptif yapısı bazı durumlarda parametre güncellemelerinin aşırı küçük ya da aşırı büyük olmasına yol açabilmektedir. AdaBound, bu sorunu çözmek için adaptif öğrenme oranlarını alt ve üst sınırlarla kısıtlar. Eğitim süreci ilerledikçe bu sınırlar daralır ve öğrenme oranları klasik Stochastic Gradient Descent’in davranışına yaklaşır. Böylece algoritma, hem hızlı başlangıç hem de daha güçlü genelleme kabiliyeti sunar.
RAdam (Rectified Adam), Adam’ın rastlantısal doğasından kaynaklanan öğrenme oranı dengesizliklerini gidermeyi hedefler. Adam algoritmasında öğrenme oranı ayarlamaları özellikle erken iterasyonlarda güvenilir olmayan sonuçlara yol açabilir. RAdam, öğrenme oranını düzelten (rectification) bir mekanizma kullanarak bu sorunu aşar. Bu sayede model, eğitim sürecinin başlangıcında aşırı dengesiz güncellemelerden kaçınır ve daha kararlı bir yakınsama süreci izler. RAdam’ın en önemli katkısı, öğrenme oranı uyarlamasının güvenilir hale getirilmesidir; bu da özellikle derin ve karmaşık ağlarda daha istikrarlı bir performans sağlar.
Lookahead algoritması ise farklı bir yaklaşım benimseyerek optimizasyon sürecini hızlandırmayı ve daha güvenilir hale getirmeyi amaçlar. Bu yöntemde iki farklı parametre kümesi tutulur: hızlı güncellemeler yapan bir “fast weights” kümesi ve bu güncellemeleri daha seyrek ve dengeli biçimde izleyen bir “slow weights” kümesi. Fast weights, seçilen temel optimizasyon algoritmasına göre güncellenirken, belirli adımların ardından slow weights, fast weights’in ortalamasına doğru güncellenir. Bu yapı, öğrenme sürecine hem keşif hem de istikrar kazandırır. Lookahead, çoğu zaman Adam ya da RMSProp gibi optimizatörlerle birlikte kullanılır ve bu optimizatörlerin genelleme kabiliyetini artırır.
Bu yeni nesil yöntemler, yalnızca yakınsama hızını artırmakla kalmaz, aynı zamanda derin öğrenme modellerinde daha iyi genelleme performansı elde edilmesine de katkı sağlar. AdaBound, adaptif yöntemlerin genelleme eksikliğine çözüm getirirken; RAdam, erken dönem dengesizliklerini giderir; Lookahead ise mevcut yöntemlere yapısal bir iyileştirme katarak daha güvenilir sonuçlar üretir.

