Batch Scoring using a pre-trained XGBoost model

Here is the Chinese translation:


title: “使用预训练的XGBoost模型进行批量评分” weight: 4


模型训练完成后,如果目标是对大型数据集生成预测而不考虑最小化延迟,那么SageMaker Batch Transform 就是解决方案。从功能上讲,批量转换使用与实时托管相同的机制来生成预测。它需要一个Web服务器,每次接收单个观察或小批量的HTTP POST请求。然而,与实时托管端点不同(实例会一直运行直到您关闭它们),批量转换集群在作业完成时会被拆除。

在本笔记本中,我们演示如何使用处理作业从特征存储准备批量数据集,并使用Amazon S3上可用的测试数据执行批量转换。

注意:本模块依赖于在模块1 中准备的数据集和创建的特征组,以及基于上一个笔记本中训练作业的模型。

主要要点

  • 我们使用Athena查询从离线特征存储中提取特征来创建用于批量转换的测试数据集。

  • 然后我们运行一个SageMaker处理作业,将数据类型转换为’text/csv’。

  • 我们基于上一个笔记本的训练作业创建一个模型。我们使用describe_training_job boto3 api调用来获取模型数据uri和用于训练作业的容器。

  • 最后,我们使用ml.m5.xlarge实例类型运行批量转换作业,并将预测结果与其对应的输入记录关联起来。

导航到笔记本

  • 导航到主目录amazon-sagemaker-feature-store-end-to-end-workshop Jupyter Lab目录结构。然后导航到03-module-feature-transformation-and-training并打开笔记本m3_nb2_batch_transform.ipynb

  • 将内核设置为Python 3(数据科学)并选择实例为ml.t3.medium

  • 通过在每个单元格中按Shift+Enter来执行单元格。代码运行时,方括号之间会出现*。几秒钟后,代码执行将完成,*将被替换为一个数字。

  • 您可以按照笔记本中的说明继续操作。