inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

[개정판] 파이썬 머신러닝 완벽 가이드

XGBoost를 이용한 위스콘신 유방암 예측(파이썬 Native XGBoost 사용)

안녕하세요:) 질문이 있습니다.

955

서쿠

작성한 질문수 5

0

안녕하세요:) 강의 너무 잘 듣고 있습니다.

다름이 아니라 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을 낮게 줘서라도 수렴을 하는 것을 확인해야할까요? 너무 낮게 줘버리면 성능이 잘 나오지 않을 것 같아서 난해한 상황이라 선생님의 의견을 듣고 싶습니다. 

감사합니다!

xgboost 머신러닝 배워볼래요? early_stopping 통계 scikit_learn python gridsearchcv

답변 7

1

권 철민

아, 그리고 GridSearchCV를 하면 eval_set이 안 먹힙니다. 그래서 ealry stopping도 안먹힐 수 있습니다.

0

서쿠

넵 :D 일단 30으로 해서 한번 해보고 follow up 알려드리겠습니다 ㅎㅎ

이전 학습 시에도 log는 일단 뜨긴했습니다.

0

권 철민

아, 죄송합니다. 제가 헷갈렸네요. GridSearchCV에 eval_set이 안먹히는게 아닌데, 제가 착각했습니다.

fit_params에 eval_set을 부여하신 방식이 맞습니다.

GridSearchCV.fit() 수행시 output으로 나오는 log를 확인해 보시면 early stopping이 동작하는지 알수 있습니다.

0

서쿠

아 그렇다면 GridSearchCV 수행시 eval_set을 안 쓰면 에러가 나던데 이럴때 어떻게 하면 되는지 아시나요? ㅠㅠ 

최근 2주동안 관련 문헌들 찾아봤는데 마땅히 도움되는 것은 찾지 못하여 질문드립니다!

0

서쿠

아 그리고 만약에 cross_validation을 한다면 fit_params에 eval_set을 저렇게 주는게 맞을 까요?

0

서쿠

Param_grid는 일단 나머지는 다 dafault로 주고, learning_rate랑 n_estimator 수만 바꿨습니다 :D

줄여서 해보고 말씀드릴게요 ㅎㅎ

0

권 철민

안녕하십니까,

Param_grid에 어떤 하이퍼 파라미터 조정을 어느정도 주셨는지 잘 모르겠지만 수행 시간이 오래 걸리는것 그것 때문인것 같습니다만,,

또 early_stopping도 30 정도로만 하셔도 충분할 것 같습니다.  위 2가지를 같이 적용해보시는게 어떨지요?

안녕하세요 열심히 수강중인 학생입니다

0

59

2

정수 인덱싱

0

67

2

넘파이 오류

0

83

2

11강 numpy의 axis 축 질문 드립니다.

0

84

2

Kaggle 에서 Santander customer satisfaction data 를 다운로드 되지가 않습니다.

0

76

2

Feature importances 를 보여주는 barplot 이 그래프로 안보여져요.

0

68

2

타이타닉 csv 파일이 주피터 화면에 보이지 않습니다.

0

74

2

타이타닉 csv 파일이 주피터 화면에 보이지 않습니다.

0

62

2

5강 강의 오류가 있어요.

0

82

1

실무에서 LTV 관련 모델 선택 질문입니다!

0

71

2

14강 강의 듣는중에 궁금한게 있어서 질문합니다~

0

68

3

파이썬 다운그레이 후 사이킷런 재설치

0

115

2

좋은 강의 감사합니다.

0

71

2

scoring 함수 음수값

0

66

2

6번 강의에 사이킷런, 파이썬, 아나콘다 각각 버전 일치 안 시키고 진행해도 강의 따라가 지나요?

0

98

2

분류 평가 정확도 예측

0

75

2

안녕하세요. 강의 들으면서 업무에 적용하고 싶은 수강생입니다.

0

97

1

카카오톡 채널 있나요

0

105

1

혹시 강의에서 사용하시는 ppt 받을 수 있는건가요

0

187

2

pca 스케일링 관련하여 질문드립니다.

0

100

2

주피터 대신 구글 코랩

0

170

2

강의에서 사용하는 pdf or ppt자료는 따로 없는 건가요?

0

145

2

실루엣 스코어..

0

83

2

float64 null 값 처리 방법

0

101

2