scikit-learn ile Supervised Learning
George Boorman
Core Curriculum Manager
Ridge/lasso regresyonu: alpha seçimi
KNN: n_neighbors seçimi
Hiperparametreler: Modeli eğitmeden önce belirlediğimiz parametreler
alpha ve n_neighborsBirçok farklı hiperparametre değeri deneyin
Hepsini ayrı ayrı eğitin
Performanslarını karşılaştırın
En iyilerini seçin
Buna hiperparametre ayarlama denir
Test kümesine aşırı uyumu önlemek için çapraz doğrulama şarttır
Veriyi bölebilir ve çapraz doğrulamayı eğitim kümesi üzerinde yapabiliriz
Test kümesini son değerlendirme için saklarız



from sklearn.model_selection import GridSearchCVkf = KFold(n_splits=5, shuffle=True, random_state=42)param_grid = {"alpha": np.arange(0.0001, 1, 10), "solver": ["sag", "lsqr"]}ridge = Ridge()ridge_cv = GridSearchCV(ridge, param_grid, cv=kf)ridge_cv.fit(X_train, y_train)print(ridge_cv.best_params_, ridge_cv.best_score_)
{'alpha': 0.0001, 'solver': 'sag'}
0.7529912278705785
from sklearn.model_selection import RandomizedSearchCVkf = KFold(n_splits=5, shuffle=True, random_state=42) param_grid = {'alpha': np.arange(0.0001, 1, 10), "solver": ['sag', 'lsqr']} ridge = Ridge()ridge_cv = RandomizedSearchCV(ridge, param_grid, cv=kf, n_iter=2) ridge_cv.fit(X_train, y_train)print(ridge_cv.best_params_, ridge_cv.best_score_)
{'solver': 'sag', 'alpha': 0.0001}
0.7529912278705785
test_score = ridge_cv.score(X_test, y_test)print(test_score)
0.7564731534089224
scikit-learn ile Supervised Learning