> ## Documentation Index
> Fetch the complete documentation index at: https://docs.didit.me/llms.txt
> Use this file to discover all available pages before exploring further.

# AML 匹配分数：身份置信度计算公式

> 了解 Didit 的 AML 匹配分数如何通过姓名、出生日期和国家/地区匹配衡量身份置信度。支持微调权重与阈值，有效减少误报。

**匹配分数**是一项加权置信度指标，用于确定**潜在的 AML 匹配项与被筛查个体的吻合程度**。该分数用于将各个匹配项分类为**误报**或需要进一步审核的**可能匹配项**。

![Didit AML 匹配分数配置展示了加权名称、出生日期和国家/地区阈值](https://mintcdn.com/didit-0f962782/z6T2GHM4Zh-iSj-K/images/aml-match-score-config.jpg?fit=max\&auto=format\&n=z6T2GHM4Zh-iSj-K\&q=85\&s=76d3124f99349a81e16e711f3d2816e6)

> ⚠️ **重要提示：**匹配分数决定的是**单个匹配项的分类**，而**不是**最终的 AML 状态。最终的 AML 状态（已通过/审核中/已拒绝）由非误报匹配项的[风险评分](https://docs.didit.me/zh/core-technology/aml-screening/aml-risk-score.md)决定。

## 概述

在针对 AML 观察名单筛查人员时，每个潜在匹配项都会获得一个 **0-100 的匹配分数**。该分数回答了这样一个问题：**“该匹配项实际上是不是我们正在筛查的同一个人？”**

### 匹配分数与风险评分

| 维度 | 匹配分数 | 风险评分 |
| - | - | - |
| **问题** | 这是同一个人吗？ | 该实体的风险有多高？ |
| **用途** | 将匹配项分类为误报或可能匹配项 | 确定最终的 AML 状态 |
| **考量因素** | 名称、出生日期、国家/地区、证件号码 | 国家/地区、类别、犯罪记录 |
| **阈值** | 匹配分数阈值（默认：93） | 通过阈值 / 审核阈值 |

***

## 匹配分数如何确定审核状态

每个匹配项都根据其匹配分数进行分类：

| 匹配分数 | 审核状态 | 含义 |
| - | - | - |
| 分数低于匹配分数阈值 | **误报** | 匹配项很可能**不是**同一个人 |
| 分数达到或高于匹配分数阈值 | **未审核** | 匹配项需要人工审核 |

> **默认阈值：**93%

**示例：**阈值为 93 时：

* 分数为 85 的匹配项 → **误报**（自动忽略）
* 分数为 95 的匹配项 → **未审核**（需要审核，风险评分决定紧迫性）

### 审核状态详解

所有 AML 匹配项都会根据其匹配分数获得以下两种初始状态之一：

| 状态 | 说明 | 何时设置 |
| - | - | - |
| **误报** | 该匹配项很可能与被筛查个体**不是**同一个人。排除在风险评估之外。 | 匹配分数 \< 阈值 |
| **未审核** | 该匹配项为可能匹配项，需要人工审核以确认或排除。 | 匹配分数 ≥ 阈值 |

人工审核后，合规官可以将状态更新为：

| 状态 | 说明 |
| - | - |
| **已确认匹配** | 该匹配项已被核实为同一个人。 |
| **无法定论** | 无法确定该匹配项是否为同一个人。 |

> [!NOTE]
>
> ### **提示:** 您可以在控制台中通过查看 AML 概览或点击特定匹配项查看其详情来更改匹配项的审核状态。

***

## 匹配分数的计算方式

### 步骤 1: 基础分数计算

基础分数使用三个具有可配置权重的组件进行计算：

```
Base Score = (Name Score × Name Weight) + (DOB Score × DOB Weight) + (Country Score × Country Weight)
```

| 组件 | 默认权重 | 说明 |
| - | - | - |
| **名称** | 60% | 被筛查名称与匹配名称之间的模糊字符串相似度 |
| **出生日期** | 25% | 完全匹配、部分匹配（仅年份）或不匹配评分 |
| **国家/国籍** | 15% | 被筛查国籍与匹配国家/地区之间的比对 |

> **注意：**权重之和必须始终为 100%。

### 步骤 2: 证件号码“金钥匙”逻辑

计算出基础分数后，将使用特殊的覆盖逻辑单独评估证件号码：

| 场景 | 影响 | 示例 |
| - | - | - |
| **匹配** | 将分数覆盖为 **100** | 护照号码完全匹配 |
| **中性** | 保持基础分数不变 | 证件类型不同，或一方缺失 |
| **硬性不匹配** | 扣减 50 分 | 证件类型相同但取值不同 |

这种方法认识到匹配的证件号码是身份的决定性证明（“金钥匙”），而证件类型不匹配则不应扣减分数。

***

## 评分构成要素详情

### 姓名相似度（0-100）

姓名匹配使用来自 RapidFuzz 的 **WRatio 算法**，该算法能够较好地应对以下情况：

* 打字错误与拼写错误
* 词序差异（"John Smith" 对比 "Smith, John"）
* 中间名变体（"Robert J. Smith" 对比 "Robert James Smith"）
* 长度差异

### 出生日期评分

| 场景 | 分数 | 示例 |
| - | - | - |
| **完全匹配** | 100% | "1985-03-15" 与 "1985-03-15" 匹配 |
| **年份匹配（匹配项仅有年份）** | 100% | "1985-03-15" 与 "1985" 匹配 — 视为完全匹配，因为匹配项仅提供了年份级别的精度 |
| **年份匹配（日/月不同）** | 50% | "1985-03-15" 与 "1985-06-20" 匹配 — 年份相同但具体日期不同 |
| **年份不匹配** | -100%（扣分） | "1985-03-15" 与 "1990-03-15" 不匹配 |
| **无数据** | 0%（中立） | 任意一方缺失出生日期 |

> **重要说明：** 当匹配项仅提供年份（例如 "1974"）时，与该年份匹配将计为**完全匹配**，因为可供核验的信息仅此而已。

### 国家/地区/国籍评分

| 场景 | 分数 | 示例 |
| - | - | - |
| **完全匹配** | 100% | "ES" 与 "Spain" 或 "ESP" 匹配 |
| **匹配项无数据** | 0%（中立） | 匹配项无国家/地区信息 |
| **不匹配** | -50%（扣分） | "ES" 与 "France" 不匹配 |

系统会自动在以下格式之间进行转换：

* ISO alpha-2 代码（ES）
* ISO alpha-3 代码（ESP）
* 完整的国家/地区名称（Spain）

除了 `countries` 之外，系统还会检查 `citizenship` 字段。

***

## 分数归一化（重新分配权重）

当被筛查人员或匹配项缺少数据时，系统会使用**分数归一化**来避免因信息缺失而对其进行扣分。

### 示例：仅限姓名筛查

如果您仅使用姓名进行筛查（无出生日期或国家/地区）：

| 原始权重 | 归一化后权重 |
| - | - |
| 姓名：60% | 姓名：**100%** |
| 出生日期：25% | 出生日期：0%（无法比较） |
| 国家/地区：15% | 国家/地区：0%（无法比较） |

**结果：** 姓名得分即构成整个匹配分数。

### 示例：匹配项缺少国家/地区数据

如果匹配项没有国家/地区数据但有出生日期：

| 原始权重 | 归一化后权重 |
| - | - |
| 姓名：60% | 姓名：**70.6%** |
| 出生日期：25% | 出生日期：**29.4%** |
| 国家/地区：15% | 国家/地区：0%（无法比较） |

这确保了无论数据完整程度如何，评分都保持公平。

***

## 配置选项

您可以通过 API 或工作流设置自定义匹配分数的计算方式：

### 匹配分数阈值

| 设置 | 默认值 | 描述 |
| - | - | - |
| 匹配分数阈值 | 93 | 低于此阈值的匹配项将被归类为**误报**。达到或高于此阈值的匹配项为**未审核**（疑似匹配），需要进行审核。 |

### 权重（总和必须为 100）

| 设置 | 默认值 | 描述 |
| - | - | - |
| 姓名权重 | 60 | 姓名相似度的权重（0-100） |
| 出生日期权重 | 25 | 出生日期的权重（0-100） |
| 国家/地区权重 | 15 | 国家/地区/国籍的权重（0-100） |

***

## API 请求示例

```json theme={null}
{
  "full_name": "John Doe",
  "date_of_birth": "1990-01-01",
  "nationality": "USA",
  "document_number": "SAMPLE-DOC-12345",
  "aml_name_weight": 60,
  "aml_dob_weight": 25,
  "aml_country_weight": 15,
  "aml_match_score_threshold": 93
}
```

***

## 响应：分数明细

响应中的每个匹配项均包含：

* `match_score` — 计算出的匹配分数（0-100）
* `risk_score` — 计算出的风险评分（0-100）- 参见 [风险评分](https://docs.didit.me/zh/core-technology/aml-screening/aml-risk-score.md)
* `review_status` — 基于匹配分数阈值判定为 "False Positive" 或 "Unreviewed"
* `score_breakdown` — 匹配分数计算的详细明细

```json theme={null}
{
  "caption": "David Sanchez",
  "match_score": 95,
  "risk_score": 65.5,
  "review_status": "Unreviewed",
  "score_breakdown": {
    "name_score": 95,
    "name_weight": 60,
    "name_weight_normalized": 70.59,
    "name_contribution": 67.06,
    "dob_score": 100,
    "dob_weight": 25,
    "dob_weight_normalized": 29.41,
    "dob_contribution": 29.41,
    "country_score": 0,
    "country_weight": 15,
    "country_weight_normalized": 0,
    "country_contribution": 0,
    "document_number_match_type": "NEUTRAL",
    "document_number_effect": "No document number provided for screening",
    "total_score": 95
  }
}
```

***

## 完整流程：从匹配分数到最终 AML 状态

```
┌─────────────────────────────────────────────────────────────────────────────┐
│                           AML SCREENING FLOW                                 │
├─────────────────────────────────────────────────────────────────────────────┤
│                                                                             │
│  1. RETRIEVE MATCHES FROM WATCHLISTS                                        │
│     └── All matches with score ≥ 75% are included                           │
│                                                                             │
│  2. CALCULATE MATCH SCORE FOR EACH MATCH                                    │
│     Match Score = (Name × W1) + (DOB × W2) + (Country × W3)                │
│     + Golden Key document number logic                                      │
│                                                                             │
│  3. CLASSIFY MATCHES BY MATCH SCORE (Match Score Threshold = 93)           │
│     ├── Match Score < 93 → FALSE POSITIVE (excluded from risk assessment)  │
│     └── Match Score ≥ 93 → UNREVIEWED (included in risk assessment)        │
│                                                                             │
│  4. CALCULATE RISK SCORE FOR NON-FALSE-POSITIVE MATCHES                     │
│     Risk Score = (Country × 30%) + (Category × 50%) + (Criminal × 20%)     │
│                                                                             │
│  5. DETERMINE FINAL AML STATUS (based on highest risk score)               │
│     ├── Highest Risk Score < approve_threshold → APPROVED                   │
│     ├── Highest Risk Score ≤ review_threshold → IN REVIEW                   │
│     └── Highest Risk Score > review_threshold → DECLINED                    │
│                                                                             │
└─────────────────────────────────────────────────────────────────────────────┘
```

***

## 计算示例

### 示例 1: 强匹配 → 未审核

**筛查数据：**

* 姓名："Robert J. Smith"
* 出生日期："1985-03-15"
* 国家/地区："US"

**匹配数据：**

* 姓名："Robert James Smith"
* 出生日期："1985"
* 国家/地区："United States"

**计算：**

1. 姓名得分：90%（模糊匹配）
2. 出生日期得分：100%（匹配项仅有年份，且年份匹配）
3. 国家/地区得分：100%（完全匹配）

```
Match Score = (90 × 0.60) + (100 × 0.25) + (100 × 0.15)
            = 54 + 25 + 15
            = 94
```

**结果：** 匹配分数 (94) ≥ 阈值 (93) → **未审核**
→ 将计算风险评分并用于最终 AML 状态

### 示例 2: 弱匹配 → 误报

**筛查数据：**

* 姓名："John Smith"
* 出生日期："1990-05-20"
* 国家/地区："US"

**匹配数据：**

* 姓名："Johnny Smithson"
* 出生日期："1975"
* 国家/地区："Canada"

**计算：**

1. 姓名得分：72%（弱模糊匹配）
2. 出生日期得分：-100%（年份不匹配惩罚）
3. 国家/地区得分：-50%（国家/地区不匹配惩罚）

```
Match Score = (72 × 0.60) + (-100 × 0.25) + (-50 × 0.15)
            = 43.2 - 25 - 7.5
            = 10.7 → 11
```

**结果：** 匹配分数 (11) \< 阈值 (93) → **误报**
→ 该匹配项将从风险评估中排除

### 示例 3: Golden Key 覆盖

**筛查数据：**

* 姓名："John D. Smith"
* 证件号码："A12345678"

**匹配数据：**

* 姓名："Jonathan David Smith"
* 证件号码："A12345678"

**计算：**

1. 基础得分：约 70（姓名模糊匹配）
2. 证件号码：**匹配**（完全匹配）

**结果：** 分数被覆盖为 **100**（Golden Key 匹配）→ **未审核**

***

## 管理审核状态

初始分类完成后，您可以手动更新每个匹配项的审核状态：

### 在控制台中

1. 前往会话的 AML 概览页面
2. 点击特定匹配项以查看详情
3. 使用状态下拉菜单更改审核状态：
   * **已确认匹配** — 确认匹配项为同一人
   * **误报** — 将匹配项标记为不匹配
   * **无法定论** — 无法确定

***

## 最佳实践

1. **从默认阈值 (93) 开始** — 这在捕获真实匹配与过滤误报之间提供了良好的平衡。

2. **针对高风险场景降低阈值** — 如果您需要更加谨慎，请降低匹配分数阈值以捕获更多潜在匹配。

3. **有证件号码时使用证件号码** — 它们能提供最强有力的身份确认，并可以覆盖较低的匹配分数。

4. **查看归一化权重** — 检查分数明细中的归一化权重字段，以了解缺失数据如何影响最终得分。

5. **监控误报率** — 如果有过多合理匹配项被标记为误报，请调低阈值。


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.