인프런 커뮤니티 질문&답변

Baek Kyun Shin님의 프로필 이미지
Baek Kyun Shin

작성한 질문수

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

분류 실습 2: 신용카드 사기 예측 실습 - 03

early_stopping의 eval_set 질문

해결된 질문

작성

·

243

1

안녕하십니까.

책 p.252와 p.255에 각각 XGBoost와 LightGBM의 early_stoping 적용 코드가 있습니다. 

XGBoost에선 eval_set = [(X_train, y_train), (X_test, y_test)]이지만

LightGBM에선 eval_set = [(X_test, y_test)]입니다.

검증 세트이기 때문에 X_test, y_test만 있으면 될 것 같은데 XGBoost에선 왜 eval_set = [(X_train, y_train), (X_test, y_test)] 이렇게 설정이 되는 것인지 궁금합니다.

감사합니다.

답변 2

1

권 철민님의 프로필 이미지
권 철민
지식공유자

안녕하십니까,

네, XGBoost에서도 eval_set = [(X_test, y_test)] 으로만 설정하여도 됩니다.

XGBoost에선 eval_set = [(X_train, y_train), (X_test, y_test)]으로 설정하면 evalution set를 Train과 Test 데이터를 같이 사용합니만, 일반적으로는 eval_set = [(X_test, y_test)] 으로만 설정해도 충분합니다.

감사합니다.

0

안녕하세요 책을 보면서 공부하고 있는 학생입니다.

위의 답변에서 eval_set = [(X_train, y_train), (X_test, y_test)] 과  eval_set = [(X_test, y_test)] 사이의 성능 상의 차이는 없는가요?

Baek Kyun Shin님의 프로필 이미지
Baek Kyun Shin

작성한 질문수

질문하기