导入 A SageMaker I 模型 - Amazon Fraud Detector

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

导入 A SageMaker I 模型

您可以选择将 SageMaker 人工智能托管的模型导入 Amazon Fraud Detector。与模型类似,可以 SageMaker 将 AI 模型添加到探测器中,并使用 GetEventPrediction API 生成欺诈预测。作为GetEventPrediction请求的一部分,Amazon Fraud Detector 将调用您的 SageMaker 人工智能终端节点并将结果传递给您的规则。

您可以将 Amazon Fraud Detector 配置为使用作为GetEventPrediction请求一部分发送的事件变量。如果您选择使用事件变量,则必须提供输入模板。Amazon Fraud Detector 将使用此模板将您的事件变量转换为调用 SageMaker AI 终端节点所需的输入有效负载。或者,您可以将 SageMaker AI 模型配置为使用作为请求一部分发送的 ByteBuffer。GetEventPrediction

Amazon Fraud Detector 支持导入使用 JSON 或 CSV 输入格式以及 JSON 或 CSV 输出格式 SageMaker 的人工智能算法。支持的 SageMaker AI 算法示例包括 XGBoost Linear Learner 和 Random Cut Forest。

使用导入 SageMaker AI 模型 适用于 Python (Boto3) 的 AWS SDK

要导入 A SageMaker I 模型,请使用 PutExternalModel API。以下示例假设 SageMaker AI 终端节点sagemaker-transaction-model已部署,处于InService状态并使用 XGBoost 算法。

输入配置指定将使用事件变量来构造模型输入(设置useEventVariablesTRUE)。如果 XGBoost 需要 CSV 输入,则输入格式为 TEXT_CSV。 csvInputTemplate 指定如何根据作为GetEventPrediction请求的一部分发送的变量构建 CSV 输入。此示例假设您已经创建了变量order_amtprev_amthist_amtpayment_type

输出配置指定 SageMaker 人工智能模型的响应格式,并将相应的 CSV 索引映射到 Amazon Fraud Detector 变量sagemaker_output_score。配置完成后,即可在规则中使用输出变量。

注意

SageMaker AI 模型的输出必须映射到带有源的变量EXTERNAL_MODEL_SCORE。您无法使用变量在控制台中创建这些变量。改为在配置模型导入时必须创建它们。

import boto3 fraudDetector = boto3.client('frauddetector') fraudDetector.put_external_model ( modelSource = 'SAGEMAKER', modelEndpoint = 'sagemaker-transaction-model', invokeModelEndpointRoleArn = 'your_SagemakerExecutionRole_arn', inputConfiguration = { 'useEventVariables' : True, 'eventTypeName' : 'sample_transaction', 'format' : 'TEXT_CSV', 'csvInputTemplate' : '{{order_amt}}, {{prev_amt}}, {{hist_amt}}, {{payment_type}}' }, outputConfiguration = { 'format' : 'TEXT_CSV', 'csvIndexToVariableMap' : { '0' : 'sagemaker_output_score' } }, modelEndpointStatus = 'ASSOCIATED' )