Titanic / app.py
antonbn's picture
import xgboost
cced6b2
raw
history blame contribute delete
No virus
1.78 kB
import gradio as gr
import numpy as np
from PIL import Image
import requests
import xgboost
import hopsworks
import joblib
project = hopsworks.login()
fs = project.get_feature_store()
mr = project.get_model_registry()
model = mr.get_model("titanic_modal", version=1)
model_dir = model.download()
model = joblib.load(model_dir + "/titanic_model.pkl")
def titanic(pclass, sex, age, sibs, par_ch, fare, deck, embarked):
input_list = []
input_list.append(pclass)
input_list.append(sex)
input_list.append(age)
input_list.append(sibs)
input_list.append(par_ch)
input_list.append(fare)
input_list.append(deck)
input_list.append(embarked)
# 'res' is a list of predictions returned as the label.
res = model.predict(np.asarray(input_list).reshape(1, -1))
# We add '[0]' to the result of the transformed 'res', because 'res' is a list, and we only want
# the first element.
return res[0]
demo = gr.Interface(
fn=titanic,
title="Titanic Survival Predictive Analytics",
description="Experiment with passenger class, sex, age, siblings, parents/children, fare, deck, and embarked to predict if a hypothetical passenger survived titanic.",
allow_flagging="never",
inputs=[
gr.inputs.Number(default=0.0, label="Passenger class"),
gr.inputs.Number(default=0.0, label="Sex"),
gr.inputs.Number(default=0.0, label="Age"),
gr.inputs.Number(default=0.0, label="Siblings"),
gr.inputs.Number(default=0.0, label="Parents/Children"),
gr.inputs.Number(default=0.0, label="Fare"),
gr.inputs.Number(default=0.0, label="Deck"),
gr.inputs.Number(default=0.0, label="Embarked"),
],
outputs=gr.inputs.Number(label="Survived"))
demo.launch()