本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
交易欺诈见解
交易欺诈洞察模型类型旨在检测在线欺诈或 card-not-present交易欺诈。Transaction Fraud Insights 是一种受监督的机器学习模型,这意味着它使用欺诈和合法交易的历史示例来训练模型。
Transaction Fraud Insights 模型使用一系列机器学习算法进行数据扩充、转换和欺诈分类。它利用功能工程引擎来创建实体级和事件级聚合。作为模型训练过程的一部分,Transaction Fraud Insights使用第三方数据(例如IP地址或信用卡的发卡银行)丰富了IP地址和BIN号等原始数据元素。除了第三方数据外,Transaction Fraud Insights还使用深度学习算法,这些算法考虑了在亚马逊上看到的欺诈模式,AWS这些欺诈模式使用梯度树提升算法成为模型的输入特征。
为了提高性能,Transaction Fraud Insights通过贝叶斯优化过程优化梯度树提升算法的超参数,按顺序训练数十种不同的模型,这些模型具有不同的模型参数(例如树木数量、树木深度、每片树叶的样本数)以及不同的优化策略,例如增加少数族裔欺诈群体的权重以实现极低的欺诈率。
作为模型训练过程的一部分,Transaction Fraud 模型的特征工程引擎会计算训练数据集中每个唯一实体的值,以帮助改进欺诈预测。例如,在训练过程中,Amazon Fraud Detector 会计算并存储实体上次购买的时间,并在您每次调用GetEventPrediction
或 SendEvent
API 时动态更新此值。在欺诈预测期间,事件变量与其他实体和事件元数据相结合,以预测交易是否为欺诈行为。
选择数据源
交易欺诈洞察模型仅使用亚马逊欺诈探测器(INGESTED_EVENTS)内部存储的数据集进行训练。这允许 Amazon Fraud Detector 持续更新有关您正在评估的实体的计算值。有关可用数据源的更多信息,请参见 事件数据存储
准备数据
在训练交易欺诈洞察模型之前,请确保您的数据文件包含准备事件数据集中提到的所有标题。Transaction Fraud Insights 模型将收到的新实体与数据集中欺诈和合法实体的示例进行比较,因此为每个实体提供许多示例会很有帮助。
Amazon Fraud Detector 会自动将存储的事件数据集转换为正确的训练格式。模型完成训练后,您可以查看性能指标并确定是否应将实体添加到训练数据集中。
选择数据
默认情况下,Transaction Fraud Insights 会根据您选择的事件类型对存储的整个数据集进行训练。您可以选择设置时间范围以减少用于训练模型的事件。设置时间范围时,请确保用于训练模型的记录有足够的时间成熟。也就是说,已经过了足够的时间来确保正确识别合法和欺诈记录。例如,对于信用卡拒付欺诈,通常需要 60 天或更长时间才能正确识别欺诈事件。为了获得最佳模型性能,请确保训练数据集中的所有记录都已成熟。
无需选择代表理想欺诈率的时间范围。Amazon Fraud Detector 会自动对您的数据进行采样,以在欺诈率、时间范围和实体数量之间取得平衡。
如果您选择的时间范围没有足够的事件来成功训练模型,Amazon Fraud Detector 将在模型训练期间返回验证错误。对于存储的数据集,EVENT_LABEL 字段是可选的,但必须对事件进行标记才能包含在训练数据集中。在配置模型训练时,您可以选择是忽略未标记的事件,为未标记的事件假设合法标签,还是为未标记的事件使用欺诈性标签。
事件变量
除了必需的事件元数据外,用于训练模型的事件类型必须包含至少 2 个变量,这些变量已通过数据验证,最多可包含 100 个变量。通常,您提供的变量越多,模型就越能更好地区分欺诈和合法事件。尽管 Transaction Fraud Insight 模型可以支持数十个变量,包括自定义变量,但我们建议您包括 IP 地址、电子邮件地址、支付工具类型、订单价格和信用卡 BIN。
验证数据
作为训练过程的一部分,Transaction Fraud Insights 会验证训练数据集是否存在可能影响模型训练的数据质量问题。验证数据后,Amazon Fraud Detector 会采取适当的措施来构建尽可能好的模型。这包括针对潜在的数据质量问题发出警告,自动删除存在数据质量问题的变量,或者发出错误并停止模型训练过程。有关更多信息,请参阅数据集验证。
Amazon Fraud Detector 将发出警告,但如果唯一实体的数量少于 1,500 个,则会继续训练模型,因为这可能会影响训练数据的质量。如果您收到警告,请查看绩效指标。