

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

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

# 事件数据集
<a name="create-event-dataset"></a>

事件数据集是贵公司的历史欺诈数据。您将这些数据提供给 Amazon Fraud Detector 以创建欺诈检测模型。

 Amazon Fraud Detector 使用机器学习模型生成欺诈预测。每个模型都使用一种模型类型进行训练。模型类型指定用于训练模型的算法和转换。模型训练是使用您提供的数据集来创建可以预测欺诈事件的模型的过程。有关更多信息，请参阅 [Amazon Fraud Detector 的工作原理](https://docs.aws.amazon.com//frauddetector/latest/ug/how-frauddetector-works.html)

用于创建欺诈检测模型的数据集提供了事件的详细信息。事件是对欺诈风险进行评估的业务活动。例如，账户注册可以是一个事件。与账户注册事件关联的数据可以是事件数据集。Amazon Fraud Detector 使用此数据集来评估账户注册欺诈行为。

在向 Amazon Fraud Detector 提供用于创建模型的数据集之前，请务必定义创建模型的目标。您还需要确定如何使用模型，并根据您的特定要求定义评估模型性能的指标。

例如，您创建用于评估账户注册欺诈的欺诈检测模型的目标可能如下：
+ 自动批准合法注册。
+ 捕获欺诈性注册以供日后调查。

确定目标后，下一步是决定如何使用模型。以下是使用欺诈检测模型评估注册欺诈的一些示例：
+ 用于对每个账户注册进行实时欺诈检测。
+ 用于每小时对所有账户注册进行离线评估。

可用于衡量模型性能的一些指标示例包括以下内容：
+ 在生产中，性能始终优于当前的基准。
+ 捕获 X% 的欺诈登记，误报率为 Y%。
+ 最多可接受 5% 的自动批准的欺诈性注册。

## 事件数据集结构
<a name="event-dataset-structure"></a>

Amazon Fraud Detector 要求您使用 UTF-8 格式的逗号分隔值 (CSV) 以文本文件形式提供事件数据集。CSV 数据集文件的第一行必须包含文件标题。文件头由事件元数据和事件变量组成，它们描述了与事件关联的每个数据元素。标题后面是事件数据。每行都由来自单个事件的数据元素组成。
+ **事件元数据**-提供有关事件的信息。例如，EVENT\_TIMESTAMP 是一种指定事件发生时间的事件元数据。根据您的业务用例以及用于创建和训练欺诈检测模型的模型类型，Amazon Fraud Detector 会要求您提供特定的事件元数据。在 CSV 文件标题中指定事件元数据时，请使用与 Amazon Fraud Detector 指定的相同的事件元数据名称，并且仅使用大写字母。
+ **事件变量**-表示特定于您的事件的数据元素，您要使用这些数据元素来创建和训练欺诈检测模型。根据您的业务用例以及用于创建和训练欺诈检测模型的模型类型，Amazon Fraud Detector 可能会要求或建议您提供特定的事件变量。您也可以选择从事件中提供要包含在模型训练中的其他事件变量。在线注册活动的事件变量的一些示例可以是电子邮件地址、IP 地址和电话号码。在 CSV 文件标题中指定事件变量名称时，请使用您选择的任何变量名称并仅使用小写字母。
+ **事件数据**-表示从实际事件中收集的数据。在 CSV 文件中，文件标题之后的每一行都由来自单个事件的数据元素组成。例如，在在线注册事件数据文件中，每行都包含来自单个注册的数据。行中的每个数据元素都必须与相应的事件元数据或事件变量相匹配。

以下是包含账户注册事件数据的 CSV 文件示例。标题行既包含大写的事件元数据，又包含小写的事件变量，后面是事件数据。数据集中的每一行都包含与单一账户注册相关的数据元素，每个数据元素都与标题对应。

![](http://docs.aws.amazon.com/zh_cn/frauddetector/latest/ug/images/SampleEventDataset.png)


## 使用数据模型资源管理器获取事件数据集要求
<a name="prepare-event-dataset"></a>

您为创建模型而选择的模型类型定义了数据集的要求。Amazon Fraud Detector 使用您提供的数据集来创建和训练您的欺诈检测模型。在 Amazon Fraud Detector 开始创建您的模型之前，它会检查数据集是否符合大小、格式和其他要求。如果数据集不符合要求，则模型创建和训练失败。您可以使用**数据模型浏览器**来识别用于业务用例的模型类型，并深入了解已识别模型类型的数据集需求。

### 数据模型浏览器
<a name="data-models-explorer"></a>

**数据模型浏览器**是 Amazon Fraud Detector 控制台中的一个工具，可将您的业务用例与 Amazon Fraud Detector 支持的模型类型保持一致。数据模型浏览器还提供对 Amazon Fraud Detector 创建欺诈检测模型所需的数据元素的见解。在开始准备事件数据集之前，请使用数据模型浏览器来确定 Amazon Fraud Detector 推荐给您的业务使用的模型类型，并查看创建数据集所需的必备、推荐和可选数据元素列表。

**要使用数据模型浏览器，**

1. 打开 [AWS 管理控制台](https://console.aws.amazon.com/)，登录您的账户。导航至 Amazon Fraud Detector。

1. 在左侧导航窗格中，选择**数据模型资源管理器**。

1. 在**数据模型浏览器**页面的**业务用例**下，选择要评估欺诈风险的业务用例。

1. Amazon Fraud Detector 会显示与您的业务用例相匹配的推荐模型类型。模型类型定义了 Amazon Fraud Detector 用于训练您的欺诈检测模型的算法、增强功能和转换。

   记下推荐的模型类型。稍后在创建模型时将需要这个。
**注意**  
如果您没有找到自己的业务用例，请使用描述中的 “**联系我们**” 链接向我们提供您的业务用例的详细信息。我们将推荐用于为您的业务用例创建欺诈检测模型的模型类型。

1. “**数据模型见解**” 窗格提供了对为您的业务用例创建和训练欺诈检测模型所需的必备、推荐和可选数据元素的见解。使用见解窗格中的信息收集事件数据并创建数据集。

## 收集事件数据
<a name="gather-event-data"></a>

收集事件数据是创建模型的重要步骤。这是因为您的模型在预测欺诈方面的性能取决于数据集的质量。开始收集事件数据时，请记住数据**模型浏览器为您提供的用于创建数据**集的数据元素列表。您需要收集所有必须（事件元数据）数据，并根据创建模型的目标决定要包含哪些推荐和可选数据元素（事件变量）。确定要包含的每个事件变量的格式以及数据集的总大小也很重要。

**事件数据集质量**

要为您的模型收集高质量的数据集，我们建议您执行以下操作：
+ **收集成熟数据-** 使用最新数据有助于识别最新的欺诈模式。但是，要检测欺诈用例，请允许数据成熟。到期期限取决于您的业务，可能需要两周到三个月不等。例如，如果您的事件包括信用卡交易，则数据的到期日可能取决于信用卡的退款期限或调查人员做出决定所花费的时间。

  确保用于训练模型的数据集有足够的时间根据您的业务成熟。
+ **确保数据分布不会出现明显偏差——** Amazon Fraud Detector 模型训练过程会根据 EVENT\_TIMESTAMP 对你的数据集进行采样和分区。例如，如果您的数据集包含从过去 6 个月提取的欺诈事件，但仅包括最后一个月的合法事件，则数据分布被视为漂移且不稳定。不稳定的数据集可能会导致模型性能评估出现偏差。如果您发现数据分布明显偏差，请考虑通过收集与当前数据分布相似的数据来平衡数据集。
+ **确保数据集代表实施/测试模型的用例——** 否则，估计的性能可能会有偏差。假设您使用的是自动拒绝所有室内申请人的模型，但是您的模型是使用以前批准的具有历史数据集训练 data/labels 的。那么，您的模型的评估可能会不准确，因为评估基于的数据集没有被拒绝的申请人的代表。

**事件数据格式**

作为模型训练过程的一部分，Amazon Fraud Detector 会将您的大部分数据转换为所需的格式。但是，您可以轻松使用一些标准格式来提供数据，这有助于避免以后在 Amazon Fraud Detector 验证您的数据集时出现问题。下表提供了有关提供推荐事件元数据的格式的指导。

**注意**  
创建 CSV 文件时，请务必使用大写字母输入下面列出的事件元数据名称。


| 元数据名称 | 格式 | 必需 | 
| --- | --- | --- | 
| 事件\_ID | 如果提供，则必须满足以下要求：[See the AWS documentation website for more details](http://docs.aws.amazon.com/zh_cn/frauddetector/latest/ug/create-event-dataset.html) | 取决于模型类型 | 
| 事件时间戳 |  [See the AWS documentation website for more details](http://docs.aws.amazon.com/zh_cn/frauddetector/latest/ug/create-event-dataset.html)  | 是 | 
| 实体\_ID |  [See the AWS documentation website for more details](http://docs.aws.amazon.com/zh_cn/frauddetector/latest/ug/create-event-dataset.html)  | 取决于模型类型 | 
| 实体类型 | 你可以使用任何字符串 | 取决于模型类型 | 
| 事件标签 | 您可以使用任何标签，例如 “欺诈”、“合法”、“1” 或 “0”。 | 如果包含 LABEL\_TIMESTAMP 则为必填项 | 
| LABEL\_TIMESTAMP | 它必须遵循时间戳格式。 | 如果包含 EVENT\_LABEL 则为必 | 

有关事件变量的信息，请参阅[变量](https://docs.aws.amazon.com//frauddetector/latest/ug/variables.html)。

**重要**  
如果您正在创建账户接管见解 (ATI) 模型，请参阅，了解[准备数据](account-takeover-insights.md#preparing-training-data-ATI)有关准备和选择数据的详细信息。

**空值或缺失值**

EVENT\_TIMESTAMP 和 EVENT\_LABEL 变量不得包含任何空值或缺失值。其他变量可以为空值或缺失值。但是，我们建议您只对这些变量使用少量空值。如果 Amazon Fraud Detector 确定某个事件变量的空值或缺失值太多，它将自动省略模型中的变量。

**最小变量**

创建模型时，除了所需的事件元数据外，数据集还必须包含至少两个事件变量。这两个事件变量必须通过验证检查。

**事件数据集大小**

必需

您的数据集必须满足以下基本要求才能成功训练模型。
+ 来自至少 100 个事件的数据。
+ 数据集必须包含至少 50 个被归类为欺诈的事件（行）。

推荐

我们建议您的数据集包含以下内容，以便成功训练模型并获得良好的模型性能。
+ 包括至少三周的历史数据，但最多包含六个月的数据。
+ 包括至少 1 万个总事件数据。
+ 包括至少 400 个被归类为欺诈的事件（行）和 400 个归类为合法的事件（行）。
+ 如果您的模型类型需要 ENTITY\_ID，则应包括 100 个以上的唯一实体。

## 数据集验证
<a name="dataset-validation"></a>

在 Amazon Fraud Detector 开始创建您的模型之前，它会检查用于训练模型的数据集中包含的变量是否符合大小、格式和其他要求。如果数据集未通过验证，则不会创建模型。在创建模型之前，必须先修复未通过验证的变量。Amazon Fraud Detector 为您提供*数据分析器*，在开始训练模型之前，您可以使用它来帮助您识别和修复数据集的问题

**数据分析器**

Amazon Fraud Detector 提供了一种开源工具，用于对模型训练进行分析和准备数据。这种自动数据分析器可帮助您避免常见的数据准备错误，并识别可能对模型性能产生负面影响的潜在问题，例如映射错误的变量类型。Profiler 会生成直观而全面的数据集报告，包括变量统计数据、标签分布、分类和数值分析以及变量和标签相关性。它提供了有关变量类型的指导以及将数据集转换为 Amazon Fraud Detector 所需的格式的选项。

**使用数据分析器**

自动数据分析器由 AWS CloudFormation 堆栈构建，您只需点击几下即可轻松启动该堆栈。所有代码都可以在 [Github上找到](https://github.com/aws-samples/aws-fraud-detector-samples)。有关如何使用数据分析器的信息，请按照我们博客中的说明使用适用于 [Amazon Fraud Detector 的自动数据分析器更快地训练模型](https://aws.amazon.com/blogs/machine-learning/train-models-faster-with-an-automated-data-profiler-for-amazon-fraud-detector/)

**常见的事件数据集错误**

以下是 Amazon Fraud Detector 在验证事件数据集时遇到的一些常见问题。运行数据分析器后，在创建模型之前，使用此列表检查数据集是否存在错误。
+ CSV 文件不是 UTF-8 格式。
+ 数据集中的事件数小于 100。
+ 被认定为欺诈或合法的事件数量少于 50。
+ 与欺诈事件相关的唯一实体数量少于 100 个。
+ EVENT\_TIMESTAMP 中超过 0.1% 的值包含空值或支持格式以外的值。 date/timestamp 
+ EVENT\_LABEL 中超过 1% 的值包含空值或事件类型中定义的值以外的值。
+ 可用于模型训练的变量少于两个变量。

## 数据集存储
<a name="dataset-storage"></a>

收集数据集后，您可以使用 Amazon Fraud Detector 在内部存储数据集，或者使用亚马逊简单存储服务 (Amazon S3) 在外部存储数据集。我们建议您根据用于生成欺诈预测的模型来选择数据集的存储位置。有关模型类型的更多信息，请参阅[选择模型类型](https://docs.aws.amazon.com//frauddetector/latest/ug/choosing-model-type.html)。有关存储数据集的更多信息，请参阅[事件数据存储](event-data-storage.md)。