

截至 2025 年 11 月 7 日，亚马逊 Fraud Detector 不再向新客户开放。要获得与 Amazon Fraud Detector 类似的功能 SageMaker，请浏览亚马逊 AutoGluon、和 AWS WAF。

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

# 批量预测
<a name="batch-predictions"></a>

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

您可以使用 [Amazon Fraud Detector 控制台](https://console.aws.amazon.com/frauddetector)创建批量预测任务，也可以使用 AWS 命令行界面 (AWS CLI) 或其中一个亚马逊欺诈检测器调用 [CreateBatchPredictionJob](https://docs.aws.amazon.com/frauddetector/latest/api/API_CreateBatchPredictionJob.html)API 操作 SDKs。

**Topics**
+ [

## 批量预测的工作原理
](#how-batch-predictions-works)
+ [

## 输入和输出文件
](#input-and-output-files)
+ [

## 获取批量预测
](#getting-batch-predictions)
+ [

## 有关 IAM 角色的指南
](#guidance-iam-roles)
+ [

## 使用获取批量欺诈预测 适用于 Python (Boto3) 的 AWS SDK
](#get-a-batch-fraud-prediction-using-the-aws-python-sdk)

## 批量预测的工作原理
<a name="how-batch-predictions-works"></a>

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

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

批量预测作业评估的事件风险评分的定价与 `GetEventPrediction` API 创建的分数的定价相同。有关详情，请参阅 [Amazon Fraud Detector 定价](https://aws.amazon.com/fraud-detector/pricing/)。

一次只能运行一个批量预测作业。

## 输入和输出文件
<a name="input-and-output-files"></a>

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

除非您为输出数据指定单独的位置，否则 Amazon Fraud Detector 会在与输入文件相同的存储桶中创建输出文件。输出文件包含来自输入文件的原始数据和以下附加列：
+ `MODEL_SCORES`— 详细说明与所选探测器版本关联的每个模型中事件的模型分数。
+ `OUTCOMES`— 详细说明所选探测器版本及其规则所评估的事件结果。
+ `STATUS`— 表示是否成功评估了事件。如果未成功评估事件，则此列显示失败的原因代码。
+ ` RULE_RESULTS`— 基于规则执行模式的所有匹配规则的列表。

## 获取批量预测
<a name="getting-batch-predictions"></a>

以下步骤假设您已经创建了事件类型，使用该事件类型训练了模型（可选），并为该事件类型创建了检测器版本。

**获取批量预测**

1. 登录 AWS 管理控制台 并打开 Amazon Fraud Detector 控制台，网址为 [https://console.aws.amazon.com/fra](https://console.aws.amazon.com/frauddetector) uddetector。

1. 在 Amazon Fraud Detector 控制台的左侧导航窗格中，选择 “**批量预测**”，然后选择 “**新建批量预测**”。

1. 在 **Job 名称**中，为您的批量预测作业指定一个名称。如果您不指定名称，Amazon Fraud Detector 会随机生成一个任务名称。

1. 在 D **etec** tor 中，为该批量预测选择检测器。

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

1. 在 **IAM 角色**中，选择或创建对您的输入和输出 Amazon S3 存储桶具有读写权限的角色。请参阅[有关 IAM 角色的指南](#guidance-iam-roles)了解更多信息。

   要获得批量预测，调用该`CreateBatchPredictionJob`操作的 IAM 角色必须具有对输入 S3 存储桶的读取权限和对输出 S3 存储桶的写入权限。有关存储桶权限的更多信息，请参阅 *Amazon S3 用户指南中的用户*[策略示例](https://docs.aws.amazon.com/AmazonS3/latest/userguide/example-policies-s3.html)。

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

1. （可选）为您的批量预测作业创建标签。

1. 选择**启动**。

   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 角色的指南
<a name="guidance-iam-roles"></a>

要获得批量预测，调用该[CreateBatchPredictionJob](https://docs.aws.amazon.com/frauddetector/latest/api/API_CreateBatchPredictionJob.html)操作的 IAM 角色必须具有对输入 S3 存储桶的读取权限和对输出 S3 存储桶的写入权限。有关存储桶权限的更多信息，请参阅 Amazon S3 用户指南中的用户策略示例。在 Amazon Fraud Detector 控制台上，您可以通过三个选项为批量预测选择 IAM 角色：

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

1. 选择您之前在 Amazon Fraud Detector 控制台中创建的现有 IAM 角色。在执行此步骤之前，请务必为该角色添加`S3:PutObject`权限。

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

如果您收到与您的 IAM 角色相关的错误，请验证以下内容：

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

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

1. 您正在使用的 IAM 角色具有服务委托人的信任策略`frauddetector.amazonaws.com`。

## 使用获取批量欺诈预测 适用于 Python (Boto3) 的 AWS SDK
<a name="get-a-batch-fraud-prediction-using-the-aws-python-sdk"></a>

以下示例显示了 [CreateBatchPredictionJob](https://docs.aws.amazon.com/frauddetector/latest/api/API_CreateBatchPredictionJob.html)API 的示例请求。批量预测作业必须包含以下现有资源：检测器、检测器版本和事件类型名称。以下示例假设您已经创建了事件类型`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-**'
)
```