Ultralytics YOLO27: Bekleme listesine katıl.
YOLO'yu lisansla
Ultralytics Sözlüğüne dön

Weight Decay

Ağırlık azaltma, model ağırlıklarını sıfıra doğru küçülten bir düzenlileştirme tekniğidir; sinir ağlarının aşırı öğrenmeyi azaltmasına ve yeni verilere genelleme yapmasına yardımcı olur.

Ağırlık azaltma, eğitim sırasında modelin öğrenilmiş ağırlıklarını sıfıra doğru çeken bir düzenlileştirme tekniğidir. Bu tekrarlanan küçültme, gereksiz yere büyük parametre değerlerini önler ve bir sinir ağının görülmemiş örneklere genelleme yapmasına yardımcı olur. Modelin eğitim verilerindeki gürültüyü ezberleyecek kadar kapasitesi olduğunda özellikle yararlıdır.

Geoffrey Hinton, ağırlık azaltmayı 1986 tarihli Kavramların Dağıtılmış Temsillerini Öğrenme makalesinde tanıttı. Aile ağacı deneyinde, öğrenilen bağlantıların yorumlanmasını kolaylaştırmak için her güncellemeden sonra ağırlık büyüklüklerini %0,2 azalttı. Ağırlık azaltma daha sonra aşırı öğrenmeyi kontrol etmek için yaygın biçimde kullanılmaya başlandı.

Ağırlık Azaltma Nasıl Çalışır#

Gradyan inişi sırasında optimize edici, her parametrenin kayıp fonksiyonunu nasıl etkilediğini açıklayan türevleri, yani gradyanları kullanarak parametreleri değiştirir. Ağırlık azaltma, sıfıra doğru bir çekim kuvveti ekler. Pek çok optimize edicide kullanılan öğrenme oranıyla ölçeklenmiş yaklaşıma göre, momentum içermeyen yalın bir SGD güncellemesi şöyledir: new weight = (1 - learning rate × decay) × old weight - learning rate × gradient. Bu işlem, tahmin hatalarından öğrenmeyi orantılı küçültmeyle birleştirir.

Azaltma katsayısı, bu çekim kuvvetinin gücünü belirler. Sıfır bu kuvveti devre dışı bırakır; daha büyük pozitif değerler, sabit bir öğrenme oranında küçültmeyi artırır. Tahminleri iyileştirdiğinde görev gradyanı yine de bir ağırlığı artırabilir. Öğrenme oranı azaltma, optimize edicinin adım boyutunu giderek küçültür; ağırlık azaltma ise parametre değerlerini etkiler.

Ağırlık Azaltma ve L2 Düzenlileştirmesi#

L2 düzenlileştirmesi, eğitim amaç fonksiyonuna karelenmiş ağırlıkların ölçeklenmiş toplamını ekler. Yalın stokastik gradyan inişi kullanıldığında, bu cezanın türevi uygun katsayılar eşleştirildiğinde aynı orantılı küçültmeyi sağlar. Doğrusal regresyonda, bu kareli ağırlık cezasıyla yapılan uyarlamaya ridge regresyonu denir.

Adam optimize edici ile L2 cezası eklemek, ceza gradyanını Adam'ın hareketli ortalamalarından ve parametreye özgü ölçeklendirmesinden geçirir. AdamW ise küçültmeyi bu uyarlamalı gradyan hesabından ayrı uygular. Ilya Loshchilov ve Frank Hutter, AdamW'yi 2017 tarihli Ayrıştırılmış Ağırlık Azaltma Düzenlileştirmesi makalelerinde tanıttı; makale ICLR 2019'da yayımlandı. Bu ayrım, azaltma gücünü Adam'ın gradyan geçmişi ölçeklendirmesinden bağımsız kılar.

Azaltma Gücünü Seçme#

Ağırlık azaltma, doğrulama verileri kullanılarak seçilen bir hiperparametredir. Çok düşük olması aşırı öğrenmeyi yeterince sınırlamaz. Aşırı azaltma ise yetersiz öğrenmeye yol açar: model yararlı örüntüleri öğrenemez ve eğitim ile doğrulama örneklerinde yüksek hatalar verir. Farklı azaltma ayarlarının doğrulama puanlarını karşılaştırmak, belirli bir model ve veri kümesi için uygun gücü ortaya çıkarır.

Biriken etki, öğrenme oranı çizelgesine ve optimize edici güncellemelerinin sayısına da bağlıdır. Yığın boyutunu veya eğitim dönemlerinin sayısını değiştirmek, azaltmanın uygulanma sayısını değiştirebilir; gradyan biriktirme, bir güncellemeden önce birden fazla yığını birleştirir. Dropout katmanı, aktivasyonları rastgele sıfırlayarak düzenlileştirme yaparken erken durdurma eğitim süresini sınırlar.

Ultralytics YOLO, YOLO26 gibi modelleri eğitirken düzenlileştirmeyi kontrol etmek için varsayılan değeri 0.0005 olan bir weight_decay eğitim ayarını kullanıma sunar. Optimize edici parametre grupları, bias'ları ve normalleştirme katmanı parametrelerini ağırlık azaltmanın dışında tutar.

PyTorch'ta Ağırlık Azaltma#

torch.optim.AdamW optimize edicisi, PyTorch içinde ayrıştırılmış ağırlık azaltma sağlar. Paketi pip install torch ile yükle; bu örnek, yazdırılan güncellemenin yalnızca ağırlık azaltma etkisini göstermesi için sıfır görev gradyanı oluşturur:

import torch

weight = torch.nn.Parameter(torch.tensor([2.0]))
optimizer = torch.optim.AdamW([weight], lr=0.1, weight_decay=0.1)
before = weight.item()

# Create a zero gradient while keeping the parameter in the computation.
optimizer.zero_grad()
loss = (weight * 0).sum()
loss.backward()
optimizer.step()

print(f"Weight: {before:.2f} -> {weight.item():.2f}")

Çıktı Weight: 2.00 -> 1.98 olur: tek bir güncelleme, ağırlığı 1 - 0.1 × 0.1 ile, yani 0.99 ile çarpar ve büyüklüğünü %1 azaltır.

Çözümleri keşfet

Sporda bilgisayarlı görü

Sporda bilgisayarlı görü

Ultralytics YOLO'nun oyuncu ve top takibi, performans analitiği, antrenörlük içgörüleri ve sporcu rehabilitasyonuyla spor alanında görsel yapay zekâyı nasıl güçlendirdiğini keşfet.
Daha fazla bilgi edin
Hava görüntüleri için bilgisayarlı görü

Hava görüntüleri için bilgisayarlı görü

İHA ve hava görüntülerini Ultralytics YOLO ile tarım, su ürünleri yetiştiriciliği, koruma çalışmaları ve jeo-uzamsal analiz için gerçek zamanlı içgörülere dönüştür.
Daha fazla bilgi edin
Havacılıkta bilgisayarlı görü

Havacılıkta bilgisayarlı görü

Uçak denetimi, pistteki yabancı madde tespiti, havaalanı yer operasyonları ve kompozit malzeme kusurlarının tespiti için Ultralytics YOLO ile havacılık ve uzay sektöründe bilgisayarlı görü uygula.
Daha fazla bilgi edin
Güvenlikte bilgisayarlı görü

Güvenlikte bilgisayarlı görü

Ultralytics YOLO modelleriyle her sahayı koru. Görsel yapay zekâ; çevre izleme, tehdit tespiti, plaka tanıma ve iş yeri güvenliğini destekler.
Daha fazla bilgi edin
Robotikte bilgisayarlı görü

Robotikte bilgisayarlı görü

Ultralytics YOLO modelleriyle daha akıllı makinelere güç ver. Robotikte görsel yapay zekâ; otonom navigasyonu, algılamayı, nesne takibini ve gerçek zamanlı kontrolü destekler.
Daha fazla bilgi edin
Lojistikte bilgisayarlı görü

Lojistikte bilgisayarlı görü

Ultralytics YOLO modelleriyle lojistiği kolaylaştır. Görüntü yapay zekâsı; paket denetimini, ayrıştırmayı, araç takibini ve gerçek zamanlı depo güvenliği izlemeyi mümkün kılar.
Daha fazla bilgi edin
Perakendede bilgisayarlı görü

Perakendede bilgisayarlı görü

Ultralytics YOLO modelleriyle perakendeyi yeniden tasarla. Görüntü yapay zekâsı; envanter takibini, raf izlemeyi, kuyruk yönetimini ve daha kapsamlı müşteri analizlerini mümkün kılar.
Daha fazla bilgi edin
Sağlık hizmetlerinde bilgisayarlı görü

Sağlık hizmetlerinde bilgisayarlı görü

Ultralytics YOLO modelleriyle sağlık çözümleri geliştir. Sağlık hizmetlerinde görüntü yapay zekâsı; daha hızlı tıbbi görüntüleme, daha akıllı tanı ve hasta takibini mümkün kılar.
Daha fazla bilgi edin
Üretimde bilgisayarlı görü

Üretimde bilgisayarlı görü

Ultralytics YOLO modelleriyle üretimi optimize et. Görsel yapay zekâ; kalite kontrolünü, kusur tespitini, kişisel koruyucu donanım uyumunu ve montaj hattı otomasyonunu destekler.
Daha fazla bilgi edin
Otomotivde bilgisayarlı görü

Otomotivde bilgisayarlı görü

Ultralytics YOLO modelleriyle otomotivde bilgisayarlı görüden yararlan. Görsel yapay zekâ; daha akıllı yollar için yol güvenliğini, sürüş desteğini ve araç otomasyonunu ileri taşır.
Daha fazla bilgi edin
Tarımda bilgisayarlı görü

Tarımda bilgisayarlı görü

Ultralytics YOLO modelleriyle akıllı tarıma görüntü yapay zekâsı kazandır. Daha yüksek ve akıllı verim için mahsul izleme, hayvan takibi ve hassas tarımı destekle.
Daha fazla bilgi edin

Geleceğin yapay zekasını birlikte inşa edelim!

Makine öğreniminin geleceğine yolculuğuna başla