Python'da Hiperparametre Ayarlama
Alex Scriven
Data Scientist
Gerçek dünyadaki genetik evrimde süreç şöyledir:
Aynı fikri hiperparametre ayarlamada uygulayabiliriz:
Bu, şu avantajları olan bilgili bir aramadır:
Genetik hiperparametre ayarı için yararlı bir kütüphane: TPOT
TPOT’u Veri Bilimi Asistanınız olarak düşünün. TPOT, genetik programlama ile makine öğrenimi pipeline’larını optimize eden bir Python Otomatik ML aracıdır.
Pipeline’lar yalnızca modeli (veya birden çok modeli) değil, özellikleri ve sürecin diğer yönlerini de kapsar. Üstelik pipeline’ın Python kodunu da döndürür!
Bir TPOT sınıflandırıcısının temel argümanları:
generations: Eğitimin kaç yineleme süreceği.population_size: Her yinelemeden sonra tutulacak model sayısı.offspring_size: Her yinelemede üretilecek model sayısı.mutation_rate: Rastgelelik uygulanacak pipeline oranı.crossover_rate: Her yinelemede eşleştirilecek pipeline oranı.scoring: En iyi modelleri belirleyen fonksiyon.cv: Kullanılacak çapraz doğrulama stratejisi.Basit bir örnek:
from tpot import TPOTClassifier tpot = TPOTClassifier(generations=3, population_size=5, verbosity=2, offspring_size=10, scoring='accuracy', cv=5)tpot.fit(X_train, y_train) print(tpot.score(X_test, y_test))
mutation_rate ve crossover_rate için varsayılanları koruyacağız; genetik programlama hakkında derin bilgi olmadan en iyisi budur.
Dikkat: Algoritmaya özgü hiperparametre yok mu?
Python'da Hiperparametre Ayarlama