批量预测 - Amazon Fraud Detector

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

批量预测

您可以在 Amazon Fraud Detector 中使用批量预测任务来获得对一组不需要实时评分的事件的预测。例如,您可以创建批量预测任务以执行离线操作proof-of-concept,或者以每小时、每天或每周为单位回顾性评估事件风险。

您可以使用亚马逊Fraud Detector 控制台创建批量预测任务,也可以使用AWS命令行接口 (AWSCLI) 或亚马逊Fraud Detector SDK 调用 CreateBatchPredictionJobAPI 操作。

批量预测的工作原理

CreateBatchPredictionJobAPI 操作使用指定的检测器版本根据位于 Amazon S3 存储桶中的输入 CSV 文件中提供的数据进行预测。然后 API 将生成生成的 CSV 文件文件文件文件文件文件文件文件文件文件文件文件文件文件文件文件文件文件

Batch 预测作业以与GetEventPrediction操作相同的方式计算模型分数和预测结果。类似于GetEventPrediction,要创建批量预测作业,您首先创建事件类型,可选择训练模型,然后创建用于评估批处理作业中事件的检测器版本。

批量预测作业评估的事件风险评分的定价与 GetEventPrediction API 创建的分数的定价相同。有关详细信息,请参阅亚马逊Fraud Detector 定价

您一次只能运行一次。

输入与输出文件

输入 CSV 文件应包含与所选探测器版本关联的事件类型匹配的标头。输入数据文件的最大大小为 1GB。活动数量将因您的活动规模而异。

除非您为输出数据指定单独的位置,否则 Amazon Fraud Detector 会在与输入文件相同的存储桶中创建输出文件。输出文件包含来自输入文件的原始数据和以下附加列:

  • MODEL_SCORES— 详细说明与所选探测器版本相关的每个模型中事件的模型分数。

  • OUTCOMES— 详细说明所选探测器版本及其规则评估的事件结果。

  • STATUS— 表示事件是否已成功评估。如果未成功评估事件,则此列显示失败的原因代码。

  • RULE_RESULTS— 基于规则执行模式的所有匹配规则的列表。

获取批量预测

以下步骤假设您已经创建了事件类型,使用该事件类型(可选)训练了模型,并为该事件类型创建了探测器版本。

要想的权限,请参阅。
  1. 登录AWS Management Console并打开 Amazon Fraad Detector 控制台(https://console.aws.amazon.com/frauddetector)。

  2. 在 Amazon Fraud Detector 控制台的左侧导航窗格中,选择Batc h 预测,然后选择新建批量预测

  3. Job 名称中,为您的批量预测作业指定一个名称。如果您未指定姓名,亚马逊Fraud Detector 会随机生成一个任务名称。

  4. 检测器中,选择用于此批量预测的检测器。

  5. 探测器版本中,为该批量预测选择探测器版本。您可以在任何状态下选择探测器版本。如果您的探测器处于检测器版本Active状态,则会自动选择该版本,但您也可以根据需要更改此选择。

  6. IAM 角色中,选择或创建一个对您的输入和输出 Amazon S3 存储桶具有读写权限的角色。参阅 有关 IAM 角色的指南 了解更多信息。

    要获得批量预测,调用该CreateBatchPredictionJob操作的 IAM 角色必须拥有对您的输入 S3 存储桶的读取权限和对输出 S3 存储桶的写入权限。有关存储桶权限的更多信息,请参阅 Amazon S3 用户指南中的用户策略示例

  7. 输入数据位置中,指定输入数据的 Amazon S3 位置。如果您想将输出文件放在不同的 S3 存储桶中,请选择单独的数据位置进行输出,并提供输出数据的 Amazon S3 位置。

  8. (可选)为您的批量预测作业创建标签。

  9. 选择开始

    Amazon Fraud Detector 会创建批量预测任务,该任务的状态为In progress。Batch 预测作业的处理时间因事件数量和探测器版本配置而异。

要停止正在进行的批量预测作业,请转到批量预测作业详细信息页面,选择操作,然后选择停止批量预测。如果您停止批量预测作业,则不会收到该作业的任何结果。

当批量预测任务的状态更改为时Complete,您可以从指定的输出 Amazon S3 存储桶中检索任务的输出。输出文件的名称采用格式batch prediction job name_file creation timestamp_output.csv。例如,名为的作业的输出文件mybatchjobmybatchjob_ 1611170650_output.csv

要搜索由批量预测作业评估的特定事件,请在 Amazon Fraud Detector 控制台的左侧导航窗格中选择搜索过去的预测

要删除已完成的批量预测作业,请转到批量预测作业详细信息页面,选择操作,然后选择删除批量预测

有关 IAM 角色的指南

要获得批量预测,调用该CreateBatchPredictionJob操作的 IAM 角色必须拥有对您的输入 S3 存储桶的读取权限和对输出 S3 存储桶的写入权限。有关存储桶权限的更多信息,请参阅Amazon S3 用户指南中的用户策略示使用的用户策略示使用的用户策略示使用的用户策略示使用的用户策略 在 Amazon Fraud Detector 控制台上,您可以通过三个选项为Batch 预测选择 IAM 角色:

  1. 在创建新的Batch 预测作业时创建角色。

  2. 选择您之前在亚马逊Fraud Detector 控制台中创建的现有 IAM 角色。在执行此步骤之前,请务必为角色添加S3:PutObject权限。

  3. 为先前创建的 IAM 角色输入自定义 ARN。

如果收到与 IAM 角色相关的错误,请验证以下几点:

  1. 您的 Amazon S3 输入与输出存储桶位于同一区域。

  2. 您使用的 IAM 角色拥有您的输入 S3 存储桶的权限和输出 S3 存储桶的s3:PutObject权限。s3:GetObject

  3. 您正在使用的 IAM 角色具有服务主体的信任策略frauddetector.amazonaws.com

使用获取批量欺诈预测 AWS SDK for Python (Boto3)

以下示例演示使用的示例演示使用的示例演示使用的示例CreateBatchPredictionJob请求。批量预测任务必须包含以下现有资源:检测器、探测器版本和事件类型名称。以下示例假设您已经创建了事件类型sample_registrationsample_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-**' )