Grid Search
البحث الشبكي
التعريف
تجربة كل التركيبات الممكنة من قيم محددة للمعاملات الفائقة واختيار الأفضل بالتحقق المتقاطع.
تُعرَّف شبكة من القيم لكل معامل ويُدرَّب نموذج لكل تركيبة. بسيط وشامل لكنه مكلف جداً مع كثرة المعاملات، لذلك يُفضَّل البحث العشوائي أو البايزي.
Definition
Grid search exhaustively evaluates every combination of specified hyperparameter values, typically with cross-validation, and selects the best.
شرح مبسّط للمبتدئين
كتجربة كل مزيج من درجات حرارة الفرن وأزمنة الخبز لمعرفة الأفضل.
شرح أكاديمي متخصص
تتضاعف الكلفة أسياً مع عدد المعاملات (لعنة الأبعاد).
أمثلة عملية
- تجربة C وgamma في SVM.
from sklearn.datasets import load_iris
from sklearn.model_selection import GridSearchCV
from sklearn.neighbors import KNeighborsClassifier
X, y = load_iris(return_X_y=True)
gs = GridSearchCV(KNeighborsClassifier(), {'n_neighbors': [1, 3, 5]}, cv=5).fit(X, y)
print(gs.best_params_)شرح الكود
يجرّب ثلاث قيم لعدد الجيران ويختار الأفضل.
النتيجة المتوقعة
{'n_neighbors': 5}التطبيقات والاستخدامات
- ضبط النماذج الصغيرة.
المزايا
- شامل وبسيط.
القيود والعيوب
- مكلف.
