Personal loan acceptance
QUESTION
Universal Bank is a relatively young bank growing rapidly in terms of overall customer acquisition. The majority of these customers are liability customers (depositors) with varying sizes of relationship with the bank. The customer base of asset customers (borrowers) is quite small, and the bank is interested in expanding this base rapidly to bring in more loan business. In particular, it wants to explore ways of converting its liability customers to personal loan customers (while retaining them as depositors).
A campaign that the bank ran last year for liability customers showed a healthy conversion rate of over 9% success. This has encouraged the retail marketing department to devise smarter campaigns with better target marketing. The goal is to use k‐NN to predict whether a new customer will accept a loan offer. This will serve as the basis for the design of a new campaign.
The dataset mlba::UniversalBank contains data on 5000 customers. The data include customer demographic information (age, income, etc.), the customer’s relationship with the bank (mortgage, securities account, etc.), and the customer response to the last personal loan campaign (Personal Loan). Among these 5000 customers, only 480 (= 9.6%) accepted the personal loan that was offered to them in the earlier campaign.
Partition the data into training (60%) and holdout (40%) sets.
- Consider the following customer: Age = 40, Experience = 10, Income = 84, Family = 2, CCAvg = 2, Education = 2, Mortgage = 0, Securities Account = 0, CD Account = 0, Online = 1, and Credit Card = 1. Perform a k‐NN classification with all predictors except ID and ZIP code. Remember to define categorical predictors with more than two categories as factors (for k‐NN, to automatically handle categorical predictors). Create KNN model with k=1. How would this customer be classified?
Use set.seed(1) for training.
B. What is a choice of k that balances between overfitting and ignoring the predictor information? Use 5‐fold cross‐validation to find the best k.
Use set.seed(123) for cross validation
The best K for the model is saved in model$bestTune
C. Show the confusion matrics for the training and holdout data that results from using the best k. Comment on the differences and reasons.
The code example below shows how to produce the confusion matrix for the training set
cm <- confusionMatrix(predict(model, train.df), train.df$Personal.Loan)
D. Consider the following customer: Age = 40, Experience = 10, Income = 84, Family = 2, CCAvg = 2, Education = 2, Mortgage = 0, Securities Account = 0, CD Account = 0, Online = 1 and Credit Card = 1. Classify the customer using the best k.
Get your college paper done by experts
Do my question How much will it cost?Place an order in 3 easy steps. Takes less than 5 mins.
Leave a Reply
Want to join the discussion?Feel free to contribute!