评估模型

此页面适用于以下主要引擎版本分组中的引擎版本。如需查看其他引擎版本的页面,请使用本页面顶部的选择器。

总而言之,以下是引擎版本从 v003 到 v004(最高到 v004.008)的变更:

  • 向回测输出添加了 ObservedRecallValuesPerTypology 指标。
  • ObservedRecallValues 指标值添加了 partiesCountidentifiedPartiesCount

概览

回测结果会提供指定时间范围内模型表现的摘要。它们是通过以下方式生成的:对回测期内的所有客户进行预测,并根据可用的风险事件评估模型性能。

回测结果可用于衡量模型在不同于训练所用时间范围内的性能,也可用于衡量模型随时间推移的性能下降情况。

如何进行回测

如需创建 BacktestResult 资源,请参阅创建和管理回测结果

具体而言,您需要选择以下内容:

  • 用于回测的数据

    指定数据集和数据集日期范围内的结束时间。

    训练使用基于完整日历月的标签和特征,但不会使用所选结束时间所在月份的数据。如需了解详情,请参阅数据集时间范围

    指定用于回测的已标记数据的月数(即回测周期数)。

    使用 PerformanceTarget 字段指定要作为测试的一部分进行评估的参与方数量。

  • 根据模型预计的调查量

    指定 partyInvestigationsPerPeriodHint。回测会根据您指定的金额,在一定范围的每月调查量下评估 AML AI 模型。如需了解详情,请参阅回测输出

  • 使用一致的数据集创建的模型

    请参阅创建模型

回测周期

backtestPeriods 字段用于指定在评估相应模型的性能时,要使用多少个连续日历月的特征和标签。

以下内容适用于回测数据:

  • 评估中使用的月份是指定 endTime 之前最近的完整日历月。例如,如果 endTime2023-04-15T23:21:00Z,且 backtestPeriods5,则使用以下月份的标签:2023-03、2023-02、2023-01、2022-12 和 2022-11。
  • 在评估模型以准备投入生产使用时,您应使用最新的可用数据进行回测。
  • 回测周期必须设置为 3 或更长。回测期中有两个月用于考虑重复提醒,其余月份用于生成正标签以评估效果。

  • 避免使用重叠的月份进行训练和回测,因为这可能会导致过拟合。确保回测结束时间和训练结束时间至少相差 backtestPeriods。也就是说,

    (回测结果结束时间月份)>=(模型结束时间月份)+ backtestPeriods

您还可以选择为模型创建预测结果,并自行对模型效果进行方级分析。

回测输出

回测结果元数据包含以下指标。具体而言,这些指标可显示以下信息:

  • 模型在不同时间段内以及在各种不同的调查量或风险得分阈值下的表现

  • 可用于评估数据集一致性的衡量指标(例如,通过比较不同操作的特征族的缺失值)

指标名称 指标说明 指标值示例
ObservedRecallValues 在为回测指定的数据集上测量的召回率指标。该 API 包含 20 项此类测量结果,这些结果是在不同的工作点测得的,均匀分布在 0(不含)到 2 * partyInvestigationsPerPeriodHint 之间。API 在 partyInvestigationsPerPeriodHint 处添加了最终召回衡量指标。

除了召回率值之外,我们还分别以 partiesCountidentifiedPartiesCount 的形式提供分子和分母。
{
  "recallValues": [
    {
      "partyInvestigationsPerPeriod": 5000,
      "recallValue": 0.80,
      "partiesCount": 60,
      "identifiedPartiesCount": 48,
      "scoreThreshold": 0.42,
    },
    ...
    ...
    {
      "partyInvestigationsPerPeriod": 8000,
      "recallValue": 0.85,
      "partiesCount": 60,
      "identifiedPartiesCount": 51,
      "scoreThreshold": 0.30,
    },
  ],
}
ObservedRecallValuesPerTypology 在为回测指定的数据集上测量的风险类型级层召回率指标。衡量方式与 ObservedRecallValues 相同。
{
  "recallValuesPerTypology": [
    {
      "partyInvestigationsPerPeriod": 5000,
      "riskTypology": "risk_typology_id_1",
      "recallValue": 0.80,
      "partiesCount": 60,
      "identifiedPartiesCount": 48,
      "scoreThreshold": 0.42,
    },
    {
      "partyInvestigationsPerPeriod": 8000,
      "riskTypology": "risk_typology_id_1",
      "recallValue": 0.90,
      "partiesCount": 60,
      "identifiedPartiesCount": 54,
      "scoreThreshold": 0.30,
    },
    ...
    ...
    {
      "partyInvestigationsPerPeriod": 8000,
      "riskTypology": "risk_typology_id_2",
      "recallValue": 0.75,
      "partiesCount": 4
      "identifiedPartiesCount": 3,
      "scoreThreshold": 0.30,
    },
  ],
}
缺失

每个特征系列中所有特征的缺失值占比。

理想情况下,所有 AML AI 功能系列都应具有接近 0 的缺失率。在某些情况下,由于无法获取这些功能系列的基础数据,因此无法进行集成。

如果任何特征系列在调优、训练、评估和预测之间的此值发生显著变化,则可能表明所使用的数据集存在不一致性。

{
  "featureFamilies": [
    {
      "featureFamily": "unusual_wire_credit_activity",
      "missingnessValue": 0.00,
    },
    ...
    ...
    {
      "featureFamily": "party_supplementary_data_id_3",
      "missingnessValue": 0.45,
    },
  ],
}
倾斜度

显示训练数据集与预测数据集或回测数据集之间偏差的指标。家庭偏度表示特征系列中特征值的分布变化,并根据特征在该系列中的重要性进行加权。最大偏度表示相应系列中任何特征的最大偏度。

偏度值的范围为 0(表示相应功能系列的值分布没有显著变化)到 1(表示变化最为显著)。如果任一类别的偏度或最大偏度值较大,则表示数据结构发生了重大变化,可能会影响模型性能。如果模型未使用相应系列中的任何特征,则系列偏度值为 -1。

对于较大的偏度值,您应执行以下操作之一:

  • 调查相应功能系列所用数据的变化(请参阅模型治理支持材料),并修复所有输入数据问题
  • 使用最新数据重新训练模型

您应根据对偏差指标在几个月内的自然变化的观察,为处理家庭和最大偏差值设置阈值。

{
  "featureFamilies": [
    {
      "featureFamily": "unusual_wire_credit_activity",
      "familySkewValue": 0.10,
      "maxSkewValue": 0.14,
    },
    ...
    ...
    {
      "featureFamily": "party_supplementary_data_id_3",
      "familySkewValue": 0.11,
      "maxSkewValue": 0.11,
    },
  ],
}