Podstawy
Losowe wyszukiwanie dla szerokich przestrzeni; Hyperband/ASHA dla efektywności bugetu; BO dla drogich ocen.
from sklearn.model_selection import GridSearchCV
GridSearchCV(model, {"C": [0.01, 0.1, 1, 10]}, cv=5).fit(X_train, y_train)
Jak działa algorytm
Algorytm Grid Searchu polega na wybraniu określonej sieci punktów w przestrzeni hiperparametrów i sprawdzeniu wszystkich możliwych kombinacji tych hiperparametrów. Każdy zestaw hiperparametrów jest zastosowany do uczenia modelu, a następnie ocenianej jakość modelu na podstawie metryki wybranej przez użytkownika. Następnie algorytm wybiera najlepszą kombinację hiperparametrów na podstawie tych wyników.
from sklearn.model_selection import GridSearchCV
from sklearn.svm import SVC
GridSearchCV(SVC(), {"C":[0.1,1,10], "gamma":[1e-3,1e-4]}, cv=5)
Zastosowania w Praktyce
Budżety opóźnień, ograniczenia sprawiedliwości i wymagania dotyczące wyjaśnialności często ograniczają zakres siatki.
Najlepsze Praktyki
Evaluacja
Używaj przedziałów ufności i median po powtórzeniach; unikaj wybierania tylko najlepszego zapisu.
Przykłady Praktyczne
GridSearchCV(SVC(), {"C":[0.01,0.1,1,10], "gamma":[1e-4,1e-3]}, cv=5)
Zaimplementowanie
from sklearn.model_selection import GridSearchCV
from sklearn.pipeline import Pipeline
from sklearn.preprocessing import StandardScaler
from sklearn.svm import SVC
pipe = Pipeline([("scaler", StandardScaler()), ("clf", SVC())])
params = {"clf__C": [0.1,1,10], "clf__gamma": [1e-3,1e-4]}
GridSearchCV(pipe, params, cv=5, n_jobs=-1).fit(X_train, y_train)
Matematyka Porzađająca
Gridy jednorodne prowadzą do ograniczonych najgorszych różnic w każdym wymiarze; gridy logarytmicznie przestrzenne lepiej pasują do mnożystych czułości.
Wymagane punkty rosną eksponencjalnie z liczbą wymiarów; metody losowe lub adaptacyjne dominują w przypadku wysokiej liczby wymiarów.
Sekwencje Latin hypercube i Sobol oferują lepsze właściwości wypełnienia przestrzeni niż proste gridy.
Kluczowe parametry
Strategia treningowa
Często zadawane pytania
Czy wyszukiwanie siatkowe jest przestarzałe?
Nie—używaj strategicznie dla małych obszarów.
Ile punktów na wymiar?
Zazwyczaj wystarcza 3–5 wartości.
Jak zmniejszyć koszt?
Ogranicz siatki; użyj ciepłych startów; zatrzymaj się wczesno.
Jak paraliżować?
Użyj n_jobs lub rozproszonej infrastruktury.
Jak zgłosić wyniki?
Podaj pełną siatkę i najlepsze parametry.
Czym są interakcje?
Trzymaj siatki małymi i sprawdzaj efekty.
Kiedy przełączyć się?
Po zidentyfikowaniu czułych obszarów.
▶ Wypróbuj na żywo
Wszystko powyżej działa bezpośrednio w Twojej przeglądarce — otwórz Grid Search Explained: Exhaustive Hyperparameter Tuning i zmieniaj parametry podczas działania. Nic nie jest instalowane ani przesyłane na serwer, cały model działa w jednej karcie.