创建自定义 Python 类
MLflow 提供了创建自定义模型的方式,以支持各种各样的用例。要创建自定义模型,MLflow 允许用户创建一个继承自 mlflow.pyfunc.PythonModel 类的 Python 类。PythonModel 类通过提供用于自定义推理逻辑和制品依赖的相关方法,实现可定制化。
在本练习中,您将为一个自定义模型创建一个新的 Python 类:它会加载特定模型,并在推理后对标签进行解码。mlflow 模块会被导入。
本练习是课程的一部分
MLflow 入门
练习说明
- 创建名为
CustomPredict的 Python 类。 - 定义自定义类中用于加载制品的
load_context()方法。 - 定义用于自定义推理的
predict()方法。
交互式实操练习
通过完成这段示例代码来试试这个练习。
# Create Python Class
class ____(mlflow.pyfunc.PythonModel):
# Set method for loading model
def ____(self, context):
self.model = mlflow.sklearn.load_model("./lr_model/")
# Set method for custom inference
def ____(self, context, model_input):
predictions = self.model.predict(model_input)
decoded_predictions = []
for prediction in predictions:
if prediction == 0:
decoded_predictions.append("female")
else:
decoded_predictions.append("male")
return decoded_predictions