File size: 1,556 Bytes
c47a4ca
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
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
44
# Fonction de prédiction
import gradio as gr
import joblib
import pandas as pd
import numpy as np
from keras.models import load_model
#Import de la liste des noms des variables catégorielles
cat_data_columns = joblib.load('Extracurricular Activities_encoder.joblib')
# importer les encodeurs

encoder=joblib.load('Extracurricular Activities_encoder.joblib')
# importer le modèle
model = load_model('DNN_model.h5')
# importer le scaler
scaler = joblib.load('scaler.joblib')
# Fonction de prédiction simple
def prediction_func(Hours_Studied,Previous_Scores, Extracurricular, Sleep_Hours, Sample):
  # encoder les valeurs
  Extracurricular = encoder.transform([Extracurricular])[0]
  # vecteur des valeurs
  x_new = np.array([Hours_Studied,Previous_Scores,Extracurricular, Sleep_Hours, Sample]).reshape(1, -1)
  # normaliser les valeurs
  x_new = scaler.transform(x_new)
  # prédire la valeur
  y_pred = np.round(model.predict(x_new))
  # retourner
  return y_pred[0][0]

# créer les inputs
inputs = [gr.Number(label="Hours Studied"),
          gr.Number(label="Previous Scores"),
          gr.Radio(choices=['Yes','No'] , label="Extracurricular Activities"),
          gr.Number( label="Sleep Hours"),
          gr.Number( label="Sample Question Paper"),
          
         ]
# créer les outputs
outputs = gr.Textbox(label = 'Performance')
# Interface
Interface =gr.Interface(fn = prediction_func,
             inputs = inputs,
             outputs = outputs,
             title = 'Performance prediction ', theme='earneleh/paris')
Interface.launch()