Hello :) Today is Day 11!
A quick summary of today:
- Binary Classification with a Bank Churn Dataset on Kaggle
- My notebook with various SVM models for bank churn classification
Data
I tried various SVM models and SVM-hybrind models, and below are the results from all
Basic SVM model
- Accuracy: 0.8554246069015663
- Precision: 0.7598201609086607
- Recall: 0.4608208955223881
- F1-Score: 0.5737001965338574
- AUC-ROC: 0.7109204519856266
- Confusion Matrix:
- [[25024 1015] [ 3757 3211]]
SVM and RandomForestClassifier model
- Accuracy: 0.7972854243039356
- Precision: 0.5216507738002188
- Recall: 0.4789035591274397
- F1-Score: 0.49936401047512163
- AUC-ROC: 0.6806937627427974
- Confusion Matrix:
- [[22979 3060] [ 3631 3337]]
SVM and KNeighborsClassifier model
- Accuracy: 0.8378828733298997
- Precision: 0.6524608712049783
- Recall: 0.4965556831228473
- F1-Score: 0.5639312199494744
- AUC-ROC: 0.7128886177049008
- Confusion Matrix:
- [[24196 1843] [ 3508 3460]]
Hyperparam tuned SVM model I did manual hyperparam tuning to see the effects of various changes, and this took me the most time, and in the end - it had the same result as the base model
- Accuracy: 0.8554246069015663
- Precision: 0.7598201609086607
- Recall: 0.4608208955223881
- F1-Score: 0.5737001965338574
- AUC-ROC: 0.7109204519856266
- Confusion Matrix:
- [[25024 1015] [ 3757 3211]]
Overall, the training time for each model was very long. I guess SVM is like that.
That is all for today!
See you tomorrow :)