Need help with display-advertising-challenge?
Click the “chat” button below for chat support from the developer who created it, or find similar developers for support.

About the developer

songgc
124 Stars 84 Forks MIT License 5 Commits 0 Opened issues

Description

Criteo/Kaggle Competition of CTR prediction

Services available

!
?

Need anything else?

Contributors list

No Data

Display Advertising Challenge

Description

This is the code was written for the Kaggle Criteo Competition of CTR prediction.

Since the data are highly sparse, the basic methodology is to use logistic regression with appropriate quadratic/polynomial feature generation and regularization to make sophisticated and over-fitting-tractable models. Vowpal Wabbit is the major machine learning software used for this project. Since the data size is challenging in terms of my personal workstation (a single quad-core CPU), the techniques of feature selection and model training are selected based on the trade off between performance and CPU/RAM resource limit.

Dependencies and requirements

Please note that the code was written for my personal learning and practice in new features of Java 8 and Python 3.4 in Ubuntu 14.04. The code cannot be run in early versions of these two languages or other OSs. Compatibility is not considered here.

  • Java 8
  • Python 3.4
  • Maven 3
  • Redis 2.8
  • Pandas 0.14
  • Vowpal Wabbit 7.7
  • Java-based open source projects: (Maven will install them automatically)
    • guava 17.0
    • jedis 2.5.1
    • commons-lang3 3.3.2

How to run

  • Copy train and test data file (train.csv, test.csv) to data folder
  • Compile the Java code by
    $ cd display-ad-java
    $ mvn package # or mvn install
    
  • Make sure a redis instance running at localhost:6379
  • Set the path of binary vw (VWBIN) in run.sh, such as ``` export VWBIN=/path/to/vw/binary ```
  • Finally,
    $ cd work
    $ ../run.sh
    

We use cookies. If you continue to browse the site, you agree to the use of cookies. For more information on our use of cookies please see our Privacy Policy.