trodrigx commited on
Commit
1dca0ba
verified
1 Parent(s): b9a77c9

Upload 3 files

Browse files
Files changed (3) hide show
  1. app.py +47 -0
  2. modelo_churn.joblib +3 -0
  3. requirements.txt +4 -0
app.py ADDED
@@ -0,0 +1,47 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import gradio as gr
2
+ import joblib
3
+ import pandas as pd
4
+
5
+ # 1. Cargar el modelo de Churn
6
+ # Usamos try/except por si olvidaste ejecutar el entrenar.py
7
+ try:
8
+ modelo = joblib.load("modelo_churn.joblib")
9
+ except:
10
+ modelo = None
11
+
12
+ # 2. Funci贸n de predicci贸n
13
+ def predecir_abandono(antiguedad, pago_mensual, es_senior):
14
+ if modelo is None:
15
+ return {"Error: Modelo no encontrado": 1}
16
+
17
+ # Preparamos los datos igual que en el entrenamiento
18
+ # es_senior viene del checkbox (True/False), lo convertimos a 1 o 0
19
+ senior_num = 1 if es_senior else 0
20
+
21
+ datos = pd.DataFrame([[antiguedad, pago_mensual, senior_num]],
22
+ columns=['tenure', 'MonthlyCharges', 'SeniorCitizen'])
23
+
24
+ # Predecir probabilidades
25
+ # proba[0] = Probabilidad de quedarse (No Churn)
26
+ # proba[1] = Probabilidad de irse (Yes Churn)
27
+ proba = modelo.predict_proba(datos)[0]
28
+
29
+ return {
30
+ "Cliente Fiel (Se queda)": float(proba[0]),
31
+ "Riesgo de Abandono (Churn)": float(proba[1])
32
+ }
33
+
34
+ # 3. Interfaz Web
35
+ interfaz = gr.Interface(
36
+ fn=predecir_abandono,
37
+ inputs=[
38
+ gr.Slider(minimum=0, maximum=72, label="Antig眉edad (Meses)", info="驴Cu谩nto tiempo lleva con nosotros?"),
39
+ gr.Number(label="Pago Mensual ($)", value=50.0),
40
+ gr.Checkbox(label="驴Es Adulto Mayor (Senior)?")
41
+ ],
42
+ outputs=gr.Label(num_top_classes=2, label="Predicci贸n de Riesgo"),
43
+ title="Detector de Fugas de Clientes (Churn)",
44
+ description="Introduce los datos del cliente para evaluar si est谩 en riesgo de cancelar el servicio."
45
+ )
46
+
47
+ interfaz.launch()
modelo_churn.joblib ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:3234d5a90c990346555192db47d7c95a7c18c626b9e42d691f72f545a253555c
3
+ size 6297
requirements.txt ADDED
@@ -0,0 +1,4 @@
 
 
 
 
 
1
+ scikit-learn
2
+ pandas
3
+ joblib
4
+ gradio