import pandas as pd import numpy as np from IPython.display import display from sklearn import preprocessing from sklearn.neighbors import KNeighborsRegressor from sklearn.neural_network import MLPRegressor from sklearn.preprocessing import OneHotEncoder from pickle import dump, load import gradio as gr # load the model mlp_model = load(open('mlp_classifier.pkl', 'rb')) # load the scaler my_scaler = load(open('scaler.pkl', 'rb')) hot_enc_scaler = load(open('hot_enc.pkl', 'rb')) description = ''' This small prototype is using Big Data and AI to provide an accurate estimate of FootBall player net worth in euros. ''' def predict_value(age,height_cm,weight_kg,overall_skill,potential_skill,nationality,club): #pre-processing: numerical_features = [[age,height_cm,weight_kg,overall_skill,potential_skill]] catagorical_features = [[nationality,club]] numerical_features = my_scaler.transform(numerical_features) catagorical_features = hot_enc_scaler.transform(catagorical_features).toarray() sample_player = np.concatenate((numerical_features[0], catagorical_features[0]), axis=0) #predict: predicted_value = mlp_model.predict(sample_player.reshape(1, -1)) return predicted_value demo = gr.Interface( fn=predict_value, inputs=[gr.Slider(15, 60),gr.Slider(100, 200),gr.Slider(0, 100),gr.Slider(0, 100),gr.Slider(0, 100), gr.inputs.Dropdown(["Argentina" , "Saudi Arabia", "England"]), gr.inputs.Dropdown(["FC Barcelona" , "Juventus", "Liverpool", "Al Hilal", "Al Nassr"])], outputs=[gr.Number(label='Net Worth (Euros)')], title= "TalentAI - Estimate FB Player Value (Eur)", description = description, article = "Abdulaziz Alakooz developed this prototype as part of Thkaa AI in sports contest - August 2022.") demo.launch()