Git Product home page Git Product logo

expedia-hotel-recommendations's Introduction

Expedia-Hotel-Recommendations

Key Word: Machine Learning-Classification, Algorithm, Feature Engineering, Python

Introduction

This project is a Kaggle competition. In this project, Expedia is challenging Kagglers to contextualize customer data and predict the likelihood a user will stay at 100 different hotel groups. It aims to predict the top 5 hotel clusters that a customer is most likely to book.

Detailed project and data description can be found at (https://www.kaggle.com/c/expedia-hotel-recommendations).

Machine Learning Approach

We compared different classificaiton algorithms: LDA, QDA, Logistic Regression, AdaBoost, Gradient Boosting, Decision Trees, Rrandom Forest, Bagging.

And in order to get top 5 clusters for each observation, for each algorithm, in the code we:

  • Loop across each unique hotel_cluster.
  • Train a classifier using 2-fold cross validation.
  • Extract the probabilities from the classifier that the row is in the unique hotel_cluster
  • Combine all the probabilities.
  • For each row, find the 5 largest probabilities, and assign those hotel_cluster values as predictions.
  • Compute accuracy using mapk(accuracy rate).

Aggregation Approach-Customized Algorithm

The ML Approach didn't give us desired prediction accuracy in this case. We decided to use alternative means of achieving better classification accuracy, which we call Aggregation Approach.

This approach relies on the count of historical booking and clicking history. Since the training data is huge, this approach tries to exploit it by predicting the clusters based on frequency the particular cluster was booked for same search criteria. That is, the greater the number of times a hotel cluster say ‘H’ is booked for say Destination id ’D’, the greater probability it has of being selected in the future too. The relevance of clusters is decided by their booking and clicking frequency on the historical data.

Output

alt tag

Detailed project report can be found in this repository(Report.pdf).

expedia-hotel-recommendations's People

Contributors

qianmx avatar

Stargazers

Anupam Dhiman avatar Monish Chandrashekar avatar chen_sheng avatar Altaf Shaikh avatar  avatar

Watchers

 avatar Boris  avatar

Forkers

researchworkdr

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.