mirror of
https://github.com/Azure/MachineLearningNotebooks.git
synced 2025-12-22 18:42:41 -05:00
34 lines
1.1 KiB
Python
34 lines
1.1 KiB
Python
import json
|
|
import numpy as np
|
|
import pandas as pd
|
|
import os
|
|
import pickle
|
|
from sklearn.externals import joblib
|
|
from sklearn.linear_model import LogisticRegression
|
|
from azureml.core.model import Model
|
|
|
|
|
|
def init():
|
|
|
|
global original_model
|
|
global scoring_explainer
|
|
|
|
# Retrieve the path to the model file using the model name
|
|
# Assume original model is named original_prediction_model
|
|
original_model_path = Model.get_model_path('original_model')
|
|
scoring_explainer_path = Model.get_model_path('IBM_attrition_explainer')
|
|
|
|
original_model = joblib.load(original_model_path)
|
|
scoring_explainer = joblib.load(scoring_explainer_path)
|
|
|
|
|
|
def run(raw_data):
|
|
# Get predictions and explanations for each data point
|
|
data = pd.read_json(raw_data)
|
|
# Make prediction
|
|
predictions = original_model.predict(data)
|
|
# Retrieve model explanations
|
|
local_importance_values = scoring_explainer.explain(data)
|
|
# You can return any data type as long as it is JSON-serializable
|
|
return {'predictions': predictions.tolist(), 'local_importance_values': local_importance_values}
|