Evolutionary Algorithms
Evrimsel algoritmaların yapay zekâ problemlerini çözmek için doğal seçilimi nasıl kullandığını keşfet. Ultralytics YOLO26 hiperparametrelerini optimize etmeyi ve model performansını artırmayı öğren.
Evrimsel Algoritmalar (EA'lar), karmaşık hesaplama problemlerini çözmek için doğal seçilim ve genetiğin biyolojik ilkelerini taklit eden güçlü bir optimizasyon algoritmaları ailesidir. Türev tabanlı kalkülüse dayanan stokastik gradyan inişi (SGD) gibi geleneksel matematiksel tekniklerin aksine, EA'lar geniş, engebeli veya yeterince anlaşılamamış arama uzaylarında yol alacak şekilde tasarlanmıştır. Zaman içinde rekabet eden, çoğalan ve mutasyona uğrayan potansiyel çözümlerden oluşan bir popülasyonu koruyarak çalışırlar. Bu yaklaşım, "en iyi" çözümün analitik olarak belirlenmesinin zor olduğu yapay zekâ (AI) görevlerinde onları özellikle etkili kılar ve sistemlerin yinelemeli olarak en iyi sonuca doğru evrilmesini sağlar.
Biyolojik İlham ve Temel Mekanizmalar#
Bir Evrimsel Algoritmanın işlevi en uygun olanın hayatta kalması kavramına dayanır. Süreç, doğal genetik evrimi taklit etmek üzere tasarlanmış operatörlerden oluşan bir döngüyle ilerleyerek aday çözümleri kademeli olarak iyileştirir:
-
Başlatma: Sistem, rastgele adaylardan oluşan bir başlangıç popülasyonu oluşturur. Makine öğrenmesi (ML) bağlamında bu adaylar, farklı model parametre kümelerini temsil edebilir.
-
Uygunluk Değerlendirmesi: Her aday, uygunluk fonksiyonu olarak bilinen belirli bir hedefe göre test edilir. Bir bilgisayarlı görü (CV) modeli için bu fonksiyon genellikle doğruluk veya Ortalama Kesinlik (mAP) gibi metrikleri değerlendirir.
-
Seçim: Uygunluk puanları daha yüksek olan adaylar, ebeveyn olarak görev yapmak üzere olasılıksal olarak seçilir ve başarılı özelliklerin bir sonraki nesil için korunması sağlanır.
-
Üreme ve Çeşitlilik: Yeni çözümler çaprazlama (iki ebeveynden gelen özelliklerin yeniden birleştirilmesi) ve mutasyon (rastgele değişikliklerin eklenmesi) yoluyla oluşturulur. Genetik çeşitliliğin bu şekilde ortaya çıkarılması kritik önem taşır; çünkü algoritmanın yerel bir optimumda duraklamasını önleyerek arama uzayını küresel maksimum için keşfetmesine yardımcı olur.
Yapay Zekâda Gerçek Dünya Uygulamaları#
Evrimsel Algoritmalar çok yönlüdür ve derin öğrenme (DL) ile mühendislik içindeki çeşitli alanlarda başarıyla uygulanmıştır.
Hiperparametre Ayarının Otomatikleştirilmesi#
EA'ların en pratik uygulamalarından biri hiperparametre ayarıdır. Modern sinir ağları; öğrenme oranı, ağırlık çürümesi ve momentum gibi performansı önemli ölçüde etkileyen düzinelerce parametrenin yapılandırılmasını gerektirir. EA'lar, yapılandırma ayarlarını evrimleştirerek bu zahmetli deneme-yanılma sürecini otomatikleştirebilir. Örneğin, Ultralytics kitaplığındaki tune() yöntemi, özel veri kümelerinde YOLO26 modelleri için en iyi eğitim hiperparametrelerini keşfetmek üzere genetik algoritma kullanır.
Sinir Ağı Mimarisi Araması (NAS)#
EA'lar, Sinir Ağı Mimarisi Aramasının (NAS) temel unsurlarındandır. Bir sinir ağının (NN) yapısını insan mühendislerin elle tasarlaması yerine, bir evrimsel algoritma mimariyi "büyütebilir". Katmanların, nöronların ve bağlantıların farklı birleşimlerini test ederek hız ile doğruluk arasında denge kuran verimli yapıları evrimleştirir. Bu teknik, belirli donanım kısıtları için optimize edilmiş EfficientNet gibi son derece verimli omurgaların oluşturulmasını sağlamıştır.
Evrimsel Algoritmalar ve Sürü Zekâsı#
Her ikisi de doğadan ilham alan optimizasyon stratejileri olsa da EA'ları Sürü Zekâsından (SI) ayırt etmek yararlıdır.
- Evrimsel Algoritmalar: Nesilsel değişime dayanır. Bireyler (çözümler) yaşar, uygunluklarına göre ürer ve ölür; yerlerini kendi yavruları alır. Temel itici güçler mutasyon ve çaprazlama gibi genetik operatörlerdir.
- Sürü Zekâsı: Bir kuş sürüsü veya balık sürüsü gibi bir grup içindeki sosyal etkileşimi taklit eder. Parçacık Sürü Optimizasyonu (PSO) gibi algoritmalar, arama uzayında hareket eden ve nesiller arası yenilenme olmaksızın konumlarını kendi deneyimlerine ve komşularının başarısına göre ayarlayan bir etmen popülasyonunu içerir.
Ultralytics ile Optimizasyon Uygulama#
Uygulayıcılar, nesne algılama modellerini doğrudan optimize etmek için genetik algoritmalardan yararlanabilir. Ultralytics tune yöntemi, hiperparametreleri birkaç nesil boyunca mutasyona uğratmak üzere evrimsel bir süreç yürütür ve doğrulama verilerinde en yüksek performansı sağlayan ayarları otomatik olarak belirler.
from ultralytics import YOLO
# Load the standard YOLO26 model
model = YOLO("yolo26n.pt")
# Run hyperparameter tuning using a genetic algorithm approach
# The tuner evolves parameters (lr, momentum, etc.) over 30 generations
model.tune(data="coco8.yaml", epochs=10, iterations=30, plots=False)Bu otomatik iyileştirme, geliştiricilerin elle tahmin yürütmenin ötesine geçmesini sağlar. Operasyonlarını ölçeklendiren ekipler için bu deneyleri yönetmek ve model performansının evrimini izlemek, eğitim metriklerini görselleştiren ve model dağıtımını kolaylaştıran Ultralytics Platformu kullanılarak daha verimli hâle getirilebilir.









