Tabular Classification
Scikit-learn
Joblib
logistic-regression
credit-risk
loan-default
tabular
binary-classification
Instructions to use gusdelact/loan-default-logreg with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- Scikit-learn
How to use gusdelact/loan-default-logreg with Scikit-learn:
from huggingface_hub import hf_hub_download import joblib model = joblib.load( hf_hub_download("gusdelact/loan-default-logreg", "sklearn_model.joblib") ) # only load pickle files from sources you trust # read more about it here https://skops.readthedocs.io/en/stable/persistence.html - Notebooks
- Google Colab
- Kaggle
loan-default-prediction - Regresion Logistica
Modelo de clasificacion binaria de riesgo de default de prestamos. Modelo ganador (vs XGBoost) por interpretabilidad y costo esperado.
Uso previsto
Apoyar la decision de originacion de credito: si la probabilidad de default supera el umbral de decision (0.816), se recomienda pedir garantia adicional. Prioridad de negocio: evitar falsos positivos (no molestar a buenos pagadores).
Metricas en el punto de operacion (test, umbral 0.816)
| Metrica | Valor |
|---|---|
| Precision (default) | 0.968 |
| Recall (default) | 0.769 |
| F1 (default) | 0.857 |
| PR-AUC | 0.938 |
| ROC-AUC | 0.980 |
| Costo esperado (3:1) | 12 |
Criterio de negocio: precision >= 0.70 y recall >= 0.40 -> CUMPLE. Matriz de confusion (test=200): TN=160, FP=1, FN=9, TP=30.
Coeficientes (log-odds)
| Feature | Coef |
|---|---|
age |
-1.0153 |
credit_score |
-4.9988 |
dependents |
+3.9956 |
income |
-2.2871 |
home_owner |
-2.8181 |
(Features estandarizadas; signo negativo = mayor valor reduce el riesgo de default.)
Datos de entrenamiento
- Fuente:
gusdelact/loan_default_prediction - Dataset curado:
gusdelact/loan-default-curated - Train: 800 filas, 5 features. CV estratificado k=5, scoring=average_precision.
Como usar
import json, joblib, pandas as pd
from huggingface_hub import hf_hub_download
model = joblib.load(hf_hub_download("gusdelact/loan-default-logreg", "model.joblib"))
preproc = joblib.load(hf_hub_download("gusdelact/loan-default-logreg", "preprocessor.joblib"))
info = json.load(open(hf_hub_download("gusdelact/loan-default-logreg", "model_info.json")))
raw = pd.DataFrame([{"age": 35, "income": 15000, "credit_score": 480,
"dependents": 3, "home_owner": 0}])
Xp = pd.DataFrame(preproc.transform(raw[info["raw_feature_order"]]),
columns=info["processed_feature_order"])
proba = model.predict_proba(Xp)[0, 1]
decision = "pedir garantia" if proba >= info["decision_threshold"] else "aprobar"
print(proba, decision)
Fundamento teorico (resumen del diseno)
- EDA:
credit_scorepredictor mas fuerte,dependentsmonotonica; sin multicolinealidad. - FE: Yeo-Johnson en
income(sesgo), escalado,dependentsordinal (FES 5.5, 6.1). - Modelado: LogReg L2, C por CV; sin resampling para preservar probabilidades (ISLP 4.4).
- Validacion: umbral calibrado por costo 3:1 (ISLP 4.4, ESL 9.2); PR-AUC sobre ROC con desbalance (FES 3.2.2).
Limitaciones
- Dataset pequeño y probablemente sintetico; rangos acotados. No extrapolar fuera de
age20-69,credit_score300-849,income<= 100k. - Umbral calibrado sobre el test (39 positivos): metricas algo optimistas.
- Ratio de costos 3:1 es asuncion de negocio no validada. NO usar como unica base de decisiones crediticias sin revision humana y cumplimiento regulatorio.
Generado el 2026-06-24 por el pipeline data-science-assistant.
- Downloads last month
- -