本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
批量预测
您可以在 Amazon Fraud Detector 中使用批量预测作业来预测一组不需要实时评分的事件。例如,您可以创建一个批量预测任务来执行离线任务 proof-of-concept,或者每小时、每天或每周对事件风险进行回顾性评估。
您可以使用 Amazon Fraud Detector 控制台
批量预测的工作原理
CreateBatchPredictionJob
API 操作使用指定的检测器版本,根据位于 Amazon S3 存储桶中的输入 CSV 文件中提供的数据进行预测。然后,API 会将生成的 CSV 文件返回到 S3 存储桶。
Batch 预测作业以与GetEventPrediction
操作相同的方式计算模型分数和预测结果。与创建批量预测作业类似,首先要创建事件类型,也可以训练模型,然后创建一个检测器版本来评估批处理作业中的事件。GetEventPrediction
批量预测作业评估的事件风险评分的定价与 GetEventPrediction
API 创建的分数的定价相同。有关详情,请参阅 Amazon Fraud Detector 定价
一次只能运行一个批量预测作业。
输入和输出文件
输入 CSV 文件应包含与所选检测器版本关联的事件类型相匹配的标头。输入数据文件的最大大小为 1GB。活动数量将因您的活动规模而异。
除非您为输出数据指定单独的位置,否则 Amazon Fraud Detector 会在与输入文件相同的存储桶中创建输出文件。输出文件包含来自输入文件的原始数据和以下附加列:
MODEL_SCORES
— 详细说明与所选探测器版本关联的每个模型中事件的模型分数。OUTCOMES
— 详细说明所选探测器版本及其规则所评估的事件结果。STATUS
— 表示是否成功评估了事件。如果未成功评估事件,则此列显示失败的原因代码。-
RULE_RESULTS
— 基于规则执行模式的所有匹配规则的列表。
获取批量预测
以下步骤假设您已经创建了事件类型,使用该事件类型训练了模型(可选),并为该事件类型创建了检测器版本。
获取批量预测
-
登录 AWS Management Console 并打开 Amazon Fraud Detector 控制台,网址为 https://console.aws.amazon.com/fra
uddetector。 -
在 Amazon Fraud Detector 控制台的左侧导航窗格中,选择 “批量预测”,然后选择 “新建批量预测”。
-
在 Job 名称中,为您的批量预测作业指定一个名称。如果您不指定名称,Amazon Fraud Detector 会随机生成一个任务名称。
-
在 D etec tor 中,为该批量预测选择检测器。
-
在探测器版本中,为该批量预测选择检测器版本。您可以选择任何状态的探测器版本。如果您的探测器的探测器版本处于
Active
状态,则会自动选择该版本,但您也可以根据需要更改此选择。 -
在 IAM 角色中,选择或创建对您的输入和输出 Amazon S3 存储桶具有读写权限的角色。请参阅有关 IAM 角色的指南了解更多信息。
要获得批量预测,调用该
CreateBatchPredictionJob
操作的 IAM 角色必须具有对输入 S3 存储桶的读取权限和对输出 S3 存储桶的写入权限。有关存储桶权限的更多信息,请参阅 Amazon S3 用户指南中的用户策略示例。 -
在输入数据位置中,指定输入数据的 Amazon S3 位置。如果您想将输出文件放在不同的 S3 存储桶中,请选择单独的数据位置进行输出,然后为您的输出数据提供 Amazon S3 位置。
(可选)为您的批量预测作业创建标签。
选择启动。
Amazon Fraud Detector 会创建批量预测作业,该任务的状态为
In progress
。Batch 预测任务的处理时间因事件数量和检测器版本配置而异。
要停止正在进行的批量预测作业,请转到批量预测作业详细信息页面,选择操作,然后选择停止批量预测。如果您停止批量预测作业,则不会收到该作业的任何结果。
当批量预测任务的状态更改为时Complete
,您可以从指定的输出 Amazon S3 存储桶中检索任务的输出。输出文件的名称采用以下格式batch prediction job name_file creation
timestamp_output.csv
。例如,名为的作业的输出文件mybatchjob
是mybatchjob_
1611170650_output.csv
。
要搜索由批量预测任务评估的特定事件,请在 Amazon Fraud Detector 控制台的左侧导航窗格中,选择搜索过去的预测。
要删除已完成的批量预测作业,请转到批量预测作业详细信息页面,选择操作,然后选择删除批量预测。
有关 IAM 角色的指南
要获得批量预测,调用该CreateBatchPredictionJob操作的 IAM 角色必须具有对输入 S3 存储桶的读取权限和对输出 S3 存储桶的写入权限。有关存储桶权限的更多信息,请参阅 Amazon S3 用户指南中的用户策略示例。在 Amazon Fraud Detector 控制台上,您可以通过三个选项为批量预测选择 IAM 角色:
-
在创建新的 Batch Prediction 作业时创建角色。
-
选择您之前在 Amazon Fraud Detector 控制台中创建的现有 IAM 角色。在执行此步骤之前,请务必为该角色添加
S3:PutObject
权限。 -
为之前创建的 IAM 角色输入自定义 ARN。
如果您收到与您的 IAM 角色相关的错误,请验证以下内容:
-
您的 Amazon S3 输入和输出存储桶与您的探测器位于同一区域。
-
您正在使用的 IAM 角色拥有您的输入 S3 存储桶的
s3:PutObject
权限和对输出 S3 存储桶的权限。s3:GetObject
-
您正在使用的 IAM 角色具有服务委托人的信任策略
frauddetector.amazonaws.com
。
使用获取批量欺诈预测 适用于 Python (Boto3) 的 AWS SDK
以下示例显示了 CreateBatchPredictionJobAPI 的示例请求。批量预测作业必须包含以下现有资源:检测器、检测器版本和事件类型名称。以下示例假设您已经创建了事件类型sample_registration
sample_detector
、检测器和检测器版本1
。
import boto3 fraudDetector = boto3.client('frauddetector') fraudDetector.create_batch_prediction_job ( jobId = 'sample_batch', inputPath = 's3://bucket_name/input_file_name.csv', outputPath = 's3://bucket_name/', eventTypeName = 'sample_registration', detectorName = 'sample_detector', detectorVersion = '1', iamRoleArn = 'arn:aws:iam::**:role/service-role/AmazonFraudDetector-DataAccessRole-**' )