

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

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

# 模型变量重要性
<a name="model-variable-importance"></a>

*模型变量重要性*是 Amazon Fraud Detector 的一项功能，它可以对模型版本中的模型变量进行排名。根据每个模型变量对模型整体性能的相对重要性为其提供一个值。值最高的模型变量对模型来说比该模型版本的数据集中的其他模型变量更为重要，并且默认情况下列在顶部。同样，默认情况下，值最低的模型变量列在底部，与其他模型变量相比，其重要性最小。使用模型变量重要性值，您可以深入了解哪些输入正在推动模型的性能。

您可以在 Amazon Fraud Detector 控制台中或使用 [DescribeModelVersion](https://docs.aws.amazon.com/frauddetector/latest/api/API_DescribeModelVersions.html)API 查看经过训练的模型版本的模型变量重要性值。

模型变量重要性为用于训练[模型版本](https://docs.aws.amazon.com/frauddetector/latest/api/API_CreateModelVersion.html)的每个[变量](https://docs.aws.amazon.com/frauddetector/latest/api/API_TrainingDataSchema.html#FraudDetector-Type-TrainingDataSchema-modelVariables)提供以下一组值。
+ **变量类型**：变量的类型（例如，IP 地址或电子邮件）。有关更多信息，请参阅 [变量类型](variables.md#variable-types)。对于账户接管见解 (ATI) 模型，Amazon Fraud Detector 为原始变量和聚合变量类型提供了可变重要性值。原始变量类型将分配给您提供的变量。聚合变量类型被分配给一组原始变量，Amazon Fraud Detector 已将这些变量组合在一起，计算出聚合的重要性值。
+ **变量名称**：用于训练模型版本的事件变量的名称（例如、`ip_address``email_address`、`are_creadentials_valid`）。对于聚合变量类型，将列出用于计算聚合变量重要性值的所有变量的名称。
+ **变量重要性值**：一个数字，表示原始变量或聚合变量对模型性能的相对重要性。典型范围：0—10

在 Amazon Fraud Detector 控制台中，在线欺诈见解 (OFI) 或交易欺诈洞察 (TFI) 模型的模型变量重要性值显示如下。除了原始变量的重要性值外，账户接管洞察 (ATI) 模型还将提供聚合的变量重要性值。可视化图表可以很容易地看到变量之间的相对重要性，垂直虚线提供了排名最高的变量的重要性值的参考。

![模型变量重要性图表。](http://docs.aws.amazon.com/zh_cn/frauddetector/latest/ug/images/hawksnest-console-mvi-pane.png)


Amazon Fraud Detector 可以为每个 Fraud Detector 模型版本生成可变的重要性值，无需支付额外费用。

**重要**  
*2021 年 7 月 9 日*之前创建的模型版本没有可变的重要性值。必须训练模型的新版本才能生成模型变量重要性值。

## 使用模型变量重要性值
<a name="how-to-use-mvi"></a>

 您可以使用模型变量重要性值来深入了解推动模型性能向上或向下的因素，以及哪些变量的贡献最大。然后调整模型以提高整体性能。

更具体地说，要提高模型性能，请根据您的领域知识检查变量重要性值，并调试训练数据中的问题。例如，如果使用账户 ID 作为模型的输入，并且它列在顶部，请查看其变量重要性值。如果变量重要性值明显高于其余值，则您的模型可能过于适合特定的欺诈模式（例如，所有欺诈事件都来自同一个账户 ID）。但是，如果变量依赖于欺诈标签，也可能存在标签泄露的情况。根据基于您的领域知识的分析结果，您可能需要移除变量并使用更加多样化的数据集进行训练，或者保持模型原样。

同样，看看排在最后的变量。如果变量重要性值明显低于其余值，则此模型变量在训练模型时可能没有任何重要性。你可以考虑移除该变量来训练更简单的模型版本。如果您的模型变量很少，例如只有两个变量，则 Amazon Fraud Detector 仍会提供变量重要性值并对变量进行排名。但是，在这种情况下，见解将是有限的。

**重要**  
如果您发现**模型变量重要性图表中缺少变量**，则可能是由于以下原因之一。考虑修改数据集中的变量并重新训练模型。  
训练数据集中变量的唯一值计数小于 100。
训练数据集中缺少大于 0.9 的变量值。
每次要调整模型的输入变量时，都需要训练一个新的模型版本。

## 评估模型变量重要性值
<a name="how-to-evaluate-mvi"></a>

我们建议您在评估模型变量重要性值时考虑以下因素：
+ 必须始终将变量重要性值与领域知识结合起来进行评估。
+ 检查模型版本中某个变量相对于其他变量的变量重要性值的变量重要性值。不要单独考虑单个变量的变量重要性值。
+ 比较同一模型版本中变量的变量重要性值。不要比较不同模型版本中相同变量的变量重要性值，因为模型版本中变量的变量重要性值可能不同于不同模型版本中相同变量的值。如果您使用相同的变量和数据集来训练不同的模型版本，则不一定会生成相同的变量重要性值。

## 查看模型变量重要性排名
<a name="how-to-view-mvi"></a>

模型训练完成后，您可以在 Amazon Fraud Detector 控制台中或使用 [DescribeModelVersion](https://docs.aws.amazon.com/frauddetector/latest/api/API_DescribeModelVersions.html)API 查看训练过的模型版本的模型变量重要性排名。

**要使用控制台查看模型变量重要性排名，**

1. 打开 AWS 控制台并登录您的账户。导航至 Amazon Fraud Detector。

1. 在左侧导航窗格中，选择 **模型**。

1. 选择您的型号，然后选择您的模型版本。

1. 确保已选择 “**概览**” 选项卡。

1. 向下滚动查看**模型变量重要性**窗格。

## 了解模型变量重要性值的计算方式
<a name="how-mvi-value-calculated"></a>

完成每个模型版本训练后，Amazon Fraud Detector 会自动生成模型变量重要性值和模型的性能指标。为此，Amazon Fraud Detecto SHapley r 使用了加法解释 ([SHAP](https://papers.nips.cc/paper/2017/file/8a20a8621978632d76c43dfd28b67767-Paper.pdf))。SHAP 本质上是考虑所有模型变量的所有可能组合后模型变量的平均预期贡献。

SHAP 首先分配每个模型变量的贡献以预测事件。然后，它汇总这些预测以创建模型级别的变量排名。为了为预测分配每个模型变量的贡献，SHAP 会考虑所有可能的变量组合之间模型输出的差异。通过包括包括或删除特定变量集以生成模型输出的所有可能性，SHAP 可以准确地访问每个模型变量的重要性。当模型变量彼此高度相关时，这一点尤其重要。

在大多数情况下，机器学习模型不允许您移除变量。相反，您可以将模型中已删除或缺失的变量替换为一个或多个基准中的相应变量值（例如，非欺诈事件）。选择合适的基准实例可能很困难，但是 Amazon Fraud Detector 通过将此基线设置为人口平均值来简化这一操作。