File size: 1,353 Bytes
c52bf18
 
 
 
 
 
5048a8c
c52bf18
 
 
5048a8c
c52bf18
 
 
 
 
 
fd5cef5
c52bf18
 
84396f8
93c9d85
72ddf12
 
1a2d4e4
72ddf12
88001d2
84396f8
f811ef7
b383bea
c52bf18
 
 
 
1a2d4e4
c52bf18
48a183a
c52bf18
6e590dd
aaa19b0
 
c52bf18
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
import gradio as gr
import pickle as pkl
import pandas as pd
from SRLib.Utilities import encoding


def predict( Fare, Idade, Sex, Pclass, SibSp ):
    df_raw = pd.DataFrame(
    {
        'Fare'   : Fare,
        'Age'    : Idade,
        'Sex'    : Sex,
        'Pclass' : Pclass,
        'SibSp'  : SibSp
                
    }, index=[0]
    )
    df = encoding.full_pipeline( df_raw )

    model = pkl.load( open( 'models/model_ridge.pkl', 'rb' ) )
    y_hat  = model._predict_proba_lr( df )[0]
    print(df)
    resp = {}
    if y_hat[1] < .55:
        resp = f"Você provavelmente não sobreviveria. Mas teria {y_hat[1]:.0%}  de chance de ser resgatado com vida."
    else :
        resp = f"|Você sobreviveria!!!| -- | Probabilidade de {y_hat[1]:.0%} ."


    return resp

demo = gr.Interface(
    fn     = predict,
    inputs = [
        gr.Dropdown( choices = [8, 10, 20, 30, 40, 50, 60, 70, 80, 90, 100, 200, 300, 500], type = 'value', label = 'Valor da passagem em GB£(Libras Esterlinas)' ),
        'number',
        gr.Dropdown( choices = ['Masculino', 'Feminino'], type = 'index', label = 'Gênero' ),
        gr.Dropdown( choices = [1, 2, 3], type = 'value', label = 'Classe' ),
        gr.Dropdown( choices = [0,1, 2, 3, 4, 5, 6, 7, 8], type = 'value', label = 'Conjujes ou Irmãos' ),
    ],
    outputs = 'label'
)   
demo.launch()