0Pricing
Learn AI with Python · Ders

Izgara Araması ve Rastgele Arama

GridSearchCV, RandomizedSearchCV, param_grid tasarımı ve en iyi parametrelerle yeniden model eğitme.

Izgara Araması ve Rastgele Arama, CoddyKit'te ücretsiz bir Learn AI with Python dersidir. Bu, 4 dersinin 3. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, Learn AI with Python öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. Learn AI with Python kursu toplamda 4 dersten oluşur.

Hiperparametreleri Neden Ayarlamalısınız

Modellerde, verilerden öğrenilmeyen ancak eğitimden önce belirlenen hiperparametreler (örneğin max_depth veya C) bulunur. Doğru değerler performansı büyük ölçüde artırabilir; bu nedenle bunları sistematik olarak ararız.

Elle Ayarlama Hatalara Açıktır

Değerleri elle denemek yavaştır ve kolayca yanlılığa yol açar. Çapraz doğrulamayla birleştirilen otomatik arama, her adayı adil biçimde değerlendirir ve en iyi kombinasyonu yeniden üretilebilir şekilde bulur.

GridSearchCV Temelleri

GridSearchCV, bir parametre ızgarasındaki her kombinasyonu dener ve her birini çapraz doğrulamayla puanlar. Tüm seçenekleri deneyerek ızgaradaki en iyi noktayı garanti eder.

from sklearn.model_selection import GridSearchCV
from sklearn.ensemble import RandomForestClassifier

param_grid = {
    "n_estimators": [100, 200, 300],
    "max_depth": [4, 8, None],
}
gs = GridSearchCV(RandomForestClassifier(), param_grid, cv=5)
gs.fit(X, y)

Kombinatoryal Patlama

Izgara aramasının maliyeti, tüm seçenek sayılarının çarpımının kat sayısıyla birlikte büyür. Beşer değer içeren 3 parametre ve 5 katlı CV için 5*5*5*5 = 625 model uydurma işlemi gerekir. Izgaralar hızla pahalı hale gelir.

GridSearchCV ile Puanlama

scoring parametresi optimize edilecek metriği seçer. Dengesiz verilerde varsayılan doğruluk yerine f1 veya roc_auc seçin.

from sklearn.model_selection import GridSearchCV

gs = GridSearchCV(
    RandomForestClassifier(),
    param_grid,
    cv=5,
    scoring="roc_auc",
)
gs.fit(X, y)

n_jobs ile Paralel Çalıştırma

Her adayın model uydurma işlemi bağımsızdır; bu nedenle bunları tüm CPU çekirdeklerinde çalıştırmak için n_jobs=-1 ayarlayın. Bu, büyük ızgaralarda gerçek çalışma süresini büyük ölçüde kısaltır.

from sklearn.model_selection import GridSearchCV

gs = GridSearchCV(
    RandomForestClassifier(),
    param_grid,
    cv=5,
    n_jobs=-1,
    verbose=1,
)

En İyi Sonuçları Okuma

Modeli eğittikten sonra kazanan kombinasyon için best_params_, CV puanı için best_score_ ve tahmin yapmaya hazır yeniden eğitilmiş model için best_estimator_ değerlerini inceleyin.

gs.fit(X, y)
print("Best params:", gs.best_params_)
print("Best CV score:", gs.best_score_)
best_model = gs.best_estimator_
best_model.predict(X_new)

Tüm Sonuçları İnceleme

cv_results_, her adayın puanını ve sıralamasını gösteren bir sözlüktür (DataFrame için oldukça uygundur). Hangi parametrelerin önemli olduğunu ve puanların ne kadar kararlı olduğunu anlamak için kullanın.

import pandas as pd

results = pd.DataFrame(gs.cv_results_)
print(results[["params", "mean_test_score", "rank_test_score"]].head())

RandomizedSearchCV

Arama alanı çok büyük olduğunda RandomizedSearchCV, tüm kombinasyonlar yerine sabit sayıda rastgele kombinasyon örnekler. Bütçeyi n_iter ile belirlersiniz.

from sklearn.model_selection import RandomizedSearchCV
from scipy.stats import randint

param_dist = {
    "n_estimators": randint(100, 500),
    "max_depth": randint(3, 20),
}
rs = RandomizedSearchCV(
    RandomForestClassifier(), param_dist,
    n_iter=30, cv=5, random_state=0,
)
rs.fit(X, y)

Rastgele Arama Neden Sıklıkla Kazanır

Birçok problemde gerçekten önemli olan yalnızca birkaç hiperparametre vardır. Rastgele arama, bu önemli boyutları katı bir ızgaradan daha verimli biçimde tarar ve çok daha az denemeyle iyi çözümler bulur.

Izgara ve Rastgele Arama: Öneriler

Adayların küçük ve ayrık bir kümesi için GridSearchCV kullanın. n_iter bütçesini sizin belirlediğiniz büyük veya sürekli arama alanları için RandomizedSearchCV kullanın. refit=True olduğunda her ikisi de en iyi modeli otomatik olarak yeniden eğitir.

Kısa Sınama

Hiperparametre arama bilginizi sınayın.

Özet

Özet: GridSearchCV, bir param_grid içindeki her kombinasyonu kapsamlı biçimde sınar; boyut büyüdükçe maliyet hızla artar. RandomizedSearchCV, büyük arama alanları için n_iter sayısında kombinasyon örnekler. Metriğinizi belirlemek için scoring, hız için n_jobs=-1 ayarlayın ve modeli eğittikten sonra best_params_, best_score_ ile best_estimator_ değerlerini okuyun.

Sıkça Sorulan Sorular

“Izgara Araması ve Rastgele Arama” dersi ücretsiz mi?

Evet — “Izgara Araması ve Rastgele Arama” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve Learn AI with Python kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. Learn AI with Python kursu toplamda 4 dersten oluşur.

“Izgara Araması ve Rastgele Arama” dersinde ne öğreneceğim?

GridSearchCV, RandomizedSearchCV, param_grid tasarımı ve en iyi parametrelerle yeniden model eğitme. Learn AI with Python ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.

Learn AI with Python öğrenmeye başlamak için deneyim gerekli mi?

Önceden deneyim gerekmez. CoddyKit'te Learn AI with Python, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 4 dersinin 3. dersidir.

“Izgara Araması ve Rastgele Arama” dersi ne kadar sürer?

Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.

Bu Learn AI with Python dersinde kod yazıp çalıştırabilir miyim?

Evet. Her Learn AI with Python dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.

Bu kursun tüm dersleri

  1. Çapraz Doğrulama Stratejileri
  2. Sınıflandırma Ölçütlerine Derinlemesine Bakış
  3. Izgara Araması ve Rastgele Arama
  4. Optuna ile Bayesçi Optimizasyon
← Learn AI with Python Sayfasına Dön