# Solutions

Hi,
Ah! Almost after an year I am participating here. Feels good :)
Lets share the approach to understand what could have been done more to better our result. What I tried for this competition was concentrating on ensembling approach rather tuning my individual models as I joined in late. I will share a brief of my approach
Feature engineering
Build frequency matrix of user with number of times each event was done ( Gave me the biggest gains). Apply PCA over it and pick top 7 features.
Frequency matrix of user with average time per event ( Not part of final model )
Filtering ages less than 14 and greater than 100
Remove date of first booking (of course)
Breaking Date of account created into day, month and year
Note: Did not use country.csv and age.csv
Types of model
XGBoost for python ( best score individually )
Random forest from h2o (oxdata)
Deep learning from h2o (oxdata)
Gradient boosting from h2o (oxdata)
Note: I did not try to tune hyperparamters much
Ensembling:
I actually struggled to get the right type of ensembling which I aimed for this competition
Simple voting
Dividing the train set into 30 and 70%. Train all models on 70% data and predict on 30%. Use RF to build another over these prediction. ( Score dropped here significantly probably because I overfitted)
Add all the probabilities from different models ( per class ) and then come up with final ranking. ( This again did not give me significant advantage probably if my 1 model was screwed my final result will be skewed towards that )
Getting ranks from each model and then adding up those ranks to get final ranking. ( This worked out best compared to others probably because I was giving equal importance to each model )
I still struggled to improve on single model of xgboost. A simple voting of 2 xgboost model gave best result.
Most of the model building is direct adaptation of @sandro 
My code is available at
[https://github.com/hiransuvrat/machinelearning/tree/master/airbnb](https://github.com/hiransuvrat/machinelearning/tree/master/airbnb)