Môi trường thực hiện: Google Colab Scoping
- Bài tập lớn: thuộc bài toán phân loại
- Input: Dữ liệu về khách hàng từ các ngân hàng
- Output: Trả về trạng thái cho vay đối với khách hàng đó
Bộ dữ liệu sẽ được sử dụng được tìm thấy trên Kaggle và nó chứa dữ liệu cho 32.581 người vay và 11 biến (tuổi, thu nhập hàng năm, quyền sở hữu nhà, thời gian làm việc, ý định vay, mức vay, số tiền vay, Lãi suất, tình trạng vay, phần trăm thu nhập, vỡ nợ lịch sử, lịch sử tín dụng) liên quan đến mỗi người vay.
Mô tả:
- person_age: Age in years
- person_income: Annual Income in dollars
- personhomeownership: Home ownership
- personemplength: Employment length (in years)
- loan_intent: Loan intent
- loan_grade: Loan grade
- loan_amnt: Loan amount in dollars
- loanintrate: Interest rate
- loan_status: Loan status (0 is non default 1 is default)
- loanpercentincome: Percent income
- cbpersondefaultonfile: Historical default
- cbpresoncredhistlength: Credit history length
Xử lý data: Data
- Kiểm tra các dữ liệu bị thiếu trong bộ dữ liệu
- Thay thế các giá trị bị thiếu trong bộ dữ liệu bằng giá trị trung bình của mỗi biến
- Loại bỏ các thuộc tính không quan trọng của dữ liệu
- Chuyển đổi các thuộc tính về dạng số
- Loại bỏ các điểm outliers
Triển khai các mô hình học máy với các tham số mặc định: Initial
- KNN
- Decision Tree Classifier
- Random Forest Classifier
- SVM
- Naive Bayes
Triển khai các mô hình học máy với dữ liệu được xử lý bằng SMOTE: SMOTE
Triển khai các mô hình học máy sau khi sử dụng Hyperparameter tuning: Hyperparameter tuning
- Tham khảo kiến thức về Hyperparameter tuning: tại đây
Triển khai các mô hình học máy sau khi sử dụng Feature Importance: Feature Importance
- Feature importance trong học máy để đo lường quan trọng của từng feature (đặc trưng) trong tập dữ liệu. Nó cho ta biết được từng feature có đóng góp nhiều hay ít trong quá trình huấn luyện và dự đoán của mô hình. Có nhiều cách để tính feature importance, nhưng cách thông dụng nhất là sử dụng các thuật toán Decision Tree và Random Forest.
- Kết quả sẽ trả về một mảng giá trị của các feature, trong đó mỗi giá trị tương ứng với một feature trong tập dữ liệu. Lưu ý rằng kết quả của tính năng quan trọng có thể khác nhau khi sử dụng các thuật toán khác nhau, và cũng có thể khác nhau khi sử dụng cùng một thuật toán nhưng với các tham số khác nhau.
Triển khai mạng nơron nhân tạo ANN: ANN
Kết quả: Accuracy= 0.927
- Phát triển model
- Chuyển đổi model sang định dạng tensorflowjs
- Đưa lên website
Nguồn tham khảo: tại đây
- Deploy ứng dụng ReactJS lên Netlify hosting miễn phí.
Nguồn tham khảo: tại đây
Website demo: React App
Accuracy
KNN | Decision Tree Classifier | Random Forest Classifier | SVM | Naive Bayes | |
---|---|---|---|---|---|
Initial | 0.87 | 0.84 | 0.92 | 0.88 | 0.81 |
SMOTE | 0.83 | 0.82 | 0.89 | 0.79 | 0.72 |
Hyperparameter tuning | 0.87 | 0.84 | 0.92 | 0.88 | 0.81 |
Feature importance | 0.87 | 0.84 | 0.92 |