Peer session

  • (길희님) catboost, xgboost 시도해봤지만 성능 더 떨어짐
    • (my) 제출 횟수가 5밖에 없는데, 정확한 test score 비교가 힘들지 않았나요?
      • oof val AUC score가 어느 정도 정확한 것 같아서 그걸로 비교했습니다.
  • (황훈님) 예시 코드를 참조해 description로 word2vec features 생성 후 feature 추가해줬더니 성능 향상. 토론 게시판의 준영님 feature 생성 코드 참조 후 성능 향상. (사용 기간, 월 평균 구매 금액 등)
  • (my) 구입 월과 환불 월이 다른 경우가 많아서 문제가 생기는 것 같은데, 모든 환불을 구매 기록과 1:1 매칭을 시켜 둘 다 소거해주면 해결될 것 같음.
    • (길희님) 비슷한 접근으로, 예측 모델 두 개를 짜서 (구매기록만 가지고 구매 예상 금액 예측 + 환불기록만 가지고 환불 예상 금액 예측) 두 결과를 더해서 최종 예측하는 모델 구상해본 적 있음.
      • (my) 이미지 분류 task에서 같은 backbone에 세 가지 branch를 다른 task들로 나눠서 최종 예측한 모델이 score가 높았던 걸 생각해보면 매우 좋은 아이디어 같음. 다만, 현재로서도 이미 월 별 구매 기록이 띄엄 띄엄 있는 customer가 많은 상황에서, 그마저 환불 기록과 따로 분리하면 그 부분이 학습에 악영향을 줄 수도 있을 것 같음.

Office hour

  • 예제 코드: accumulation sum 시 total, quantity, price 각각 새 feature로 생성함.
    • (my 질문) total = quantity * price 라면, 정보가 중복된다고 생각되어서 [total] 혹은 [quantity, price] 둘 중 하나만 새로운 feature를 생성할 때 사용해야할 거라고 생각했는데, 셋 다 사용해도 괜찮은 이유가 궁금합니다.
      • (멘토님 답변) 의미는 중복되는 것이 맞다. 선형 회귀의 경우 다중 공선성 문제가 중요하지만 (모델 해석), (부스팅 등을 할 때) “성능”만을 생각한다면 고려하지 않아도 된다. 많은 feature를 생성할 수록 성능이 향상할 가능성 많음.