본문 바로가기

kaggle12

[Porto Seguro’s Safe Driver Prediction] 대회 소개 / 지니계수 란? 캐글(Kaggle) 대회 리뷰 : Porto Seguro’s Safe Driver Prediction - 이 대회는 2년전에 진행한 대회로 총 5,163 개의 Team이 참가한 매우 큰 대회였다. 지금도 5,000명 이상 참가하는 대회를 보기는 쉽지 않다. 당시의 Leaderboard를 보면 Private Leader board에서 3위한 사람이 Public Leader board 순위 대비 1070등이 상승했고 4등은 1100등이 상승했다. 이 말은 곧 Train데이터와 Test 데이터 간의 분포가 달라 Shaking이 많이 일어 난 것이라 볼수 있겠다. 이것만 보아도 당시에 꽤나 말이 많았을 것으로 생각된다. 대회 설명 "Predict if a driver will file an insurance c.. 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.
[Santander Product Recommendation] Baseline 구축하기② 이번 포스팅에서는 앞서 언급한 치명적인 실수가 무엇인지 파헤쳐본 결과에 대한 것입니다. 열심히 Baseline을 구축하고 결과를 제출한 순간 LB Score 0.00698라는 처참한 결과를 얻었습니다. 무엇이 잘 못되었는지 아무리 뒤져봐도 모르겠어서 "머신러닝 탐구생활" 책에 제공된 Script를 한줄 한줄 필사 했습니다. 모델링까지 필사를 다하고 나니까 문제가 무엇인지를 깨달았네요. 제 사고가 문제였습니다. 머리를 개조해야했죠. 문제를 해결하기 위해 여러 방면으로 많은 시도(ex, fold 나눌때 Shuffle =True로 변경)를 했었는데 Valid log loss 1.5를 뚫지 못했었습니다. 1. 보이는 Target값(Y)이 Target값이 아니다. - 문제를 제대로 이해하지 못해서 발생하는 문제였.. 2019. 12. 25.
[Santander Product Recommendation] Baseline 구축하기① 이번 포스팅에서는 Baseline 구축을 위한 삽질을 공유해보고자 합니다. 먼저 이번 포스팅은 최종적인 Baseline을 만들기 전 실패한 경우를 이야기 하고 있음을 알려드립니다. Santander Product Recommendation 대회의 주된 목적은 고객이 신규로 구매할 것 같은 상품을 예측하는 것입니다. 하지만 주어진 데이터는 월별 고객이 보유한 상품 데이터입니다. 이를 인지하는 것이 Baseline을 구축하는데 중요한 포인트입니다. 저는 이것을 나중에 인지하고 기계적으로 Baseline을 구축하여 제출했다가 처참한 LB Score를 받았네요 아래는 월별 고객 보유 상품 데이터로 Baseline을 구축했던 과정입니다. 신규 구매 상품 예측 모델은 다음 포스팅에서 이야기하도록 하겠습니다. ㅁ B.. 2019. 12. 25.
[Santander Product Recommendation] 데이터 탐색하기 ② : Y Santander Product Recommendation 대회의 Target 값의 분포를 확인해보겠습니다.(타겟변수 총 24개) Training 데이터를 기반으로 각각의 분포를 확인해보면, - ind_cco_fin_ult1 상품의 구매가 가장 많았고 - ind_ahor_fin_ult1, ind_aval_fin_ult1 상품의 구매가 가장 적었습니다. 추후 모델링을 할 때는 구매가 거의 없었던 ind_ahor_fin_ult1, ind_aval_fin_ult1 Target 값은 제외하고 하겠습니다. # Target value 분포 확인하기 cols = ['ind_ahor_fin_ult1', 'ind_aval_fin_ult1', 'ind_cco_fin_ult1', 'ind_cder_fin_ult1', 'in.. 2019. 12. 22.
[Santander Product Recommendation] 데이터 탐색하기 ① : X Santander Product Recommendation 대회의 경우 총 24개의 X 인자와 24개이 Y 인자로 구성되어 있습니다. 이번 포스팅에서는 X/Y 인자를 나누어서 데이터 특징을 퀵하게 파악해보도록 하겠습니다. 일부 데이터는 다소 지저분하게 기록되어 있습니다(1.0 or 1). 이를 Cleaning 하는 작업은 Baseline 구축 편에서 이야기 하도록 하겠습니다. ㅁ 데이터 탐색하기(X) 1. fecha_dato : 월별 날짜 데이터로 2015년 1월~6월까지 데이터가 적고 점차 늘어남. 2. Ind_empleado(고용여부) - A : active / B ex employed(전직) / F filial / N not employee / P pasive - N(Not employee) : 9.. 2019. 12. 19.
[2019 3rd ML month with KaKR] 대회 소개 캐글코리아라는 비영리 커뮤니티에서 진행한 "3차 대회 : 자동차 분류하기"를 소개하고자 합니다. 이 대회는 모든 사람에게 공개된 대회는 아니였고 캐글 코리아 회원에 한하여 특정 링크를 타고 들어가야 데이터 접근이 가능한 대회였습니다. 제목에서 알 수 있듯이 이 대회는 자동차를 분류하는 대회로 기존의 자동차인지 아닌지를 구분하는 대회보다 한단계 업그레이드 된 대회라고 보시면 되겠습니다. 대회바로가기 ㅁ 대회 소개글(from 대회) 우리가 살면서 갖고 싶은게 여러 가지가 있지만, 집 다음으로 보통 자동차 일 것입니다. 우리 주위에서 흔히 볼 수 있고, 편리한 교통 수단 중에 하나입니다. 전 세계적으로 그 수는 무려 10억대가 넘고, 그 종류는 수백, 수천 가지 이상 된다고 합니다. 하지만, 이렇게 많은 차종.. 2019. 12. 18.
[ASHRAE - Great Energy Predictor III] Leakage 된 데이터 활용하기 이번에는 Leakage 된 데이터를 활용하여 Score를 올려본 방법과 결과를 공유하도록 하겠습니다. 이 대회는 심각한 Data Leakage가 있었습니다. 현재까지는 Site 5개(0,1,2,4,15) 데이터의 시간대별/meter_type별 Meter_reading 값이 오픈되어 있습니다. 이는 캐글에서 대회 주관자가 오픈한 것이 아니라 다른 대회 혹은 다른 Site에서 데이터 분석을 위해 올려놓은 데이터를 참가자들이 크롤링하여 정리한 것입니다. 아래에서 이야기하겠지만 Leakage 된 데이터는 LB Score에 0.1정도 영향을 미칩니다. Leak Dataset은 총 5개 입니다. (참조 : https://www.kaggle.com/yamsam/ashrae-leak-data-station) ASHRA.. 2019. 12. 9.
[ASHRAE - Great Energy Predictor III] Model 확장 이번에는 Lightgbm이 아닌 다른 모델을 활용하여 다양성을 부여해보도록 하겠습니다. 지금은 Lightgbm이 tree 계열에서 가장 좋은 성능을 보이는 모델이지만 이전에는 Xgboost 만한 모델이 없었습니다. 최근에는 Xgboost가 Lightgbm에 비해 성능이 조금 떨어지고 CPU 학습시 속도도 오래걸리는 경향이 있지만 GPU를 활용한 학습이 가능하다는 점에서 아직까지 많은 사람들이 찾고 있습니다. Lightgbm도 GPU 를 활용한 적합이 가능은 하지만 Kaggle에 올라오는 경험담에 의하면 안정적인 결과를 내지 못하는 것 같다고 합니다. 그래서 저는 Lightgbm으로 학습 할 때 CPU만 활용하고 있고 Xgboost는 GPU 학습시킬 때 활용하고 있습니다. Xgboost 결과를 아래에서 같.. 2019. 12. 8.
안녕하세요 꿈을 간직한 사나이 입니다. 블로그를 시작합니다. 오랜 시간 동안 고민하고 망설였습니다. 이제 동굴 속에서 나와 세상을 향해 으르렁 대는 사자처럼 한걸음 한걸음 걸어나가고자 합니다. 교학상장(敎學相長)을 몸소 실천하면서 "꿈을 간직한 사나이" → "꿈을 이룬 사나이"로 거듭나겠습니다. 이 블로그는 캐글(Kaggle) 대회에 참여하여 얻은 지식을 공유하는 장으로 활용할 예정이며, 머신러닝/AI 또는 캐글을 시작하는 분들의 길잡이가 될 수 있도록 발전시킬 생각입니다. 블로그 내용이 도움이 되셨다면 댓글과 좋아요 부탁드리며, 미흡하다고 생각되는 부분 또한 댓글 남겨주시면 확인하여 수정하도록 하겠습니다. 블로그에 방문해주셔서 진심으로 감사드립니다. 이상입니다. - 꿈.간.사 올림- 2019. 11. 26.
[Santander Product Recommendation] 대회 소개 스페인 은행 Santander 가 Kaggle을 통해 개최한 "Santander Product Recommendation" 이라는 대회를 리뷰하며 데이터 분석 방법을 공유 하고 수상자의 노하우를 벤치마킹 하고자 합니다. 포스팅은 분석 단계를 쪼개서 최대한 디테일하게 분석 내용을 공유하는 방향으로 진행될 예정입니다. ㅁ 대회 및 데이터 소개 - 일정 기간(2015.01~2016.05) 동안의 고객 특성, 행동 데이터를 기반으로 다음달(2016.06)에 어떤 상품을 구매할 것인지 예측하는 대회 - 총 24개의 독립 변수(X) 와 24개의 종속 변수(Y)로 이루어져 있는 Multiclass & Multilabel 분류 분제 ㅁ 평가 함수 리뷰 - 데이터 분석하기 앞서 먼저 평가 함수(Evaluation fun.. 2019. 11. 25.