Gradient Descent'in Ultralytics YOLO gibi yapay zeka modellerini nasıl optimize ettiğini ve sağlık hizmetlerinden sürücüsüz arabalara kadar çeşitli görevlerde doğru tahminler yapılmasını sağladığını keşfedin.
Gradyan İnişi, bir fonksiyonu en küçüklemek için kullanılan temel bir iteratif algoritmadır. en dik iniş. Bu bağlamda makine öğrenimi (ML) ve derin öğrenme (DL), yol gösterici olarak hareket eder modelleri doğru tahminler yapmaları için eğiten bir mekanizmadır. Öncelikli amaç, en uygun kümeyi bulmaktır. minimize eden model ağırlıkları farkı temsil eden kayıp fonksiyonu Modelin tahminleri ile gerçek hedef değerler arasındaki fark. Bu süreci bir doğa yürüyüşçüsünün Yoğun siste bir vadinin dibini bulmak; aşağıya doğru en dik eğim yönünde tekrar tekrar adımlar atarak, yürüyüşçü sonunda en alçak noktaya ulaşır. Bu temel konsept daha sonra Google Machine Learning Crash Course.
Gradyan İnişinin temel mekaniği, kaybın kısmi türevlerinin bir vektörü olan gradyanın hesaplanmasını içerir fonksiyonunu her bir parametreye göre hesaplar. Bu hesaplama verimli bir şekilde geri yayılım algoritması. Gradyan bir kez belirlendiğinde, model gradyanın ters yönünde bir adım atarak parametrelerini günceller. Boyutları olarak bilinen çok önemli bir parametre tarafından kontrol edilir. öğrenme oranı. Öğrenme oranı çok yüksekse algoritması minimum değeri aşabilir; çok düşükse, eğitim aşırı uzun sürebilir. Bu döngü veri kümesi boyunca epok adı verilen birçok geçişte tekrar eder, kayıp dengelenene kadar. Matematiksel bir bakış açısı için, Khan Academy gradyan inişi hakkında bir ders sunuyor Bu da işin içindeki hesapları bozuyor.
Hesaplama verimliliği ve yakınsama hızını dengelemek için algoritmanın farklı varyasyonları mevcuttur:
İşte bir optimize edicinin eğitim için nasıl yapılandırılacağına dair kısa bir örnek Ultralytics YOLO11 Model:
from ultralytics import YOLO
# Load the YOLO11 model
model = YOLO("yolo11n.pt")
# Train the model using the SGD optimizer with a specific learning rate
# The 'optimizer' argument allows you to select the gradient descent variant
results = model.train(data="coco8.yaml", epochs=50, optimizer="SGD", lr0=0.01)
Gradient Descent, birçok dönüştürücü teknolojinin arkasındaki motordur. Sağlık ve endüstriyel uygulamalarda yapay zeka.
Gradient Descent'i tam olarak anlamak için ilgili terimlerden ayırt edilmesi gerekir. Bir yandan Geri yayılım gradyanları hesaplar ("yönü" belirler), Gradyan İnişi ise ve optimizasyon algoritması o aslında parametreleri günceller ("adım" atarak). Ek olarak, standart Gradyan İnişi tipik olarak gibi uyarlanabilir algoritmalar sabit bir öğrenme oranı kullanır. Adam iyileştirici öğrenmeyi ayarlayın oranını her parametre için dinamik olarak ayarlayarak, genellikle orijinalinde açıklandığı gibi daha hızlı yakınsamaya yol açar. Adam araştırma makalesi. Bu gibi zorluklar kaybolan gradyan problemi standart Çok derin ağlarda Gradient Descent, aşağıdaki gibi mimari çözümler gerektirir Toplu Normalizasyon veya artık bağlantılar. Bu optimizasyon zorluklarına ilişkin kapsamlı genel bakışlar şu adreste bulunabilir Sebastian Ruder'in blogu.
