Parthebhan commited on
Commit
c21b345
·
verified ·
1 Parent(s): 6e80622

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +29 -23
app.py CHANGED
@@ -6,45 +6,51 @@ with open('./xgb_waze.pickle', 'rb') as file:
6
  model = pickle.load(file)
7
 
8
  # Define the function for making predictions
9
- def salifort(last_evaluation, number_project, tenure, work_accident, promotion_last_5years, salary, department_IT, department_RandD, department_accounting, department_hr, department_management, department_marketing, department_product_mng, department_sales, department_support, department_technical, overworked):
10
- inputs = [[float(last_evaluation), float(number_project), float(tenure), float(work_accident), float(promotion_last_5years), float(salary), float(department_IT), float(department_RandD), float(department_accounting), float(department_hr), float(department_management), float(department_marketing), float(department_product_mng), float(department_sales), float(department_support), float(department_technical), float(overworked)]]
 
 
 
 
 
11
  prediction = model.predict(inputs)
12
  prediction_value = prediction[0]
13
  if prediction_value == 0:
14
- label_text = 'Employee would not leave the company 🟢'
15
  else:
16
- label_text = 'Employee will leave the company 🔴'
17
  return label_text
18
 
19
  # Create the Gradio interface
20
  salifort_ga = gr.Interface(fn=salifort,
21
  inputs = [
22
- gr.Number(0, 1, label="last_evaluation: [0 1]"),
23
- gr.Number(2, 7, label="number_project: [2 to 7]"),
24
- gr.Number(2, 10, label="tenure: [2 to 10]"),
25
- gr.Number(0, 1, label="work_accident: [0 1]"),
26
- gr.Number(0, 1, label="promotion_last_5years: [0 1]"),
27
- gr.Number(0, 2, label="salary: [0 1 2]"),
28
- gr.Number(0, 1, label="department_IT: [0 1]"),
29
- gr.Number(0, 1, label="department_RandD: [0 1]"),
30
- gr.Number(0, 1, label="department_accounting: [0 1]"),
31
- gr.Number(0, 1, label="department_hr: [0 1]"),
32
- gr.Number(0, 1, label="department_management: [0 1]"),
33
- gr.Number(0, 1, label="department_marketing: [0 1]"),
34
- gr.Number(0, 1, label="department_product_mng: [0 1]"),
35
- gr.Number(0, 1, label="department_sales: [0 1]"),
36
- gr.Number(0, 1, label="department_support: [0 1]"),
37
- gr.Number(0, 1, label="department_technical: [0 1]"),
38
- gr.Number(0, 1, label="overworked: [0 1]")
 
39
  ],
40
- outputs = "text", title="Data-driven suggestions for HR - Salifort Motors - Employee Retention",
41
  examples = [
42
  [0, 3, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0],
43
  [0, 3, 3, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1],
44
  [0, 2, 3, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0],
45
  [0, 6, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1]
46
  ],
47
- description="Employee Retention Prediction Using Machine Learning",
48
  theme='dark'
49
  )
50
 
 
6
  model = pickle.load(file)
7
 
8
  # Define the function for making predictions
9
+ def salifort(sessions, drives, total_sessions, n_days_after_onboarding, total_navigations_fav1, total_navigations_fav2, driven_km_drives, duration_minutes_drives, activity_days, driving_days, km_per_driving_day, percent_sessions_in_last_month, professional_driver, total_sessions_per_day, km_per_hour, km_per_drive, percent_of_drives_to_favorite, device2):
10
+ inputs = [['sessions', 'drives', 'total_sessions', 'n_days_after_onboarding',
11
+ 'total_navigations_fav1', 'total_navigations_fav2', 'driven_km_drives',
12
+ 'duration_minutes_drives', 'activity_days', 'driving_days',
13
+ 'km_per_driving_day', 'percent_sessions_in_last_month',
14
+ 'professional_driver', 'total_sessions_per_day', 'km_per_hour',
15
+ 'km_per_drive', 'percent_of_drives_to_favorite', 'device2']]
16
  prediction = model.predict(inputs)
17
  prediction_value = prediction[0]
18
  if prediction_value == 0:
19
+ label_text = 'User Retained 🟢'
20
  else:
21
+ label_text = 'User Churned 🔴'
22
  return label_text
23
 
24
  # Create the Gradio interface
25
  salifort_ga = gr.Interface(fn=salifort,
26
  inputs = [
27
+ gr.Number(0, 743, label="sessions: [0 to 743]")
28
+ gr.Number(0, 596, label="drives: [0 to 596]")
29
+ gr.Number(0, 1216, label="total_sessions: [0 to 1216]")
30
+ gr.Number(4, 3500, label="n_days_after_onboarding: [4 to 3500]")
31
+ gr.Number(0, 1236, label="total_navigations_fav1: [0 to 1236]")
32
+ gr.Number(0, 415, label="total_navigations_fav2: [0 to 415]")
33
+ gr.Number(60, 21183, label="driven_km_drives: [60 to 21183]")
34
+ gr.Number(18, 15852, label="duration_minutes_drives: [18 to 15852]")
35
+ gr.Number(0, 31, label="activity_days: [0 to 31]")
36
+ gr.Number(0, 30, label="driving_days: [0 to 30]")
37
+ gr.Number(0, 15420, label="km_per_driving_day: [0 to 15420]")
38
+ gr.Number(0, 1.5, label="percent_sessions_in_last_month: [0 to 1.5]")
39
+ gr.Number(0, 1, label="professional_driver: [0 to 1]")
40
+ gr.Number(0, 39, label="total_sessions_per_day: [0 to 39]")
41
+ gr.Number(72, 23642, label="km_per_hour: [72 to 23642]")
42
+ gr.Number(0, 15777, label="km_per_drive: [0 to 15777]")
43
+ gr.Number(0, 777, label="percent_of_drives_to_favorite: [0 to 777]")
44
+ gr.Number(0, 1, label="device2: [0 to 1]")
45
  ],
46
+ outputs = "text", title="Data-driven suggestions for Waze - User Churn",
47
  examples = [
48
  [0, 3, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0],
49
  [0, 3, 3, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1],
50
  [0, 2, 3, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0],
51
  [0, 6, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1]
52
  ],
53
+ description="User Churn Prediction Using Machine Learning",
54
  theme='dark'
55
  )
56