미해결
[개정판] 파이썬 머신러닝 완벽 가이드
안녕하세요:) 질문이 있습니다.
안녕하세요:) 강의 너무 잘 듣고 있습니다.
다름이 아니라 scikitlearn wrapper를 이용하여 XGboost 하이퍼파라미터 서치를 수행하고 있는데요..! 아래와 같이 gridsearchCV에 CV는 데이터 수가 적어 leave-one-out cross validation을 적용하여 사용하려고 합니다. early_stopping 기준은 어떻게 줘야할지 잘 모르겠어서 100으로 현재 준 상태입니다.
# set data
X = df.iloc[:, 1:-1]
y = df["Y"]
# define fit_params
fit_params = {'early_stopping_rounds': 100, 'eval_set':[(X,y)]}
# define grid_search
model_grid_cv = GridSearchCV(estimator=model, param_grid=param_grid, scoring="accuracy", cv=loo, n_jobs=-1, verbose=True)
# fit_model
model_grid_cv.fit(X, y, **fit_params)
LightGBM의 경우 아래와 코드를 수행했을 때 1시간만에 결과가 잘 나왔는데 XGBoost는 20시간 가까이 계속 코드가 돌고 있더라고요,,,, 그냥 기다리는 것이 좋을 까요? 아니면 early_stopping을 낮게 줘서라도 수렴을 하는 것을 확인해야할까요? 너무 낮게 줘버리면 성능이 잘 나오지 않을 것 같아서 난해한 상황이라 선생님의 의견을 듣고 싶습니다.
감사합니다!