{"id":20161343,"url":"https://github.com/srijan-arya/credit-score-classifier","last_synced_at":"2025-06-19T21:33:35.860Z","repository":{"id":255247511,"uuid":"848995365","full_name":"Srijan-Arya/Credit-Score-Classifier","owner":"Srijan-Arya","description":"Credit Score Classification: This repository features a machine learning project aimed at predicting credit scores based on financial data. Using advanced models like Random Forest and Gradient Boosting.","archived":false,"fork":false,"pushed_at":"2024-08-28T20:05:51.000Z","size":1276,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-03T02:42:51.084Z","etag":null,"topics":["credit","credit-scoring","fraud-detection-using-machine-learning","gradient-boosting","machine-learning","random-forest"],"latest_commit_sha":null,"homepage":"","language":"Jupyter Notebook","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Srijan-Arya.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-08-28T19:31:50.000Z","updated_at":"2024-08-28T20:10:28.000Z","dependencies_parsed_at":"2024-08-28T21:23:55.001Z","dependency_job_id":null,"html_url":"https://github.com/Srijan-Arya/Credit-Score-Classifier","commit_stats":null,"previous_names":["srijan-arya/credit-score-classifier"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/Srijan-Arya/Credit-Score-Classifier","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Srijan-Arya%2FCredit-Score-Classifier","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Srijan-Arya%2FCredit-Score-Classifier/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Srijan-Arya%2FCredit-Score-Classifier/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Srijan-Arya%2FCredit-Score-Classifier/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Srijan-Arya","download_url":"https://codeload.github.com/Srijan-Arya/Credit-Score-Classifier/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Srijan-Arya%2FCredit-Score-Classifier/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":260835604,"owners_count":23070314,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["credit","credit-scoring","fraud-detection-using-machine-learning","gradient-boosting","machine-learning","random-forest"],"created_at":"2024-11-14T00:18:32.764Z","updated_at":"2025-06-19T21:33:30.836Z","avatar_url":"https://github.com/Srijan-Arya.png","language":"Jupyter Notebook","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Credit Score Classification Model 🏦📊\n\n![image](https://github.com/user-attachments/assets/02ec4cd6-a975-4bae-8945-96ec992ef8e3)\n\n\n## 📜 Project Overview\n\nThis project is designed to develop and evaluate machine learning models for classifying credit scores into distinct categories. Using a well-preprocessed dataset, we aim to build robust models to predict creditworthiness based on financial attributes. The primary focus is on achieving high performance in terms of accuracy and ROC-AUC score, a key metric for assessing the quality of multi-class classification models.\n\n## 📊 Dataset\n\nThe dataset utilized in this project is the [Credit Score Classification Dataset](https://www.kaggle.com/datasets/parisrohan/credit-score-classification) available on Kaggle. This dataset includes various features relevant to credit scoring and has been preprocessed to handle missing values and ensure overall data quality.\n![image](https://github.com/user-attachments/assets/cbdd7893-0a60-4ed9-91ad-a17ce73d0a82)\n\n## 🛠️ Models\n\nWe have implemented and evaluated two advanced machine learning models:\n\n1. **Random Forest Classifier** 🌲\n2. **Gradient Boosting Classifier** 🚀\n\n### Model Training\n\n#### Random Forest Classifier 🌲\n\n- **Hyperparameters Tuned**:\n  - `n_estimators`: Number of trees in the forest\n  - `max_features`: Number of features to consider for splitting\n  - `max_depth`: Maximum depth of the trees\n  - `criterion`: The function to measure the quality of a split (`gini` or `entropy`)\n\n- **Best Parameters**:\n  - `n_estimators`: 300\n  - `max_features`: 'auto'\n  - `max_depth`: 10\n  - `criterion`: 'entropy'\n\n#### Gradient Boosting Classifier 🚀\n\n- **Hyperparameters Tuned**:\n  - `n_estimators`: Number of boosting stages to run\n  - `learning_rate`: Shrinks the contribution of each tree\n  - `max_depth`: Maximum depth of the individual trees\n\n- **Best Parameters**:\n  - `n_estimators`: 150\n  - `learning_rate`: 0.1\n  - `max_depth`: 4\n\n## 📈 Model Evaluation\n\n### Accuracy and ROC-AUC Score\n\nModel performance is evaluated using multiple metrics, with a particular emphasis on the ROC-AUC score, which provides insight into the model's ability to distinguish between classes across different thresholds.\n\n- **Random Forest Classifier** 🌲:\n  - **Accuracy**: 72.98%\n  - **ROC-AUC Score**: 0.873\n  - **Confusion Matrix**:\n    ```\n    [[ 4044    82  1196]\n     [  678  6030  2097]\n     [ 2229  1824 11820]]\n    ```\n  - **Classification Report**:\n    ```\n                   precision    recall  f1-score   support\n\n               0       0.58      0.76      0.66      5322\n               1       0.76      0.68      0.72      8805\n               2       0.78      0.74      0.76     15873\n\n        accuracy                           0.73     30000\n       macro avg       0.71      0.73      0.71     30000\n    weighted avg       0.74      0.73      0.73     30000\n    ```\n\n- **Gradient Boosting Classifier** 🚀:\n  - **Accuracy**: 73.17%\n  - **ROC-AUC Score**: 0.874\n  - **Confusion Matrix**:\n    ```\n    [[ 3763    86  1473]\n     [  493  5982  2330]\n     [ 1764  1902 12207]]\n    ```\n  - **Classification Report**:\n    ```\n                   precision    recall  f1-score   support\n\n               0       0.63      0.71      0.66      5322\n               1       0.75      0.68      0.71      8805\n               2       0.76      0.77      0.77     15873\n\n        accuracy                           0.73     30000\n       macro avg       0.71      0.72      0.71     30000\n    weighted avg       0.73      0.73      0.73     30000\n    ```\n\n### ROC Curve Analysis\n\n![image](https://github.com/user-attachments/assets/e342755b-2a78-4053-85e0-fbae3b73278c)\n\n\nThe ROC-AUC score reflects the models' ability to distinguish between classes across various thresholds. Higher ROC-AUC scores indicate better model performance.\n\nThe ROC curves for each class are plotted to visualize the true positive rate versus the false positive rate. This helps in understanding how well each model performs in distinguishing between different credit score categories.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsrijan-arya%2Fcredit-score-classifier","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsrijan-arya%2Fcredit-score-classifier","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsrijan-arya%2Fcredit-score-classifier/lists"}