sklearnグリッドナビゲーション基本コード
7589 ワード
# 1. 그리드 서치
from sklearn.model_selection import GridSearchCV
rf = RandomForestRegressor(random_state=1217)
# 탐색할 하이퍼파라미터 값 지정
params = {'n_estimators' : [200, 300, 500],
'max_features': [5, 6, 8],
'min_samples_leaf' : [1, 3, 5]}
# GridSearchCV를 이용해 최적의 하이퍼파라미터 탐색
grid_cv = GridSearchCV(rf, param_grid = params, cv = 3, n_jobs=-1)
grid_cv.fit(X_train[input_var1], y_train)
# 최적의 하이퍼파라미터 값과 성능 출력
print('최적 하이퍼파라미터: ', grid_cv.best_params_)
print('최적 하이퍼파라미터의 성능(RMSE): {:.4f}'.format(
np.sqrt(grid_cv.best_score_)))
# 2. 랜덤 서치
import scipy.stats as stats
from sklearn.model_selection import RandomizedSearchCV
rf = RandomForestRegressor(random_state=1217)
# 탐색할 하이퍼파라미터 구간 지정
params = {'n_estimators': stats.randint(200, 500),
'max_features': stats.randint(4, 8),
'min_samples_leaf': stats.randint(1, 5)}
# RandomizedSearchCV를 이용해 최적의 하이퍼파라미터 탐색
rand_cv = RandomizedSearchCV(rf, param_distributions = params, n_iter=10,
cv = 3, random_state = 1217, n_jobs=-1)
rand_cv.fit(X_train[input_var1], y_train)
# 최적의 하이퍼파라미터 값과 성능 출력
print('최적 하이퍼파라미터: ', rand_cv.best_params_)
print('최적 하이퍼파라미터의 성능(RMSE): {:.4f}'.format(np.sqrt(rand_cv.best_score_)))
Reference
この問題について(sklearnグリッドナビゲーション基本コード), 我々は、より多くの情報をここで見つけました https://velog.io/@suminwooo/sklearn-그리드-탐색-기본-코드テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol