NannyML के लिए डेटा तैयारी

Python में मशीन लर्निंग मॉनिटरिंग

Hakim Elakhrass

Co-founder and CEO of NannyML

डेटा लोड करना

dataset_name = "green_taxi_dataset.csv"
data = pd.read_csv(dataset_name)
data.head()

छवि में डेटासेट की पहली पाँच पंक्तियों का स्क्रीनशॉट है.

Python में मशीन लर्निंग मॉनिटरिंग

डेटा प्रोसेसिंग

# Create data partition
data['partition'] = pd.cut(
    data['lpep_pickup_datetime'],
    bins= [pd.to_datetime('2016-12-01'),
           pd.to_datetime('2016-12-08'),
           pd.to_datetime('2016-12-16'),
           pd.to_datetime('2017-01-01')],
    right=False,
    labels= ['train', 'test', 'prod']
)
Python में मशीन लर्निंग मॉनिटरिंग

डेटा स्प्लिट करना

# Target column name
target = 'tip_amount'
# Features column name
features = ["PULocationID", "DOLocationID", "trip_distance", "VendorID", "pickup_time"]
# Train set
X_train = data.loc[data['partition'] == 'train', features]
y_train = data.loc[data['partition'] == 'train', target]

# Test set (later reference set)
X_test = data.loc[data['partition'] == 'test', features]
y_test = data.loc[data['partition'] == 'test', target]

# Production set (later analysis set)
X_prod = data.loc[data['partition'] == 'prod', features]
y_prod = data.loc[data['partition'] == 'prod', target]
Python में मशीन लर्निंग मॉनिटरिंग

मॉडल बनाना

  • lightgbm लाइब्रेरी से LGBMRegressor ट्रेन करें
  • टेस्ट सेट पर मॉडल का मूल्यांकन करें
  • मॉडल डिप्लॉय करें
# Training the model
model = LGBMRegressor(random_state=42)
model.fit(X_train, y_train)

# Making predictions
y_pred_train = model.predict(X_train)
y_pred_test = model.predict(X_test)

# Evaluating the model on train and test set
mae_train = MAE(y_train, y_pred_train)
mae_test = MAE(y_test, y_pred_test)

# Deploying the model to production
y_pred_prod = model.predict(X_prod)
Python में मशीन लर्निंग मॉनिटरिंग

Reference और Analysis सेट बनाना

Reference period

  • टेस्ट सेट का उपयोग करता है

  • ग्राउंड ट्रुथ आवश्यक है

  • बेसलाइन परफॉर्मेंस सेट करता है

Analysis period

  • नवीनतम प्रोडक्शन डेटा

  • ग्राउंड ट्रुथ वैकल्पिक है

  • NannyML डेटा ड्रिफ्ट और परफॉर्मेंस का विश्लेषण करता है

# Creating reference set
reference = X_test.copy() # Test set features
reference['y_pred'] = y_pred_test # Predictions
reference['tip_amount'] = y_test # Labels
reference = reference.join(
    data['lpep_pickup_datetime']) # Timestamp
# Creating analysis set
analysis = X_prod.copy() # Production features
analysis['y_pred'] = y_pred_prod # Predictions
analysis = analysis.join(
    data['lpep_pickup_datetime']) # Timestamp
Python में मशीन लर्निंग मॉनिटरिंग

Reference सेट उदाहरण

  • Timestamp - जब ऑब्जर्वेशन हुआ (वैकल्पिक)
  • Features - हमारे मॉडल को दिए गए फीचर्स
  • Model outputs
    • Predictions - मॉडल द्वारा निकला प्रेडिक्शन स्कोर
    • Prediction class labels - थ्रेशहोल्डेड प्रॉबेबिलिटी स्कोर
  • Target - ग्राउंड ट्रुथ रखता है

छवि में reference सेट की पहली पाँच पंक्तियाँ दिखाई गई हैं.

Python में मशीन लर्निंग मॉनिटरिंग

अभ्यास करते हैं!

Python में मशीन लर्निंग मॉनिटरिंग

Preparing Video For Download...