전복 나이 예측 AI 해커톤

정형 | NMAE

  • moneyIcon 상금 : 참가시 최소 50 XP, 특별상 데이콘 후드
  • 655명 마감

 

[private 1위 0.14111] Feature Engineering + NN Ensemble

2022.04.04 09:25 2,084 조회 language

항상 캐글만 눈팅해오다가 처음으로 데이콘에 가입하고 재밌는 경험할 수 있어서 좋았습니다.
실력은 정말 모자라지만 운이좋게 1위를 한 것 같네요

부족하지만 많은분들에게 도움이 될 수 있었으면 좋겠습니다

코드
로그인이 필요합니다
0 / 1000
yennifd
2022.04.06 17:22

코드 잘봤습니다 공유 감사합니다:)
질문이 있는데 "Shell Weight의 상관관계가 대략 0.625, Height의 상관관계가 0.604임을 확인 -> Feature Engineering이 필요함" 이라고 적혀있는데
엔지니어링이 필요하다고 판단하신 기준이 무엇인가요?
그리고 조합변수만드시고 a2만 선택하실 때 그 때 feature 기준도 궁금합니다!
감사합니다:)

난나나나나나
2022.04.06 19:44

안녕하세요 yennifd님~!! 질문 감사드립니다~
적은 경험이지만 모델을 만들기 위해서는 적어도 0.7~ 0.75 이상의 상관관계가 있는 변수를 사용하여야 기대할만한 성능이 나오던 것을 경험하였습니다.
그렇기 때문에 현재 가지고 있는 변수로는 내가 기대하는 결과값이 나오지 않겠다고 판단하였고 더 나아가 통계치를 보았을때 중간나이대, 그리고 가장 후반의 나이대의 경우 실제로 각 나이별 변수들의 평균, 분산의 차이가 미비한것으로 보여져 이러한 이유때문에 새로운 변수를 창출하여야 겠다고 생각을 하였습니다.

a2만 선택한 이유는 조합변수를 만들고난 후 a4를 사용하였을 때 트레인 데이터를 활용한 모델 자체의 성능은 더욱 우수하였습니다. 실제로 NMAE가 0.11~0.12정도까지 떨어졌습니다. 그러나 이 모델을 활용하여 제출을 해보았을 떄 실제 테스트 Score가 좋지 않았습니다.
이유를 생각해보니 현재 Task의 경우 Train셋의 수가 대략 천개정도이고 Test셋의 경우 이보다 더욱 더 많습니다. 즉 적은양의 트레인 데이터를 활용하여 변수를 조합해 나아갈수록 train 데이터를 활용하여 모델을 만들경우 그 성능은 좋아지지만 실제로 Train 보다 더욱 많은 Test셋의 데이터에서는 이와같은 새로운 변수의 의미가 변질되어질 수 있겠다고 판단하였습니다.
사실 a1까지의 변수만 사용하였을 때 성능이 가장 우수하게 나왔었고 이 또한 같은 이유라고 생각을 하고 있습니다.

혹시 다른 의견이 있으시면 꼭 댓글 달아주세요 !!

yennifd
2022.04.07 19:51

상세한 답변, 그리고 코드 공유도 정말 감사합니다:)