stratascratch
  • Interview Questions
    • Interview Loops
    • Analytical
    • Algorithm
    • ML Coding
    • Stats Coding
    • Visualization
    • Concept
  • Data Labs
    • Discover
    • Your Notebooks
  • Mock Interview
  • Learn
  • Blog
  • Pricing
  • About
Log in
  • Interview Questions

    • Interview Loops
    • Analytical
    • Algorithm
    • ML Coding
    • Stats Coding
    • Visualization
    • Concept
  • Data Labs

    • Discover
    • Your Notebooks
  • Mock Interview
  • Learn
  • Blog
  • Pricing
  • About
Log inSign up
Back to Projects
  1. Assignment
  2. Your Solution
  3. Solution
  4. Solutions from Users
  5. Discussion

Response to Marketing Campaign

You must be logged in to download the datasets

Accenture: Optimize campaign targeting via LightGBM with native categorical encoding. Python, LightGBM, Scikit-learn, Pandas.

Assignment

You are working for Accenture as a Data Scientist. Accenture has been commissioned by an insurance company to develop a tool to optimize their marketing efforts. They have given us a data set as a result of an email marketing campaign. The data set includes customer information, described below, as a well as whether the customer responded to the marketing campaign or not.

Design a model that will be able to predict whether a customer will respond to the marketing campaign based on his/her information. In other words, predict the responded target variable described above based on all the input variables provided.

Briefly answer the following questions:

  • Describe your model and why did you choose this model over other types of models?
  • Describe any other models you have tried and why do you think this model preforms better?
  • How did you handle missing data?
  • How did you handle categorical (string) data?
  • How did you handle unbalanced data?
  • How did you test your model?

Data Description

Files:

  • marketing_training.csv - contains the training set that you will use to build the model. The target variable is responded.
  • marketing_test.csv – contains testing data where the input variables are provided but not the responded target column.

Descriptions of each column:

TypeNameDescription
Input VariablescustAgeThe age of the customer (in years)
Input VariablesprofessionType of job
Input VariablesmaritalMarital status
Input VariablesschoolingEducation level
Input VariablesdefaultHas a previous defaulted account?
Input VariableshousingHas a housing loan?
Input VariablescontactPreferred contact type
Input VariablesmonthLast contact month
Input Variablesday_of_weekLast contact day of week
Input VariablescampaignNumber of times the customer was contacted
Input VariablespdaysNumber of days that passed by after the client was last contacted from a previous campaign (numeric; 999 means client was not previous contacted)
Input VariablespreviousNumber of contacts performed before this campaign for this client
Input VariablespoutcomeOutcome of the previous marketing campaign
Input Variablesemp.var.rateEmployment variation rate - quartlerly indicator
Input Variablescons.price.idxConsumer price index - monthly indicator
Input Variablescons.conf.idxConsumer confidence index - monthly indicator
Input Variableseuribor3mEuribor 3 months rate - daily indicator
Input Variablesnr.employedNumber of employees - quarterly indicator
Input VariablespmonthsNumber of months that passed by after the client was last contacted from a previous campaign (numeric; 999 means client was not previous contacted)
Input VariablespastEmailNumber of previous emails sent to this user
Target VariablesrespondedDid the customer respond to the marketing campaign and purchase a policy?

Practicalities

Provide the following:

  • The source code you used to build the model and make predictions. (You are free to use any language and any open-source package/library)
  • A .csv file containing the predictions of the test data. You can add the target column (responded) to the test data or simply provide it alone with the id column.