본문 바로가기

Feature engineering5

[Porto Seguro’s Safe Driver Prediction] Improve 최종적으로 240등(Private 0.29025, Public 0.28669) 모델을 구축했다. 이전 포스팅에서 공개한 Baseline을 기반으로 업그레이드를 시켰으며, 주된 변경점은 1. category Feature encoding 방법 변경 2.Undersampling 이다. [ Category Feature Encoding ] 이전의 머신러닝 대회에서는 카테고리 변수 내에 Label이 너무 많아 모두 dummy화 시킬 경우 Cardinality가 너무 높아져서 문제가 되는 경우가 많았다. 그래서인지 당연하게 Category Feature를 Get_dummy가 아닌 Label Encoding을 했는데 이게 문제가 되었다. 문제를 발견한 건 어떤 방법을 써도 성능이 개선되지 않음을 깨달았을 때부터이다.. 2020. 2. 23.
[Porto Seguro’s Safe Driver Prediction] Baseline 구축 Porto Seguro’s Safe Driver Prediction 이 대회는 XGBOOST를 기반으로 Baseline을 구축했다. LGBM 모델과 성능을 비교하면서 접근했는데 어떤 상황이든 LGBM보다 XGBOOST가 더 높은 성능을 보였다. 1등한 사람의 리뷰를 보면 Denoising Autoencoder로 Feature를 뽑고 그것을 가지고 Neural Net을 만들어서 학습시켰다. 시간이 남는다면 Autoencoder를 꼭 적용해봐야하겠다. 지금은 XGBOOST를 기반으로 여러가지 시도해본 결과를 작성한다. Discussion을 읽다 보면 공통적으로 눈에 들어오는 이야기가 있다. 그것은 각 폴드 마다 Gini Index 산포가 발생한다는 것인데 Public Score에서도 충분히 이런 현상이 있을.. 2020. 2. 11.
[Porto Seguro’s Safe Driver Prediction] 데이터 탐색하기 Porto Seguro’s Safe Driver Prediction 대회에서 제공하는 데이터에는 몇가지 특징이 있다. 1. 컬럼 이름(ind,reg, car, calc)을 가지고 Grouping이 된다 2. 컬럼 이름에 '_bin' 은 Binary Features , '_cat' 은 Categorical Features를 의미한다. 3. 컬럼 이름에 아무것도 안붙어있으면 Continuous or Ordinal Features를 의미한다. 4. '-1' 은 Null 값을 의미한다. 데이터는 총 57개의 X 데이터가 주어진다(ID,Target 제외). 이는 Interval (21개) / Ordinal(16개) / Binary(18개) Variables로 나뉜다. 1. Interval Variables : p.. 2020. 2. 2.
[Santander Product Recommendation] 전혀 다른 모델 활용하기(MLP) 이번에는 XGBOOST가 아닌 MLP(Multi Layer Perceptron)을 활용한 학습한 내용에 대해 포스팅하겠습니다. 이번 포스팅은 아래 링크를 참고하였으니 더 자세한 내용이나 코드를 원하시는 분은 아래 참고 바랍니다. https://www.kaggle.com/hachemsfar/keras 많은 대회를 참가하지 않았지만 대회 리뷰들을 읽다보면 의외로 MLP가 좋은 성적을 거두는 경우들이 있습니다. 물론 MLP만 활용하는 것은 아니고 MLP와 다른 모델을 섞어서 다양성을 주는 겁니다. 이때 MLP를 학습시키는 게 매우 어려울때가 많습니다. 적당한 Hyperparameter들을 세팅해주지 않으면 생각처럼 학습이 잘 되지 않습니다. 기존에 세팅해뒀던 Baseline을 기반으로 모델만 변경하여 학습해봤.. 2019. 12. 25.
[Santander Product Recommendation] Feature engineering 어렵게, 정말 어렵게 Baseline을 구축했습니다. 쉽게 갈 수 있는 길을 어렵게 돌아온 이유는 생각해보면 문제에 대한 이해를 후순위에 두고 기술적으로만 접근했기 때문인 것 같습니다. 큰 교훈 하나 얻었으니 다음 대회부턴 문제에 대한 이해를 우선시 해야겠습니다. 아무튼 현재까지 구축된 Baseline을 기반으로 모델 성능을 Improve 하는 시도를 해보겠습니다. 1. Baseline : Public Score 0.01088 - lag-1 값(지난달 개인정보 + 보유 상품)을 신규 Feature로 하고 3 Folds(shuffle =True)로 CV 했을때 결과 입니다. - 생각보다 결과가 나빴지만 어렵게 구축한 Baseline인 만큼 만족하고 다음 단계로 넘어갔습니다. 2. Fold 구성 방식 변경 .. 2019. 12. 25.