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

Jaemin Kim님의 프로필 이미지
Jaemin Kim

작성한 질문수

캐글 Advanced 머신러닝 실전 박치기

Hyperparameter tuning 시점 관련 질문입니다.

작성

·

136

0

오늘 강의를 완강할 수 있겠네요. 좋은 강의 감사드립니다!

강의에서는 각각 table에서 feature를 뽑아내면서 그때마다 LightGBM을 이용해 prediction proba를 구해서 점점 개선되는 것을 보였는데요, 처음 hyperparameter setting은 적당히 경험상 대충 정하고 이를 이용해서 feature engineering을 모두 수행하고, 나중에 어느정도 feature engineering이 마무리가 되고나서 강의에서 보여주신 Bayesian optimization 등을 이용해서 튜닝하는 것이 효율적인 방법일까요? 아니면 애초에 feature selection 단계에서부터 이미 어느정도 optimized 된 hyperparameter를 찾아가는게 효율적일까요? 

쓰고있는 노트북이 4 core에 32GB RAM을 가지고 있어서 그냥 local에서 하고 있는데요, parameter tunning이 가장 시간이 오래 걸리는 것 같아서 문의드려봅니다.

캐글 참여를 해서 그래도 어느정도 순위권을 목표로 한다고 하면 현실적으로 어느정도 시스템을 갖춰야 할 수 있을까요? 

답변 1

1

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

안녕하십니까,

오, 강의를 완강하시다니, 축하드립니다.

1. hyper parameter는 반복해서 튜닝하는 것이 가장 좋습니다. 처음에 feature engineering을 어느정도 적용한 다음 hyper parameter tuning을 수행합니다. 다음 다시 feature engineering을 노력해서 적용합니다. 그리고 hyper parameter tuning을 적용합니다. 3~4번 이런 과정을 적용하다보면 hyper parameter를 어떤 값으로 정해야 할지 감이 옵니다.

2. 여러 번 feature engineering/tuning을 반복해서 테스트해보려면, 동시에 여러가지 시나리오를 적용하면 좋은데, 가능하다면 여러대의 시스템을 구성하면 좋습니다. 클라우드 상에서 8core짜리 서버를 3개 정도 임대해서 사용하면 충분할 거 같습니다.  그리고 순위권을 목표로 한다면 시스템 h/w보다는 팀을 이뤄서 공략하는게 더 좋을 것 같습니다. 요새는 거의 팀 단위로 입상하는 것 같습니다.

감사합니다.

Jaemin Kim님의 프로필 이미지
Jaemin Kim

작성한 질문수

질문하기