townboy commited on
Commit
6732015
·
verified ·
1 Parent(s): 6fdfdef

Fix Korean ID context dependence and publish new independent evaluation

Browse files
README.md CHANGED
@@ -25,13 +25,13 @@ model-index:
25
  type: synthetic
26
  metrics:
27
  - type: f1
28
- value: 0.8871014076
29
  name: Micro F1
30
  - type: precision
31
- value: 0.8432550519
32
  name: Micro precision
33
  - type: recall
34
- value: 0.9357575758
35
  name: Micro recall
36
  ---
37
 
@@ -75,16 +75,31 @@ print(ner(text))
75
 
76
  512 토큰을 넘는 입력은 문장 경계나 겹치는 window 단위로 나눠 추론한 뒤 원문 위치로 합쳐야 합니다. 단순히 뒷부분을 잘라내면 해당 부분의 PII를 탐지할 수 없습니다.
77
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
78
  ## 학습
79
 
80
  - 학습 문서: 9,227
81
  - Validation 문서: 1,510
82
- - Epoch: 1
83
- - Learning rate: `2e-6`
84
  - Effective batch size: 32
85
  - 최대 길이: 512
86
  - Loss: standard cross-entropy
87
- - Validation micro-F1: `0.996533`
88
 
89
  마지막 정제 학습은 class-weighted loss가 아니라 표준 cross-entropy를 사용했습니다. 이는 모델 가중치가 빠졌다는 의미가 아닙니다. 학습된 모델 가중치는 `model.safetensors`에 있으며, class weight는 학습 중 loss에만 적용되는 선택 설정입니다. 상세 값은 `training_config.json`과 `training_provenance.json`에 있습니다.
90
 
@@ -103,8 +118,8 @@ print(ner(text))
103
 
104
  | 지표 | Precision | Recall | F1 |
105
  |---|---:|---:|---:|
106
- | Macro | 0.8592 | 0.9358 | 0.8920 |
107
- | Micro | 0.8433 | 0.9358 | 0.8871 |
108
 
109
  이 점수는 문장당 PII 하나와 짧은 정형 문장 중심의 validation 점수보다 훨씬 엄격한 조건에서 측정했습니다. 표·목록·CSV·JSON, 라벨 안내어가 없는 문장, 여러 사람과 여러 PII가 함께 등장하는 긴 문서를 포함합니다.
110
 
@@ -112,39 +127,39 @@ print(ner(text))
112
 
113
  | Label | Precision | Recall | F1 |
114
  |---|---:|---:|---:|
115
- | ACCOUNT_NUMBER | 0.795 | 0.930 | 0.857 |
116
- | ADDRESS | 0.913 | 0.950 | 0.931 |
117
- | AGE | 0.887 | 0.940 | 0.913 |
118
- | ALIEN_NUMBER | 0.825 | 0.940 | 0.879 |
119
- | BIRTHDATE | 0.898 | 0.970 | 0.933 |
120
- | BLOOD_TYPE | 0.684 | 0.800 | 0.737 |
121
- | CARD_NUMBER | 0.943 | 1.000 | 0.971 |
122
- | CITY | 0.942 | 0.980 | 0.961 |
123
- | DEPARTMENT | 0.959 | 0.940 | 0.949 |
124
- | DRIVER_LICENSE | 0.784 | 0.870 | 0.825 |
125
- | EMAIL | 0.990 | 1.000 | 0.995 |
126
- | EMPLOYEE_ID | 0.673 | 0.990 | 0.802 |
127
- | GENDER | 0.904 | 0.940 | 0.922 |
128
- | HEIGHT | 0.900 | 0.990 | 0.943 |
129
- | IP_ADDRESS | 0.888 | 0.950 | 0.918 |
130
- | MAJOR | 0.830 | 0.930 | 0.877 |
131
- | MEMBER_ID | 0.712 | 0.940 | 0.810 |
132
- | NAME | 0.772 | 0.980 | 0.863 |
133
- | NATIONALITY | 0.979 | 0.950 | 0.964 |
134
- | NICKNAME | 0.546 | 0.650 | 0.594 |
135
- | PARTICIPANT_ID | 0.917 | 1.000 | 0.957 |
136
- | PASSPORTNUM | 0.961 | 0.990 | 0.975 |
137
- | PHONE | 1.000 | 0.940 | 0.969 |
138
- | POSITION | 0.519 | 0.970 | 0.676 |
139
- | RELIGION | 0.987 | 0.780 | 0.872 |
140
- | RRN | 0.882 | 0.970 | 0.924 |
141
  | SCHOOL | 0.980 | 1.000 | 0.990 |
142
- | URL | 0.951 | 0.980 | 0.966 |
143
- | USER_ID | 0.649 | 0.720 | 0.682 |
144
- | VEHICLE_NUMBER | 0.907 | 0.970 | 0.937 |
145
- | WEIGHT | 0.909 | 1.000 | 0.952 |
146
- | WORKPLACE | 0.924 | 0.970 | 0.946 |
147
- | ZIPCODE | 0.941 | 0.950 | 0.945 |
148
 
149
  계산에 사용한 TP/FP/FN과 전체 소수점 값은 `per_label_metrics.json`, 원시 평가 결과는 `raw_evaluation_results.json`에 있습니다.
150
 
@@ -154,12 +169,12 @@ print(ner(text))
154
 
155
  기존 경로인 `label_thresholds_calibration_v1.json`은 삭제하지 않고 새 파일 위치를 알려 주는 호환성 안내 파일로 유지합니다. 실제 임계값은 반드시 `label_thresholds.json` 또는 `threshold_policy.json`을 사용해야 합니다.
156
 
157
- 초기 정책에서는 low 미만 후보도 자동 폐기하지 않습니다. Calibration과 독립 최종 holdout에서 자동 채택 오탐이 없었던 `EMAIL`, `NATIONALITY`, `PASSPORTNUM`, `SCHOOL`만 `0.999` 이상에서 자동 채택 대상으로 표시하고, 나머지는 추가 검토가 필요한 후보로 둡니다. 운영 분포에서 로그와 정답이 충분히 쌓이기 전까지 low 값만 보고 탐지 후보를 폐기하는 것은 권장하지 않습니다.
158
 
159
  ## 한계
160
 
161
  - 학습 및 평가 데이터가 합성이므로 실제 개인정보, RAG 응답, OCR 문서, 업무 도메인의 성능을 보장하지 않습니다.
162
- - `NICKNAME`, `POSITION`, `USER_ID`, `BLOOD_TYPE` 최종 holdout에서 상대적으로 낮았습니다.
163
  - 이름·소속·직급처럼 형태가 고정되지 않은 PII는 문맥과 도메인의 영향을 많이 받습니다.
164
  - 정규식·체크섬으로 판별 가능한 구조적 PII는 NER 결과와 별도로 검증하는 것이 좋습니다.
165
  - 512 토큰보다 긴 문서는 window 추론이 필요합니다.
 
25
  type: synthetic
26
  metrics:
27
  - type: f1
28
+ value: 0.8642728407
29
  name: Micro F1
30
  - type: precision
31
+ value: 0.7965755175
32
  name: Micro precision
33
  - type: recall
34
+ value: 0.9445454545
35
  name: Micro recall
36
  ---
37
 
 
75
 
76
  512 토큰을 넘는 입력은 문장 경계나 겹치는 window 단위로 나눠 추론한 뒤 원문 위치로 합쳐야 합니다. 단순히 뒷부분을 잘라내면 해당 부분의 PII를 탐지할 수 없습니다.
77
 
78
+ ### 주민등록번호와 외국인등록번호 정규화
79
+
80
+ 모델은 성별·세기 코드가 문맥 단어와 충돌하는 counterfactual 예시도 학습했습니다. 그래도 구조가 명확한 13자리 번호는 확률 모델에만 맡기지 않고 7번째 숫자로 최종 라벨을 정규화하는 것이 안전합니다. `korean_id_postprocess.py`가 전체 span을 합치고 코드 `1`~`4`를 `RRN`, `5`~`8`을 `ALIEN_NUMBER`로 보정합니다.
81
+
82
+ ```python
83
+ from korean_id_postprocess import normalize_korean_id_entities
84
+
85
+ raw_entities = ner(text)
86
+ entities = normalize_korean_id_entities(text, raw_entities)
87
+ ```
88
+
89
+ 이 정규화는 번호 종류만 판별합니다. 실제 유효성은 별도의 주민등록번호·외국인등록번호 체크섬 검증을 함께 적용해야 합니다.
90
+
91
+ 직접 모델 회귀 테스트에서는 문맥 단어가 번호 코드와 충돌하는 4개 사례를 모두 통과했고, 체크섬이 유효한 무라벨 명단의 이름·번호 8개도 모두 탐지했습니다. 499토큰 입력 끝의 번호 역시 탐지했습니다. 상세 결과와 의도적으로 잘못 만든 번호에 대한 한계는 `korean_id_regression_results.json`에 기록했습니다.
92
+
93
  ## 학습
94
 
95
  - 학습 문서: 9,227
96
  - Validation 문서: 1,510
97
+ - 최종 counterfactual 정제: 1 epoch, learning rate `5e-6`
98
+ - 일반 라벨 안정화: 1 epoch, learning rate `1e-6`
99
  - Effective batch size: 32
100
  - 최대 길이: 512
101
  - Loss: standard cross-entropy
102
+ - Validation micro-F1: `0.996463`
103
 
104
  마지막 정제 학습은 class-weighted loss가 아니라 표준 cross-entropy를 사용했습니다. 이는 모델 가중치가 빠졌다는 의미가 아닙니다. 학습된 모델 가중치는 `model.safetensors`에 있으며, class weight는 학습 중 loss에만 적용되는 선택 설정입니다. 상세 값은 `training_config.json`과 `training_provenance.json`에 있습니다.
105
 
 
118
 
119
  | 지표 | Precision | Recall | F1 |
120
  |---|---:|---:|---:|
121
+ | Macro | 0.8435 | 0.9445 | 0.8834 |
122
+ | Micro | 0.7966 | 0.9445 | 0.8643 |
123
 
124
  이 점수는 문장당 PII 하나와 짧은 정형 문장 중심의 validation 점수보다 훨씬 엄격한 조건에서 측정했습니다. 표·목록·CSV·JSON, 라벨 안내어가 없는 문장, 여러 사람과 여러 PII가 함께 등장하는 긴 문서를 포함합니다.
125
 
 
127
 
128
  | Label | Precision | Recall | F1 |
129
  |---|---:|---:|---:|
130
+ | ACCOUNT_NUMBER | 0.821 | 0.870 | 0.845 |
131
+ | ADDRESS | 0.874 | 0.900 | 0.887 |
132
+ | AGE | 0.893 | 1.000 | 0.943 |
133
+ | ALIEN_NUMBER | 0.907 | 0.970 | 0.937 |
134
+ | BIRTHDATE | 0.980 | 1.000 | 0.990 |
135
+ | BLOOD_TYPE | 0.672 | 0.860 | 0.754 |
136
+ | CARD_NUMBER | 0.870 | 1.000 | 0.930 |
137
+ | CITY | 1.000 | 1.000 | 1.000 |
138
+ | DEPARTMENT | 0.958 | 0.920 | 0.939 |
139
+ | DRIVER_LICENSE | 0.833 | 0.900 | 0.865 |
140
+ | EMAIL | 0.926 | 1.000 | 0.962 |
141
+ | EMPLOYEE_ID | 0.633 | 1.000 | 0.775 |
142
+ | GENDER | 0.908 | 0.990 | 0.947 |
143
+ | HEIGHT | 0.882 | 0.970 | 0.924 |
144
+ | IP_ADDRESS | 0.797 | 0.940 | 0.862 |
145
+ | MAJOR | 0.893 | 1.000 | 0.943 |
146
+ | MEMBER_ID | 0.887 | 0.940 | 0.913 |
147
+ | NAME | 0.798 | 0.990 | 0.884 |
148
+ | NATIONALITY | 1.000 | 1.000 | 1.000 |
149
+ | NICKNAME | 0.262 | 0.710 | 0.383 |
150
+ | PARTICIPANT_ID | 0.405 | 0.980 | 0.573 |
151
+ | PASSPORTNUM | 0.990 | 0.990 | 0.990 |
152
+ | PHONE | 0.990 | 1.000 | 0.995 |
153
+ | POSITION | 0.786 | 0.990 | 0.876 |
154
+ | RELIGION | 1.000 | 0.800 | 0.889 |
155
+ | RRN | 0.912 | 0.930 | 0.921 |
156
  | SCHOOL | 0.980 | 1.000 | 0.990 |
157
+ | URL | 0.826 | 0.900 | 0.861 |
158
+ | USER_ID | 0.715 | 0.880 | 0.789 |
159
+ | VEHICLE_NUMBER | 0.807 | 0.880 | 0.842 |
160
+ | WEIGHT | 0.883 | 0.980 | 0.929 |
161
+ | WORKPLACE | 0.907 | 0.980 | 0.942 |
162
+ | ZIPCODE | 0.841 | 0.900 | 0.870 |
163
 
164
  계산에 사용한 TP/FP/FN과 전체 소수점 값은 `per_label_metrics.json`, 원시 평가 결과는 `raw_evaluation_results.json`에 있습니다.
165
 
 
169
 
170
  기존 경로인 `label_thresholds_calibration_v1.json`은 삭제하지 않고 새 파일 위치를 알려 주는 호환성 안내 파일로 유지합니다. 실제 임계값은 반드시 `label_thresholds.json` 또는 `threshold_policy.json`을 사용해야 합니다.
171
 
172
+ 초기 정책에서는 low 미만 후보도 자동 폐기하지 않습니다. Calibration에서 엄격한 조건을 통과한 `EMAIL`, `NATIONALITY`, `SCHOOL`만 `0.999` 이상에서 자동 채택 대상으로 표시하고, 나머지는 추가 검토가 필요한 후보로 둡니다. 새 독립 최종 holdout에서 이 자동 채택 구간의 FP는 0건이었습니다. 운영 분포에서 로그와 정답이 충분히 쌓이기 전까지 low 값만 보고 탐지 후보를 폐기하는 것은 권장하지 않습니다.
173
 
174
  ## 한계
175
 
176
  - 학습 및 평가 데이터가 합성이므로 실제 개인정보, RAG 응답, OCR 문서, 업무 도메인의 성능을 보장하지 않습니다.
177
+ - `NICKNAME`, `PARTICIPANT_ID`, `BLOOD_TYPE`, `EMPLOYEE_ID`, `USER_ID`는 최종 holdout에서 상대적으로 낮았습니다. 특히 `NICKNAME`의 raw F1은 `0.383`이므로 자동 확정에 사용하면 안 됩니다.
178
  - 이름·소속·직급처럼 형태가 고정되지 않은 PII는 문맥과 도메인의 영향을 많이 받습니다.
179
  - 정규식·체크섬으로 판별 가능한 구조적 PII는 NER 결과와 별도로 검증하는 것이 좋습니다.
180
  - 512 토큰보다 긴 문서는 window 추론이 필요합니다.
__pycache__/korean_id_postprocess.cpython-312.pyc ADDED
Binary file (4.23 kB). View file
 
best_validation_metrics.json CHANGED
@@ -1,10 +1,10 @@
1
  {
2
  "epoch": 1,
3
- "train_loss": 0.0082918972230706,
4
- "peak_gpu_memory_mb": 2209.9,
5
- "micro_precision": 0.9946335263380879,
6
- "micro_recall": 0.9984406010774028,
7
- "micro_f1": 0.9965334276618323,
8
  "per_label": {
9
  "ACCOUNT_NUMBER": {
10
  "precision": 1.0,
@@ -31,19 +31,19 @@
31
  "fn": 1
32
  },
33
  "ALIEN_NUMBER": {
34
- "precision": 1.0,
35
- "recall": 0.95,
36
- "f1": 0.9743589743589743,
37
- "tp": 19,
38
- "fp": 0,
39
- "fn": 1
40
  },
41
  "BIRTHDATE": {
42
- "precision": 0.9885931558935361,
43
  "recall": 1.0,
44
- "f1": 0.994263862332696,
45
  "tp": 260,
46
- "fp": 3,
47
  "fn": 0
48
  },
49
  "BLOOD_TYPE": {
@@ -71,12 +71,12 @@
71
  "fn": 0
72
  },
73
  "DEPARTMENT": {
74
- "precision": 0.9975124378109452,
75
- "recall": 0.9975124378109452,
76
- "f1": 0.9975124378109452,
77
- "tp": 802,
78
- "fp": 2,
79
- "fn": 2
80
  },
81
  "DRIVER_LICENSE": {
82
  "precision": 1.0,
@@ -127,12 +127,12 @@
127
  "fn": 0
128
  },
129
  "MAJOR": {
130
- "precision": 0.7857142857142857,
131
- "recall": 0.9166666666666666,
132
- "f1": 0.8461538461538461,
133
- "tp": 22,
134
- "fp": 6,
135
- "fn": 2
136
  },
137
  "MEMBER_ID": {
138
  "precision": 1.0,
@@ -191,11 +191,11 @@
191
  "fn": 0
192
  },
193
  "POSITION": {
194
- "precision": 0.9828431372549019,
195
  "recall": 0.9975124378109452,
196
- "f1": 0.9901234567901234,
197
  "tp": 802,
198
- "fp": 14,
199
  "fn": 2
200
  },
201
  "RELIGION": {
@@ -207,12 +207,12 @@
207
  "fn": 0
208
  },
209
  "RRN": {
210
- "precision": 0.9791666666666666,
211
- "recall": 1.0,
212
- "f1": 0.9894736842105264,
213
- "tp": 47,
214
- "fp": 1,
215
- "fn": 0
216
  },
217
  "SCHOOL": {
218
  "precision": 1.0,
@@ -231,19 +231,19 @@
231
  "fn": 0
232
  },
233
  "USER_ID": {
234
- "precision": 0.9714285714285714,
235
  "recall": 1.0,
236
- "f1": 0.9855072463768115,
237
  "tp": 34,
238
- "fp": 1,
239
  "fn": 0
240
  },
241
  "VEHICLE_NUMBER": {
242
- "precision": 1.0,
243
  "recall": 1.0,
244
- "f1": 1.0,
245
  "tp": 35,
246
- "fp": 0,
247
  "fn": 0
248
  },
249
  "WEIGHT": {
 
1
  {
2
  "epoch": 1,
3
+ "train_loss": 0.003366851370334628,
4
+ "peak_gpu_memory_mb": 2208.0,
5
+ "micro_precision": 0.9943534726143421,
6
+ "micro_recall": 0.9985823646158208,
7
+ "micro_f1": 0.9964634318856981,
8
  "per_label": {
9
  "ACCOUNT_NUMBER": {
10
  "precision": 1.0,
 
31
  "fn": 1
32
  },
33
  "ALIEN_NUMBER": {
34
+ "precision": 0.9523809523809523,
35
+ "recall": 1.0,
36
+ "f1": 0.975609756097561,
37
+ "tp": 20,
38
+ "fp": 1,
39
+ "fn": 0
40
  },
41
  "BIRTHDATE": {
42
+ "precision": 0.9923664122137404,
43
  "recall": 1.0,
44
+ "f1": 0.9961685823754789,
45
  "tp": 260,
46
+ "fp": 2,
47
  "fn": 0
48
  },
49
  "BLOOD_TYPE": {
 
71
  "fn": 0
72
  },
73
  "DEPARTMENT": {
74
+ "precision": 1.0,
75
+ "recall": 1.0,
76
+ "f1": 1.0,
77
+ "tp": 804,
78
+ "fp": 0,
79
+ "fn": 0
80
  },
81
  "DRIVER_LICENSE": {
82
  "precision": 1.0,
 
127
  "fn": 0
128
  },
129
  "MAJOR": {
130
+ "precision": 0.7241379310344828,
131
+ "recall": 0.875,
132
+ "f1": 0.7924528301886793,
133
+ "tp": 21,
134
+ "fp": 8,
135
+ "fn": 3
136
  },
137
  "MEMBER_ID": {
138
  "precision": 1.0,
 
191
  "fn": 0
192
  },
193
  "POSITION": {
194
+ "precision": 0.981640146878825,
195
  "recall": 0.9975124378109452,
196
+ "f1": 0.9895126465144972,
197
  "tp": 802,
198
+ "fp": 15,
199
  "fn": 2
200
  },
201
  "RELIGION": {
 
207
  "fn": 0
208
  },
209
  "RRN": {
210
+ "precision": 1.0,
211
+ "recall": 0.9787234042553191,
212
+ "f1": 0.989247311827957,
213
+ "tp": 46,
214
+ "fp": 0,
215
+ "fn": 1
216
  },
217
  "SCHOOL": {
218
  "precision": 1.0,
 
231
  "fn": 0
232
  },
233
  "USER_ID": {
234
+ "precision": 0.9444444444444444,
235
  "recall": 1.0,
236
+ "f1": 0.9714285714285714,
237
  "tp": 34,
238
+ "fp": 2,
239
  "fn": 0
240
  },
241
  "VEHICLE_NUMBER": {
242
+ "precision": 0.9722222222222222,
243
  "recall": 1.0,
244
+ "f1": 0.9859154929577464,
245
  "tp": 35,
246
+ "fp": 1,
247
  "fn": 0
248
  },
249
  "WEIGHT": {
config.json CHANGED
@@ -8,6 +8,7 @@
8
  "classifier_dropout": null,
9
  "dtype": "float32",
10
  "eos_token_id": null,
 
11
  "hidden_act": "gelu",
12
  "hidden_dropout_prob": 0.1,
13
  "hidden_size": 768,
@@ -166,6 +167,5 @@
166
  "transformers_version": "5.14.1",
167
  "type_vocab_size": 2,
168
  "use_cache": true,
169
- "vocab_size": 36440,
170
- "finetuning_task": "token-classification"
171
  }
 
8
  "classifier_dropout": null,
9
  "dtype": "float32",
10
  "eos_token_id": null,
11
+ "finetuning_task": "token-classification",
12
  "hidden_act": "gelu",
13
  "hidden_dropout_prob": 0.1,
14
  "hidden_size": 768,
 
167
  "transformers_version": "5.14.1",
168
  "type_vocab_size": 2,
169
  "use_cache": true,
170
+ "vocab_size": 36440
 
171
  }
evaluation_results.json CHANGED
@@ -4,38 +4,38 @@
4
  "threshold_policy": "threshold_policy.json",
5
  "one_time_final_evaluation": true,
6
  "raw_exact_span": {
7
- "macro_precision": 0.8591597176549997,
8
- "macro_recall": 0.9357575757575757,
9
- "macro_f1": 0.8919862756842204,
10
- "micro_precision": 0.8432550518842162,
11
- "micro_recall": 0.9357575757575758,
12
- "micro_f1": 0.8871014076414823,
13
- "tp": 3088,
14
- "fp": 574,
15
- "fn": 212
16
  },
17
  "initial_safe_candidate_routing": {
18
- "auto_tp": 270,
19
  "auto_fp": 0,
20
- "sllm_tp_candidates": 2818,
21
- "sllm_fp_candidates": 574,
22
  "auto_precision": 1.0,
23
- "auto_candidate_coverage": 0.07373020207536865,
24
- "sllm_candidates": 3392
25
  },
26
  "document_fallback_analysis": {
27
  "documents": 1320,
28
- "candidate_documents": 818,
29
- "zero_candidate_documents": 502,
30
  "zero_candidate_positive_documents": 0,
31
- "zero_candidate_negative_documents": 502,
32
- "documents_with_sllm_candidate": 818,
33
- "fn_total": 212,
34
- "fn_in_documents_with_sllm_candidate": 212,
35
- "fallback_rule_zero_candidate_and_tokens_gt_120_docs": 446,
36
- "fn_potentially_exposed_to_sllm_with_candidate_or_zero_fallback": 212,
37
- "strict_rule_all_documents_tokens_gt_256_docs": 657,
38
- "fn_potentially_exposed_to_sllm_with_candidate_or_strict_long_fallback": 212,
39
  "important": "Potential exposure is not recovery; actual recovery depends on SLLM recall. Candidate thresholds cannot recover FN by themselves."
40
  },
41
  "per_label": {
@@ -43,339 +43,339 @@
43
  "low": 0.6,
44
  "high": 1.0,
45
  "auto_accept_enabled": false,
46
- "raw_tp": 93,
47
- "raw_fp": 24,
48
- "raw_fn": 7,
49
  "auto_tp": 0,
50
  "auto_fp": 0,
51
  "auto_precision": null,
52
- "sllm_tp_candidates": 93,
53
- "sllm_fp_candidates": 24
54
  },
55
  "ADDRESS": {
56
  "low": 0.85,
57
  "high": 1.0,
58
  "auto_accept_enabled": false,
59
- "raw_tp": 95,
60
- "raw_fp": 9,
61
- "raw_fn": 5,
62
  "auto_tp": 0,
63
  "auto_fp": 0,
64
  "auto_precision": null,
65
- "sllm_tp_candidates": 95,
66
- "sllm_fp_candidates": 9
67
  },
68
  "AGE": {
69
  "low": 0.85,
70
  "high": 1.0,
71
  "auto_accept_enabled": false,
72
- "raw_tp": 94,
73
  "raw_fp": 12,
74
- "raw_fn": 6,
75
  "auto_tp": 0,
76
  "auto_fp": 0,
77
  "auto_precision": null,
78
- "sllm_tp_candidates": 94,
79
  "sllm_fp_candidates": 12
80
  },
81
  "ALIEN_NUMBER": {
82
- "low": 0.6,
83
  "high": 1.0,
84
  "auto_accept_enabled": false,
85
- "raw_tp": 94,
86
- "raw_fp": 20,
87
- "raw_fn": 6,
88
  "auto_tp": 0,
89
  "auto_fp": 0,
90
  "auto_precision": null,
91
- "sllm_tp_candidates": 94,
92
- "sllm_fp_candidates": 20
93
  },
94
  "BIRTHDATE": {
95
  "low": 0.85,
96
  "high": 1.0,
97
  "auto_accept_enabled": false,
98
- "raw_tp": 97,
99
- "raw_fp": 11,
100
- "raw_fn": 3,
101
  "auto_tp": 0,
102
  "auto_fp": 0,
103
  "auto_precision": null,
104
- "sllm_tp_candidates": 97,
105
- "sllm_fp_candidates": 11
106
  },
107
  "BLOOD_TYPE": {
108
  "low": 0.6,
109
  "high": 1.0,
110
  "auto_accept_enabled": false,
111
- "raw_tp": 80,
112
- "raw_fp": 37,
113
- "raw_fn": 20,
114
  "auto_tp": 0,
115
  "auto_fp": 0,
116
  "auto_precision": null,
117
- "sllm_tp_candidates": 80,
118
- "sllm_fp_candidates": 37
119
  },
120
  "CARD_NUMBER": {
121
- "low": 0.627,
122
  "high": 1.0,
123
  "auto_accept_enabled": false,
124
  "raw_tp": 100,
125
- "raw_fp": 6,
126
  "raw_fn": 0,
127
  "auto_tp": 0,
128
  "auto_fp": 0,
129
  "auto_precision": null,
130
  "sllm_tp_candidates": 100,
131
- "sllm_fp_candidates": 6
132
  },
133
  "CITY": {
134
- "low": 0.834,
135
  "high": 1.0,
136
  "auto_accept_enabled": false,
137
- "raw_tp": 98,
138
- "raw_fp": 6,
139
- "raw_fn": 2,
140
  "auto_tp": 0,
141
  "auto_fp": 0,
142
  "auto_precision": null,
143
- "sllm_tp_candidates": 98,
144
- "sllm_fp_candidates": 6
145
  },
146
  "DEPARTMENT": {
147
  "low": 0.85,
148
  "high": 1.0,
149
  "auto_accept_enabled": false,
150
- "raw_tp": 94,
151
  "raw_fp": 4,
152
- "raw_fn": 6,
153
  "auto_tp": 0,
154
  "auto_fp": 0,
155
  "auto_precision": null,
156
- "sllm_tp_candidates": 94,
157
  "sllm_fp_candidates": 4
158
  },
159
  "DRIVER_LICENSE": {
160
  "low": 0.6,
161
  "high": 1.0,
162
  "auto_accept_enabled": false,
163
- "raw_tp": 87,
164
- "raw_fp": 24,
165
- "raw_fn": 13,
166
  "auto_tp": 0,
167
  "auto_fp": 0,
168
  "auto_precision": null,
169
- "sllm_tp_candidates": 87,
170
- "sllm_fp_candidates": 24
171
  },
172
  "EMAIL": {
173
  "low": 0.85,
174
  "high": 0.999,
175
  "auto_accept_enabled": true,
176
  "raw_tp": 100,
177
- "raw_fp": 1,
178
  "raw_fn": 0,
179
- "auto_tp": 92,
180
  "auto_fp": 0,
181
  "auto_precision": 1.0,
182
- "sllm_tp_candidates": 8,
183
- "sllm_fp_candidates": 1
184
  },
185
  "EMPLOYEE_ID": {
186
- "low": 0.65,
187
  "high": 1.0,
188
  "auto_accept_enabled": false,
189
- "raw_tp": 99,
190
- "raw_fp": 48,
191
- "raw_fn": 1,
192
  "auto_tp": 0,
193
  "auto_fp": 0,
194
  "auto_precision": null,
195
- "sllm_tp_candidates": 99,
196
- "sllm_fp_candidates": 48
197
  },
198
  "GENDER": {
199
  "low": 0.85,
200
  "high": 1.0,
201
  "auto_accept_enabled": false,
202
- "raw_tp": 94,
203
  "raw_fp": 10,
204
- "raw_fn": 6,
205
  "auto_tp": 0,
206
  "auto_fp": 0,
207
  "auto_precision": null,
208
- "sllm_tp_candidates": 94,
209
  "sllm_fp_candidates": 10
210
  },
211
  "HEIGHT": {
212
  "low": 0.85,
213
  "high": 1.0,
214
  "auto_accept_enabled": false,
215
- "raw_tp": 99,
216
- "raw_fp": 11,
217
- "raw_fn": 1,
218
  "auto_tp": 0,
219
  "auto_fp": 0,
220
  "auto_precision": null,
221
- "sllm_tp_candidates": 99,
222
- "sllm_fp_candidates": 11
223
  },
224
  "IP_ADDRESS": {
225
  "low": 0.85,
226
  "high": 1.0,
227
  "auto_accept_enabled": false,
228
- "raw_tp": 95,
229
- "raw_fp": 12,
230
- "raw_fn": 5,
231
  "auto_tp": 0,
232
  "auto_fp": 0,
233
  "auto_precision": null,
234
- "sllm_tp_candidates": 95,
235
- "sllm_fp_candidates": 12
236
  },
237
  "MAJOR": {
238
  "low": 0.85,
239
  "high": 1.0,
240
  "auto_accept_enabled": false,
241
- "raw_tp": 93,
242
- "raw_fp": 19,
243
- "raw_fn": 7,
244
  "auto_tp": 0,
245
  "auto_fp": 0,
246
  "auto_precision": null,
247
- "sllm_tp_candidates": 93,
248
- "sllm_fp_candidates": 19
249
  },
250
  "MEMBER_ID": {
251
  "low": 0.6,
252
  "high": 1.0,
253
  "auto_accept_enabled": false,
254
  "raw_tp": 94,
255
- "raw_fp": 38,
256
  "raw_fn": 6,
257
  "auto_tp": 0,
258
  "auto_fp": 0,
259
  "auto_precision": null,
260
  "sllm_tp_candidates": 94,
261
- "sllm_fp_candidates": 38
262
  },
263
  "NAME": {
264
  "low": 0.85,
265
  "high": 1.0,
266
  "auto_accept_enabled": false,
267
- "raw_tp": 98,
268
- "raw_fp": 29,
269
- "raw_fn": 2,
270
  "auto_tp": 0,
271
  "auto_fp": 0,
272
  "auto_precision": null,
273
- "sllm_tp_candidates": 98,
274
- "sllm_fp_candidates": 29
275
  },
276
  "NATIONALITY": {
277
  "low": 0.85,
278
  "high": 0.999,
279
  "auto_accept_enabled": true,
280
- "raw_tp": 95,
281
- "raw_fp": 2,
282
- "raw_fn": 5,
283
  "auto_tp": 41,
284
  "auto_fp": 0,
285
  "auto_precision": 1.0,
286
- "sllm_tp_candidates": 54,
287
- "sllm_fp_candidates": 2
288
  },
289
  "NICKNAME": {
290
  "low": 0.6,
291
  "high": 1.0,
292
  "auto_accept_enabled": false,
293
- "raw_tp": 65,
294
- "raw_fp": 54,
295
- "raw_fn": 35,
296
  "auto_tp": 0,
297
  "auto_fp": 0,
298
  "auto_precision": null,
299
- "sllm_tp_candidates": 65,
300
- "sllm_fp_candidates": 54
301
  },
302
  "PARTICIPANT_ID": {
303
- "low": 0.714,
304
  "high": 1.0,
305
  "auto_accept_enabled": false,
306
- "raw_tp": 100,
307
- "raw_fp": 9,
308
- "raw_fn": 0,
309
  "auto_tp": 0,
310
  "auto_fp": 0,
311
  "auto_precision": null,
312
- "sllm_tp_candidates": 100,
313
- "sllm_fp_candidates": 9
314
  },
315
  "PASSPORTNUM": {
316
  "low": 0.85,
317
- "high": 0.999,
318
- "auto_accept_enabled": true,
319
  "raw_tp": 99,
320
- "raw_fp": 4,
321
  "raw_fn": 1,
322
- "auto_tp": 43,
323
  "auto_fp": 0,
324
- "auto_precision": 1.0,
325
- "sllm_tp_candidates": 56,
326
- "sllm_fp_candidates": 4
327
  },
328
  "PHONE": {
329
  "low": 0.85,
330
  "high": 1.0,
331
  "auto_accept_enabled": false,
332
- "raw_tp": 94,
333
- "raw_fp": 0,
334
- "raw_fn": 6,
335
  "auto_tp": 0,
336
  "auto_fp": 0,
337
  "auto_precision": null,
338
- "sllm_tp_candidates": 94,
339
- "sllm_fp_candidates": 0
340
  },
341
  "POSITION": {
342
  "low": 0.85,
343
  "high": 1.0,
344
  "auto_accept_enabled": false,
345
- "raw_tp": 97,
346
- "raw_fp": 90,
347
- "raw_fn": 3,
348
  "auto_tp": 0,
349
  "auto_fp": 0,
350
  "auto_precision": null,
351
- "sllm_tp_candidates": 97,
352
- "sllm_fp_candidates": 90
353
  },
354
  "RELIGION": {
355
  "low": 0.85,
356
  "high": 1.0,
357
  "auto_accept_enabled": false,
358
- "raw_tp": 78,
359
- "raw_fp": 1,
360
- "raw_fn": 22,
361
  "auto_tp": 0,
362
  "auto_fp": 0,
363
  "auto_precision": null,
364
- "sllm_tp_candidates": 78,
365
- "sllm_fp_candidates": 1
366
  },
367
  "RRN": {
368
  "low": 0.6,
369
  "high": 1.0,
370
  "auto_accept_enabled": false,
371
- "raw_tp": 97,
372
- "raw_fp": 13,
373
- "raw_fn": 3,
374
  "auto_tp": 0,
375
  "auto_fp": 0,
376
  "auto_precision": null,
377
- "sllm_tp_candidates": 97,
378
- "sllm_fp_candidates": 13
379
  },
380
  "SCHOOL": {
381
  "low": 0.85,
@@ -384,89 +384,89 @@
384
  "raw_tp": 100,
385
  "raw_fp": 2,
386
  "raw_fn": 0,
387
- "auto_tp": 94,
388
  "auto_fp": 0,
389
  "auto_precision": 1.0,
390
- "sllm_tp_candidates": 6,
391
  "sllm_fp_candidates": 2
392
  },
393
  "URL": {
394
  "low": 0.85,
395
  "high": 1.0,
396
  "auto_accept_enabled": false,
397
- "raw_tp": 98,
398
- "raw_fp": 5,
399
- "raw_fn": 2,
400
  "auto_tp": 0,
401
  "auto_fp": 0,
402
  "auto_precision": null,
403
- "sllm_tp_candidates": 98,
404
- "sllm_fp_candidates": 5
405
  },
406
  "USER_ID": {
407
  "low": 0.6,
408
  "high": 1.0,
409
  "auto_accept_enabled": false,
410
- "raw_tp": 72,
411
- "raw_fp": 39,
412
- "raw_fn": 28,
413
  "auto_tp": 0,
414
  "auto_fp": 0,
415
  "auto_precision": null,
416
- "sllm_tp_candidates": 72,
417
- "sllm_fp_candidates": 39
418
  },
419
  "VEHICLE_NUMBER": {
420
- "low": 0.845,
421
  "high": 1.0,
422
  "auto_accept_enabled": false,
423
- "raw_tp": 97,
424
- "raw_fp": 10,
425
- "raw_fn": 3,
426
  "auto_tp": 0,
427
  "auto_fp": 0,
428
  "auto_precision": null,
429
- "sllm_tp_candidates": 97,
430
- "sllm_fp_candidates": 10
431
  },
432
  "WEIGHT": {
433
  "low": 0.85,
434
  "high": 1.0,
435
  "auto_accept_enabled": false,
436
- "raw_tp": 100,
437
- "raw_fp": 10,
438
- "raw_fn": 0,
439
  "auto_tp": 0,
440
  "auto_fp": 0,
441
  "auto_precision": null,
442
- "sllm_tp_candidates": 100,
443
- "sllm_fp_candidates": 10
444
  },
445
  "WORKPLACE": {
446
  "low": 0.6,
447
  "high": 1.0,
448
  "auto_accept_enabled": false,
449
- "raw_tp": 97,
450
- "raw_fp": 8,
451
- "raw_fn": 3,
452
  "auto_tp": 0,
453
  "auto_fp": 0,
454
  "auto_precision": null,
455
- "sllm_tp_candidates": 97,
456
- "sllm_fp_candidates": 8
457
  },
458
  "ZIPCODE": {
459
- "low": 0.743,
460
  "high": 1.0,
461
  "auto_accept_enabled": false,
462
- "raw_tp": 95,
463
- "raw_fp": 6,
464
- "raw_fn": 5,
465
  "auto_tp": 0,
466
  "auto_fp": 0,
467
  "auto_precision": null,
468
- "sllm_tp_candidates": 95,
469
- "sllm_fp_candidates": 6
470
  }
471
  }
472
  }
 
4
  "threshold_policy": "threshold_policy.json",
5
  "one_time_final_evaluation": true,
6
  "raw_exact_span": {
7
+ "macro_precision": 0.8435092886798229,
8
+ "macro_recall": 0.9445454545454546,
9
+ "macro_f1": 0.883369786048345,
10
+ "micro_precision": 0.7965755175057501,
11
+ "micro_recall": 0.9445454545454546,
12
+ "micro_f1": 0.8642728407042839,
13
+ "tp": 3117,
14
+ "fp": 796,
15
+ "fn": 183
16
  },
17
  "initial_safe_candidate_routing": {
18
+ "auto_tp": 216,
19
  "auto_fp": 0,
20
+ "sllm_tp_candidates": 2901,
21
+ "sllm_fp_candidates": 796,
22
  "auto_precision": 1.0,
23
+ "auto_candidate_coverage": 0.055200613340148225,
24
+ "sllm_candidates": 3697
25
  },
26
  "document_fallback_analysis": {
27
  "documents": 1320,
28
+ "candidate_documents": 813,
29
+ "zero_candidate_documents": 507,
30
  "zero_candidate_positive_documents": 0,
31
+ "zero_candidate_negative_documents": 507,
32
+ "documents_with_sllm_candidate": 813,
33
+ "fn_total": 183,
34
+ "fn_in_documents_with_sllm_candidate": 183,
35
+ "fallback_rule_zero_candidate_and_tokens_gt_120_docs": 473,
36
+ "fn_potentially_exposed_to_sllm_with_candidate_or_zero_fallback": 183,
37
+ "strict_rule_all_documents_tokens_gt_256_docs": 758,
38
+ "fn_potentially_exposed_to_sllm_with_candidate_or_strict_long_fallback": 183,
39
  "important": "Potential exposure is not recovery; actual recovery depends on SLLM recall. Candidate thresholds cannot recover FN by themselves."
40
  },
41
  "per_label": {
 
43
  "low": 0.6,
44
  "high": 1.0,
45
  "auto_accept_enabled": false,
46
+ "raw_tp": 87,
47
+ "raw_fp": 19,
48
+ "raw_fn": 13,
49
  "auto_tp": 0,
50
  "auto_fp": 0,
51
  "auto_precision": null,
52
+ "sllm_tp_candidates": 87,
53
+ "sllm_fp_candidates": 19
54
  },
55
  "ADDRESS": {
56
  "low": 0.85,
57
  "high": 1.0,
58
  "auto_accept_enabled": false,
59
+ "raw_tp": 90,
60
+ "raw_fp": 13,
61
+ "raw_fn": 10,
62
  "auto_tp": 0,
63
  "auto_fp": 0,
64
  "auto_precision": null,
65
+ "sllm_tp_candidates": 90,
66
+ "sllm_fp_candidates": 13
67
  },
68
  "AGE": {
69
  "low": 0.85,
70
  "high": 1.0,
71
  "auto_accept_enabled": false,
72
+ "raw_tp": 100,
73
  "raw_fp": 12,
74
+ "raw_fn": 0,
75
  "auto_tp": 0,
76
  "auto_fp": 0,
77
  "auto_precision": null,
78
+ "sllm_tp_candidates": 100,
79
  "sllm_fp_candidates": 12
80
  },
81
  "ALIEN_NUMBER": {
82
+ "low": 0.618,
83
  "high": 1.0,
84
  "auto_accept_enabled": false,
85
+ "raw_tp": 97,
86
+ "raw_fp": 10,
87
+ "raw_fn": 3,
88
  "auto_tp": 0,
89
  "auto_fp": 0,
90
  "auto_precision": null,
91
+ "sllm_tp_candidates": 97,
92
+ "sllm_fp_candidates": 10
93
  },
94
  "BIRTHDATE": {
95
  "low": 0.85,
96
  "high": 1.0,
97
  "auto_accept_enabled": false,
98
+ "raw_tp": 100,
99
+ "raw_fp": 2,
100
+ "raw_fn": 0,
101
  "auto_tp": 0,
102
  "auto_fp": 0,
103
  "auto_precision": null,
104
+ "sllm_tp_candidates": 100,
105
+ "sllm_fp_candidates": 2
106
  },
107
  "BLOOD_TYPE": {
108
  "low": 0.6,
109
  "high": 1.0,
110
  "auto_accept_enabled": false,
111
+ "raw_tp": 86,
112
+ "raw_fp": 42,
113
+ "raw_fn": 14,
114
  "auto_tp": 0,
115
  "auto_fp": 0,
116
  "auto_precision": null,
117
+ "sllm_tp_candidates": 86,
118
+ "sllm_fp_candidates": 42
119
  },
120
  "CARD_NUMBER": {
121
+ "low": 0.756,
122
  "high": 1.0,
123
  "auto_accept_enabled": false,
124
  "raw_tp": 100,
125
+ "raw_fp": 15,
126
  "raw_fn": 0,
127
  "auto_tp": 0,
128
  "auto_fp": 0,
129
  "auto_precision": null,
130
  "sllm_tp_candidates": 100,
131
+ "sllm_fp_candidates": 15
132
  },
133
  "CITY": {
134
+ "low": 0.84,
135
  "high": 1.0,
136
  "auto_accept_enabled": false,
137
+ "raw_tp": 100,
138
+ "raw_fp": 0,
139
+ "raw_fn": 0,
140
  "auto_tp": 0,
141
  "auto_fp": 0,
142
  "auto_precision": null,
143
+ "sllm_tp_candidates": 100,
144
+ "sllm_fp_candidates": 0
145
  },
146
  "DEPARTMENT": {
147
  "low": 0.85,
148
  "high": 1.0,
149
  "auto_accept_enabled": false,
150
+ "raw_tp": 92,
151
  "raw_fp": 4,
152
+ "raw_fn": 8,
153
  "auto_tp": 0,
154
  "auto_fp": 0,
155
  "auto_precision": null,
156
+ "sllm_tp_candidates": 92,
157
  "sllm_fp_candidates": 4
158
  },
159
  "DRIVER_LICENSE": {
160
  "low": 0.6,
161
  "high": 1.0,
162
  "auto_accept_enabled": false,
163
+ "raw_tp": 90,
164
+ "raw_fp": 18,
165
+ "raw_fn": 10,
166
  "auto_tp": 0,
167
  "auto_fp": 0,
168
  "auto_precision": null,
169
+ "sllm_tp_candidates": 90,
170
+ "sllm_fp_candidates": 18
171
  },
172
  "EMAIL": {
173
  "low": 0.85,
174
  "high": 0.999,
175
  "auto_accept_enabled": true,
176
  "raw_tp": 100,
177
+ "raw_fp": 8,
178
  "raw_fn": 0,
179
+ "auto_tp": 82,
180
  "auto_fp": 0,
181
  "auto_precision": 1.0,
182
+ "sllm_tp_candidates": 18,
183
+ "sllm_fp_candidates": 8
184
  },
185
  "EMPLOYEE_ID": {
186
+ "low": 0.85,
187
  "high": 1.0,
188
  "auto_accept_enabled": false,
189
+ "raw_tp": 100,
190
+ "raw_fp": 58,
191
+ "raw_fn": 0,
192
  "auto_tp": 0,
193
  "auto_fp": 0,
194
  "auto_precision": null,
195
+ "sllm_tp_candidates": 100,
196
+ "sllm_fp_candidates": 58
197
  },
198
  "GENDER": {
199
  "low": 0.85,
200
  "high": 1.0,
201
  "auto_accept_enabled": false,
202
+ "raw_tp": 99,
203
  "raw_fp": 10,
204
+ "raw_fn": 1,
205
  "auto_tp": 0,
206
  "auto_fp": 0,
207
  "auto_precision": null,
208
+ "sllm_tp_candidates": 99,
209
  "sllm_fp_candidates": 10
210
  },
211
  "HEIGHT": {
212
  "low": 0.85,
213
  "high": 1.0,
214
  "auto_accept_enabled": false,
215
+ "raw_tp": 97,
216
+ "raw_fp": 13,
217
+ "raw_fn": 3,
218
  "auto_tp": 0,
219
  "auto_fp": 0,
220
  "auto_precision": null,
221
+ "sllm_tp_candidates": 97,
222
+ "sllm_fp_candidates": 13
223
  },
224
  "IP_ADDRESS": {
225
  "low": 0.85,
226
  "high": 1.0,
227
  "auto_accept_enabled": false,
228
+ "raw_tp": 94,
229
+ "raw_fp": 24,
230
+ "raw_fn": 6,
231
  "auto_tp": 0,
232
  "auto_fp": 0,
233
  "auto_precision": null,
234
+ "sllm_tp_candidates": 94,
235
+ "sllm_fp_candidates": 24
236
  },
237
  "MAJOR": {
238
  "low": 0.85,
239
  "high": 1.0,
240
  "auto_accept_enabled": false,
241
+ "raw_tp": 100,
242
+ "raw_fp": 12,
243
+ "raw_fn": 0,
244
  "auto_tp": 0,
245
  "auto_fp": 0,
246
  "auto_precision": null,
247
+ "sllm_tp_candidates": 100,
248
+ "sllm_fp_candidates": 12
249
  },
250
  "MEMBER_ID": {
251
  "low": 0.6,
252
  "high": 1.0,
253
  "auto_accept_enabled": false,
254
  "raw_tp": 94,
255
+ "raw_fp": 12,
256
  "raw_fn": 6,
257
  "auto_tp": 0,
258
  "auto_fp": 0,
259
  "auto_precision": null,
260
  "sllm_tp_candidates": 94,
261
+ "sllm_fp_candidates": 12
262
  },
263
  "NAME": {
264
  "low": 0.85,
265
  "high": 1.0,
266
  "auto_accept_enabled": false,
267
+ "raw_tp": 99,
268
+ "raw_fp": 25,
269
+ "raw_fn": 1,
270
  "auto_tp": 0,
271
  "auto_fp": 0,
272
  "auto_precision": null,
273
+ "sllm_tp_candidates": 99,
274
+ "sllm_fp_candidates": 25
275
  },
276
  "NATIONALITY": {
277
  "low": 0.85,
278
  "high": 0.999,
279
  "auto_accept_enabled": true,
280
+ "raw_tp": 100,
281
+ "raw_fp": 0,
282
+ "raw_fn": 0,
283
  "auto_tp": 41,
284
  "auto_fp": 0,
285
  "auto_precision": 1.0,
286
+ "sllm_tp_candidates": 59,
287
+ "sllm_fp_candidates": 0
288
  },
289
  "NICKNAME": {
290
  "low": 0.6,
291
  "high": 1.0,
292
  "auto_accept_enabled": false,
293
+ "raw_tp": 71,
294
+ "raw_fp": 200,
295
+ "raw_fn": 29,
296
  "auto_tp": 0,
297
  "auto_fp": 0,
298
  "auto_precision": null,
299
+ "sllm_tp_candidates": 71,
300
+ "sllm_fp_candidates": 200
301
  },
302
  "PARTICIPANT_ID": {
303
+ "low": 0.767,
304
  "high": 1.0,
305
  "auto_accept_enabled": false,
306
+ "raw_tp": 98,
307
+ "raw_fp": 144,
308
+ "raw_fn": 2,
309
  "auto_tp": 0,
310
  "auto_fp": 0,
311
  "auto_precision": null,
312
+ "sllm_tp_candidates": 98,
313
+ "sllm_fp_candidates": 144
314
  },
315
  "PASSPORTNUM": {
316
  "low": 0.85,
317
+ "high": 1.0,
318
+ "auto_accept_enabled": false,
319
  "raw_tp": 99,
320
+ "raw_fp": 1,
321
  "raw_fn": 1,
322
+ "auto_tp": 0,
323
  "auto_fp": 0,
324
+ "auto_precision": null,
325
+ "sllm_tp_candidates": 99,
326
+ "sllm_fp_candidates": 1
327
  },
328
  "PHONE": {
329
  "low": 0.85,
330
  "high": 1.0,
331
  "auto_accept_enabled": false,
332
+ "raw_tp": 100,
333
+ "raw_fp": 1,
334
+ "raw_fn": 0,
335
  "auto_tp": 0,
336
  "auto_fp": 0,
337
  "auto_precision": null,
338
+ "sllm_tp_candidates": 100,
339
+ "sllm_fp_candidates": 1
340
  },
341
  "POSITION": {
342
  "low": 0.85,
343
  "high": 1.0,
344
  "auto_accept_enabled": false,
345
+ "raw_tp": 99,
346
+ "raw_fp": 27,
347
+ "raw_fn": 1,
348
  "auto_tp": 0,
349
  "auto_fp": 0,
350
  "auto_precision": null,
351
+ "sllm_tp_candidates": 99,
352
+ "sllm_fp_candidates": 27
353
  },
354
  "RELIGION": {
355
  "low": 0.85,
356
  "high": 1.0,
357
  "auto_accept_enabled": false,
358
+ "raw_tp": 80,
359
+ "raw_fp": 0,
360
+ "raw_fn": 20,
361
  "auto_tp": 0,
362
  "auto_fp": 0,
363
  "auto_precision": null,
364
+ "sllm_tp_candidates": 80,
365
+ "sllm_fp_candidates": 0
366
  },
367
  "RRN": {
368
  "low": 0.6,
369
  "high": 1.0,
370
  "auto_accept_enabled": false,
371
+ "raw_tp": 93,
372
+ "raw_fp": 9,
373
+ "raw_fn": 7,
374
  "auto_tp": 0,
375
  "auto_fp": 0,
376
  "auto_precision": null,
377
+ "sllm_tp_candidates": 93,
378
+ "sllm_fp_candidates": 9
379
  },
380
  "SCHOOL": {
381
  "low": 0.85,
 
384
  "raw_tp": 100,
385
  "raw_fp": 2,
386
  "raw_fn": 0,
387
+ "auto_tp": 93,
388
  "auto_fp": 0,
389
  "auto_precision": 1.0,
390
+ "sllm_tp_candidates": 7,
391
  "sllm_fp_candidates": 2
392
  },
393
  "URL": {
394
  "low": 0.85,
395
  "high": 1.0,
396
  "auto_accept_enabled": false,
397
+ "raw_tp": 90,
398
+ "raw_fp": 19,
399
+ "raw_fn": 10,
400
  "auto_tp": 0,
401
  "auto_fp": 0,
402
  "auto_precision": null,
403
+ "sllm_tp_candidates": 90,
404
+ "sllm_fp_candidates": 19
405
  },
406
  "USER_ID": {
407
  "low": 0.6,
408
  "high": 1.0,
409
  "auto_accept_enabled": false,
410
+ "raw_tp": 88,
411
+ "raw_fp": 35,
412
+ "raw_fn": 12,
413
  "auto_tp": 0,
414
  "auto_fp": 0,
415
  "auto_precision": null,
416
+ "sllm_tp_candidates": 88,
417
+ "sllm_fp_candidates": 35
418
  },
419
  "VEHICLE_NUMBER": {
420
+ "low": 0.85,
421
  "high": 1.0,
422
  "auto_accept_enabled": false,
423
+ "raw_tp": 88,
424
+ "raw_fp": 21,
425
+ "raw_fn": 12,
426
  "auto_tp": 0,
427
  "auto_fp": 0,
428
  "auto_precision": null,
429
+ "sllm_tp_candidates": 88,
430
+ "sllm_fp_candidates": 21
431
  },
432
  "WEIGHT": {
433
  "low": 0.85,
434
  "high": 1.0,
435
  "auto_accept_enabled": false,
436
+ "raw_tp": 98,
437
+ "raw_fp": 13,
438
+ "raw_fn": 2,
439
  "auto_tp": 0,
440
  "auto_fp": 0,
441
  "auto_precision": null,
442
+ "sllm_tp_candidates": 98,
443
+ "sllm_fp_candidates": 13
444
  },
445
  "WORKPLACE": {
446
  "low": 0.6,
447
  "high": 1.0,
448
  "auto_accept_enabled": false,
449
+ "raw_tp": 98,
450
+ "raw_fp": 10,
451
+ "raw_fn": 2,
452
  "auto_tp": 0,
453
  "auto_fp": 0,
454
  "auto_precision": null,
455
+ "sllm_tp_candidates": 98,
456
+ "sllm_fp_candidates": 10
457
  },
458
  "ZIPCODE": {
459
+ "low": 0.85,
460
  "high": 1.0,
461
  "auto_accept_enabled": false,
462
+ "raw_tp": 90,
463
+ "raw_fp": 17,
464
+ "raw_fn": 10,
465
  "auto_tp": 0,
466
  "auto_fp": 0,
467
  "auto_precision": null,
468
+ "sllm_tp_candidates": 90,
469
+ "sllm_fp_candidates": 17
470
  }
471
  }
472
  }
korean_id_postprocess.py ADDED
@@ -0,0 +1,75 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ """Deterministically normalize Korean 13-digit ID labels after NER inference."""
2
+ from __future__ import annotations
3
+
4
+ import re
5
+ from typing import Any
6
+
7
+
8
+ KOREAN_ID_PATTERN = re.compile(r"(?<!\d)\d{6}[- ]?\d{7}(?!\d)")
9
+ KOREAN_ID_LABELS = {"RRN", "ALIEN_NUMBER"}
10
+
11
+
12
+ def label_from_seventh_digit(value: str) -> str | None:
13
+ """Return RRN for codes 1-4 and ALIEN_NUMBER for codes 5-8."""
14
+ digits = "".join(character for character in value if character.isdigit())
15
+ if len(digits) != 13:
16
+ return None
17
+ if digits[6] in "1234":
18
+ return "RRN"
19
+ if digits[6] in "5678":
20
+ return "ALIEN_NUMBER"
21
+ return None
22
+
23
+
24
+ def _entity_label(entity: dict[str, Any]) -> str | None:
25
+ return entity.get("entity_group") or entity.get("label") or entity.get("entity")
26
+
27
+
28
+ def normalize_korean_id_entities(
29
+ text: str,
30
+ entities: list[dict[str, Any]],
31
+ *,
32
+ add_missing_structured_candidates: bool = False,
33
+ ) -> list[dict[str, Any]]:
34
+ """Merge/override overlapping Korean-ID entities using the seventh digit.
35
+
36
+ `entities` can be the output of a Transformers aggregation pipeline. The
37
+ function does not alter unrelated entities. When fragmented RRN/alien-ID
38
+ predictions overlap one 13-digit value, they are replaced by one full-span
39
+ entity and the conservative minimum fragment score is retained.
40
+
41
+ If `add_missing_structured_candidates=True`, a regex-only match with no NER
42
+ overlap is also returned with score 0.0 and `candidate_only=True`; downstream
43
+ checksum validation should decide whether to accept it.
44
+ """
45
+ remaining = [dict(entity) for entity in entities]
46
+ normalized: list[dict[str, Any]] = []
47
+ for match in KOREAN_ID_PATTERN.finditer(text):
48
+ label = label_from_seventh_digit(match.group(0))
49
+ if label is None:
50
+ continue
51
+ overlaps = [
52
+ entity
53
+ for entity in remaining
54
+ if _entity_label(entity) in KOREAN_ID_LABELS
55
+ and int(entity.get("start", -1)) < match.end()
56
+ and int(entity.get("end", -1)) > match.start()
57
+ ]
58
+ if not overlaps and not add_missing_structured_candidates:
59
+ continue
60
+ for entity in overlaps:
61
+ remaining.remove(entity)
62
+ scores = [float(entity["score"]) for entity in overlaps if entity.get("score") is not None]
63
+ normalized.append(
64
+ {
65
+ "entity_group": label,
66
+ "score": min(scores) if scores else 0.0,
67
+ "word": match.group(0),
68
+ "start": match.start(),
69
+ "end": match.end(),
70
+ "normalization_rule": "korean_id_seventh_digit",
71
+ "candidate_only": not overlaps,
72
+ }
73
+ )
74
+ return sorted(remaining + normalized, key=lambda entity: (int(entity.get("start", -1)), int(entity.get("end", -1))))
75
+
korean_id_regression_results.json ADDED
@@ -0,0 +1,24 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "direct_model": {
3
+ "contradictory_context_cases": {
4
+ "passed": 4,
5
+ "total": 4,
6
+ "rule_under_test": "The seventh digit must override nearby RRN/alien-registration cue words."
7
+ },
8
+ "label_free_valid_roster": {
9
+ "passed": 8,
10
+ "total": 8,
11
+ "details": "Four names and four checksum-valid Korean 13-digit identifiers were detected with the expected labels."
12
+ },
13
+ "long_input": {
14
+ "tokens": 499,
15
+ "target_at_document_end_detected": true
16
+ }
17
+ },
18
+ "deterministic_postprocess": {
19
+ "fragment_merge_test": "passed",
20
+ "codes_1_to_4": "RRN",
21
+ "codes_5_to_8": "ALIEN_NUMBER"
22
+ },
23
+ "known_limitation": "In a deliberately malformed list containing an invalid-checksum synthetic RRN, raw NER passed 7 of 8 checks. korean_id_postprocess.py merges and relabels overlapping 13-digit Korean-ID fragments by the seventh digit; checksum validation is still required separately."
24
+ }
label_thresholds.json CHANGED
@@ -25,7 +25,7 @@
25
  },
26
  "ALIEN_NUMBER": {
27
  "risk_tier": "high",
28
- "low": 0.6,
29
  "high": 1.0,
30
  "auto_accept_enabled": false,
31
  "future_discard_below_low_allowed": false
@@ -46,14 +46,14 @@
46
  },
47
  "CARD_NUMBER": {
48
  "risk_tier": "high",
49
- "low": 0.627,
50
  "high": 1.0,
51
  "auto_accept_enabled": false,
52
  "future_discard_below_low_allowed": false
53
  },
54
  "CITY": {
55
  "risk_tier": "medium",
56
- "low": 0.834,
57
  "high": 1.0,
58
  "auto_accept_enabled": false,
59
  "future_discard_below_low_allowed": false
@@ -81,7 +81,7 @@
81
  },
82
  "EMPLOYEE_ID": {
83
  "risk_tier": "medium",
84
- "low": 0.65,
85
  "high": 1.0,
86
  "auto_accept_enabled": false,
87
  "future_discard_below_low_allowed": false
@@ -144,7 +144,7 @@
144
  },
145
  "PARTICIPANT_ID": {
146
  "risk_tier": "medium",
147
- "low": 0.714,
148
  "high": 1.0,
149
  "auto_accept_enabled": false,
150
  "future_discard_below_low_allowed": false
@@ -152,8 +152,8 @@
152
  "PASSPORTNUM": {
153
  "risk_tier": "high",
154
  "low": 0.85,
155
- "high": 0.999,
156
- "auto_accept_enabled": true,
157
  "future_discard_below_low_allowed": false
158
  },
159
  "PHONE": {
@@ -189,7 +189,7 @@
189
  "low": 0.85,
190
  "high": 0.999,
191
  "auto_accept_enabled": true,
192
- "future_discard_below_low_allowed": false
193
  },
194
  "URL": {
195
  "risk_tier": "low",
@@ -207,7 +207,7 @@
207
  },
208
  "VEHICLE_NUMBER": {
209
  "risk_tier": "low",
210
- "low": 0.845,
211
  "high": 1.0,
212
  "auto_accept_enabled": false,
213
  "future_discard_below_low_allowed": true
@@ -228,7 +228,7 @@
228
  },
229
  "ZIPCODE": {
230
  "risk_tier": "medium",
231
- "low": 0.743,
232
  "high": 1.0,
233
  "auto_accept_enabled": false,
234
  "future_discard_below_low_allowed": false
 
25
  },
26
  "ALIEN_NUMBER": {
27
  "risk_tier": "high",
28
+ "low": 0.618,
29
  "high": 1.0,
30
  "auto_accept_enabled": false,
31
  "future_discard_below_low_allowed": false
 
46
  },
47
  "CARD_NUMBER": {
48
  "risk_tier": "high",
49
+ "low": 0.756,
50
  "high": 1.0,
51
  "auto_accept_enabled": false,
52
  "future_discard_below_low_allowed": false
53
  },
54
  "CITY": {
55
  "risk_tier": "medium",
56
+ "low": 0.84,
57
  "high": 1.0,
58
  "auto_accept_enabled": false,
59
  "future_discard_below_low_allowed": false
 
81
  },
82
  "EMPLOYEE_ID": {
83
  "risk_tier": "medium",
84
+ "low": 0.85,
85
  "high": 1.0,
86
  "auto_accept_enabled": false,
87
  "future_discard_below_low_allowed": false
 
144
  },
145
  "PARTICIPANT_ID": {
146
  "risk_tier": "medium",
147
+ "low": 0.767,
148
  "high": 1.0,
149
  "auto_accept_enabled": false,
150
  "future_discard_below_low_allowed": false
 
152
  "PASSPORTNUM": {
153
  "risk_tier": "high",
154
  "low": 0.85,
155
+ "high": 1.0,
156
+ "auto_accept_enabled": false,
157
  "future_discard_below_low_allowed": false
158
  },
159
  "PHONE": {
 
189
  "low": 0.85,
190
  "high": 0.999,
191
  "auto_accept_enabled": true,
192
+ "future_discard_below_low_allowed": true
193
  },
194
  "URL": {
195
  "risk_tier": "low",
 
207
  },
208
  "VEHICLE_NUMBER": {
209
  "risk_tier": "low",
210
+ "low": 0.85,
211
  "high": 1.0,
212
  "auto_accept_enabled": false,
213
  "future_discard_below_low_allowed": true
 
228
  },
229
  "ZIPCODE": {
230
  "risk_tier": "medium",
231
+ "low": 0.85,
232
  "high": 1.0,
233
  "auto_accept_enabled": false,
234
  "future_discard_below_low_allowed": false
model.safetensors CHANGED
@@ -1,3 +1,3 @@
1
  version https://git-lfs.github.com/spec/v1
2
- oid sha256:4f407afc62a82e4718b651faa7125f64977467837fdcecc2b2ad9f87356061ed
3
  size 453976140
 
1
  version https://git-lfs.github.com/spec/v1
2
+ oid sha256:ce581864e6edf7a4e8031b39d7bf6fe2ddefd48362a30c67e7eb85cab34c00a2
3
  size 453976140
per_label_metrics.json CHANGED
@@ -1,225 +1,225 @@
1
  {
2
- "evaluation": "one-time exact character-span evaluation on a private synthetic holdout",
3
  "documents": 1320,
4
  "positive_spans_per_label": 100,
5
  "macro": {
6
- "precision": 0.8591597176549997,
7
- "recall": 0.9357575757575757,
8
- "f1": 0.8919862756842204
9
  },
10
  "micro": {
11
- "precision": 0.8432550518842162,
12
- "recall": 0.9357575757575758,
13
- "f1": 0.8871014076414823
14
  },
15
  "labels": {
16
  "ACCOUNT_NUMBER": {
17
- "precision": 0.7948717948717948,
18
- "recall": 0.93,
19
- "f1": 0.8571428571428572,
20
- "tp": 93,
21
- "fp": 24,
22
- "fn": 7
23
  },
24
  "ADDRESS": {
25
- "precision": 0.9134615384615384,
26
- "recall": 0.95,
27
- "f1": 0.9313725490196078,
28
- "tp": 95,
29
- "fp": 9,
30
- "fn": 5
31
  },
32
  "AGE": {
33
- "precision": 0.8867924528301887,
34
- "recall": 0.94,
35
- "f1": 0.912621359223301,
36
- "tp": 94,
37
  "fp": 12,
38
- "fn": 6
39
  },
40
  "ALIEN_NUMBER": {
41
- "precision": 0.8245614035087719,
42
- "recall": 0.94,
43
- "f1": 0.8785046728971964,
44
- "tp": 94,
45
- "fp": 20,
46
- "fn": 6
47
- },
48
- "BIRTHDATE": {
49
- "precision": 0.8981481481481481,
50
  "recall": 0.97,
51
- "f1": 0.9326923076923077,
52
  "tp": 97,
53
- "fp": 11,
54
  "fn": 3
55
  },
 
 
 
 
 
 
 
 
56
  "BLOOD_TYPE": {
57
- "precision": 0.6837606837606838,
58
- "recall": 0.8,
59
- "f1": 0.7373271889400922,
60
- "tp": 80,
61
- "fp": 37,
62
- "fn": 20
63
  },
64
  "CARD_NUMBER": {
65
- "precision": 0.9433962264150944,
66
  "recall": 1.0,
67
- "f1": 0.970873786407767,
68
  "tp": 100,
69
- "fp": 6,
70
  "fn": 0
71
  },
72
  "CITY": {
73
- "precision": 0.9423076923076923,
74
- "recall": 0.98,
75
- "f1": 0.9607843137254902,
76
- "tp": 98,
77
- "fp": 6,
78
- "fn": 2
79
  },
80
  "DEPARTMENT": {
81
- "precision": 0.9591836734693877,
82
- "recall": 0.94,
83
- "f1": 0.9494949494949495,
84
- "tp": 94,
85
  "fp": 4,
86
- "fn": 6
87
  },
88
  "DRIVER_LICENSE": {
89
- "precision": 0.7837837837837838,
90
- "recall": 0.87,
91
- "f1": 0.8246445497630331,
92
- "tp": 87,
93
- "fp": 24,
94
- "fn": 13
95
  },
96
  "EMAIL": {
97
- "precision": 0.9900990099009901,
98
  "recall": 1.0,
99
- "f1": 0.9950248756218906,
100
  "tp": 100,
101
- "fp": 1,
102
  "fn": 0
103
  },
104
  "EMPLOYEE_ID": {
105
- "precision": 0.673469387755102,
106
- "recall": 0.99,
107
- "f1": 0.8016194331983807,
108
- "tp": 99,
109
- "fp": 48,
110
- "fn": 1
111
  },
112
  "GENDER": {
113
- "precision": 0.9038461538461539,
114
- "recall": 0.94,
115
- "f1": 0.9215686274509804,
116
- "tp": 94,
117
- "fp": 10,
118
- "fn": 6
119
- },
120
- "HEIGHT": {
121
- "precision": 0.9,
122
  "recall": 0.99,
123
- "f1": 0.9428571428571428,
124
  "tp": 99,
125
- "fp": 11,
126
  "fn": 1
127
  },
 
 
 
 
 
 
 
 
128
  "IP_ADDRESS": {
129
- "precision": 0.8878504672897196,
130
- "recall": 0.95,
131
- "f1": 0.9178743961352657,
132
- "tp": 95,
133
- "fp": 12,
134
- "fn": 5
135
  },
136
  "MAJOR": {
137
- "precision": 0.8303571428571429,
138
- "recall": 0.93,
139
- "f1": 0.8773584905660378,
140
- "tp": 93,
141
- "fp": 19,
142
- "fn": 7
143
  },
144
  "MEMBER_ID": {
145
- "precision": 0.7121212121212122,
146
  "recall": 0.94,
147
- "f1": 0.810344827586207,
148
  "tp": 94,
149
- "fp": 38,
150
  "fn": 6
151
  },
152
  "NAME": {
153
- "precision": 0.7716535433070866,
154
- "recall": 0.98,
155
- "f1": 0.8634361233480176,
156
- "tp": 98,
157
- "fp": 29,
158
- "fn": 2
159
  },
160
  "NATIONALITY": {
161
- "precision": 0.979381443298969,
162
- "recall": 0.95,
163
- "f1": 0.9644670050761421,
164
- "tp": 95,
165
- "fp": 2,
166
- "fn": 5
167
  },
168
  "NICKNAME": {
169
- "precision": 0.5462184873949579,
170
- "recall": 0.65,
171
- "f1": 0.593607305936073,
172
- "tp": 65,
173
- "fp": 54,
174
- "fn": 35
175
  },
176
  "PARTICIPANT_ID": {
177
- "precision": 0.9174311926605505,
178
- "recall": 1.0,
179
- "f1": 0.9569377990430622,
180
- "tp": 100,
181
- "fp": 9,
182
- "fn": 0
183
  },
184
  "PASSPORTNUM": {
185
- "precision": 0.9611650485436893,
186
  "recall": 0.99,
187
- "f1": 0.9753694581280788,
188
  "tp": 99,
189
- "fp": 4,
190
  "fn": 1
191
  },
192
  "PHONE": {
193
- "precision": 1.0,
194
- "recall": 0.94,
195
- "f1": 0.9690721649484536,
196
- "tp": 94,
197
- "fp": 0,
198
- "fn": 6
199
  },
200
  "POSITION": {
201
- "precision": 0.5187165775401069,
202
- "recall": 0.97,
203
- "f1": 0.67595818815331,
204
- "tp": 97,
205
- "fp": 90,
206
- "fn": 3
207
  },
208
  "RELIGION": {
209
- "precision": 0.9873417721518988,
210
- "recall": 0.78,
211
- "f1": 0.8715083798882681,
212
- "tp": 78,
213
- "fp": 1,
214
- "fn": 22
215
  },
216
  "RRN": {
217
- "precision": 0.8818181818181818,
218
- "recall": 0.97,
219
- "f1": 0.9238095238095237,
220
- "tp": 97,
221
- "fp": 13,
222
- "fn": 3
223
  },
224
  "SCHOOL": {
225
  "precision": 0.9803921568627451,
@@ -230,52 +230,52 @@
230
  "fn": 0
231
  },
232
  "URL": {
233
- "precision": 0.9514563106796117,
234
- "recall": 0.98,
235
- "f1": 0.9655172413793104,
236
- "tp": 98,
237
- "fp": 5,
238
- "fn": 2
239
  },
240
  "USER_ID": {
241
- "precision": 0.6486486486486487,
242
- "recall": 0.72,
243
- "f1": 0.6824644549763034,
244
- "tp": 72,
245
- "fp": 39,
246
- "fn": 28
247
  },
248
  "VEHICLE_NUMBER": {
249
- "precision": 0.9065420560747663,
250
- "recall": 0.97,
251
- "f1": 0.9371980676328503,
252
- "tp": 97,
253
- "fp": 10,
254
- "fn": 3
255
  },
256
  "WEIGHT": {
257
- "precision": 0.9090909090909091,
258
- "recall": 1.0,
259
- "f1": 0.9523809523809523,
260
- "tp": 100,
261
- "fp": 10,
262
- "fn": 0
263
  },
264
  "WORKPLACE": {
265
- "precision": 0.9238095238095239,
266
- "recall": 0.97,
267
- "f1": 0.9463414634146342,
268
- "tp": 97,
269
- "fp": 8,
270
- "fn": 3
271
  },
272
  "ZIPCODE": {
273
- "precision": 0.9405940594059405,
274
- "recall": 0.95,
275
- "f1": 0.9452736318407959,
276
- "tp": 95,
277
- "fp": 6,
278
- "fn": 5
279
  }
280
  }
281
  }
 
1
  {
2
+ "evaluation": "one-time exact character-span evaluation on a private synthetic final holdout",
3
  "documents": 1320,
4
  "positive_spans_per_label": 100,
5
  "macro": {
6
+ "precision": 0.8435092886798229,
7
+ "recall": 0.9445454545454546,
8
+ "f1": 0.883369786048345
9
  },
10
  "micro": {
11
+ "precision": 0.7965755175057501,
12
+ "recall": 0.9445454545454546,
13
+ "f1": 0.8642728407042839
14
  },
15
  "labels": {
16
  "ACCOUNT_NUMBER": {
17
+ "precision": 0.8207547169811321,
18
+ "recall": 0.87,
19
+ "f1": 0.8446601941747572,
20
+ "tp": 87,
21
+ "fp": 19,
22
+ "fn": 13
23
  },
24
  "ADDRESS": {
25
+ "precision": 0.8737864077669902,
26
+ "recall": 0.9,
27
+ "f1": 0.8866995073891626,
28
+ "tp": 90,
29
+ "fp": 13,
30
+ "fn": 10
31
  },
32
  "AGE": {
33
+ "precision": 0.8928571428571429,
34
+ "recall": 1.0,
35
+ "f1": 0.9433962264150945,
36
+ "tp": 100,
37
  "fp": 12,
38
+ "fn": 0
39
  },
40
  "ALIEN_NUMBER": {
41
+ "precision": 0.9065420560747663,
 
 
 
 
 
 
 
 
42
  "recall": 0.97,
43
+ "f1": 0.9371980676328503,
44
  "tp": 97,
45
+ "fp": 10,
46
  "fn": 3
47
  },
48
+ "BIRTHDATE": {
49
+ "precision": 0.9803921568627451,
50
+ "recall": 1.0,
51
+ "f1": 0.99009900990099,
52
+ "tp": 100,
53
+ "fp": 2,
54
+ "fn": 0
55
+ },
56
  "BLOOD_TYPE": {
57
+ "precision": 0.671875,
58
+ "recall": 0.86,
59
+ "f1": 0.7543859649122807,
60
+ "tp": 86,
61
+ "fp": 42,
62
+ "fn": 14
63
  },
64
  "CARD_NUMBER": {
65
+ "precision": 0.8695652173913043,
66
  "recall": 1.0,
67
+ "f1": 0.9302325581395349,
68
  "tp": 100,
69
+ "fp": 15,
70
  "fn": 0
71
  },
72
  "CITY": {
73
+ "precision": 1.0,
74
+ "recall": 1.0,
75
+ "f1": 1.0,
76
+ "tp": 100,
77
+ "fp": 0,
78
+ "fn": 0
79
  },
80
  "DEPARTMENT": {
81
+ "precision": 0.9583333333333334,
82
+ "recall": 0.92,
83
+ "f1": 0.9387755102040817,
84
+ "tp": 92,
85
  "fp": 4,
86
+ "fn": 8
87
  },
88
  "DRIVER_LICENSE": {
89
+ "precision": 0.8333333333333334,
90
+ "recall": 0.9,
91
+ "f1": 0.8653846153846153,
92
+ "tp": 90,
93
+ "fp": 18,
94
+ "fn": 10
95
  },
96
  "EMAIL": {
97
+ "precision": 0.9259259259259259,
98
  "recall": 1.0,
99
+ "f1": 0.9615384615384615,
100
  "tp": 100,
101
+ "fp": 8,
102
  "fn": 0
103
  },
104
  "EMPLOYEE_ID": {
105
+ "precision": 0.6329113924050633,
106
+ "recall": 1.0,
107
+ "f1": 0.7751937984496124,
108
+ "tp": 100,
109
+ "fp": 58,
110
+ "fn": 0
111
  },
112
  "GENDER": {
113
+ "precision": 0.908256880733945,
 
 
 
 
 
 
 
 
114
  "recall": 0.99,
115
+ "f1": 0.9473684210526316,
116
  "tp": 99,
117
+ "fp": 10,
118
  "fn": 1
119
  },
120
+ "HEIGHT": {
121
+ "precision": 0.8818181818181818,
122
+ "recall": 0.97,
123
+ "f1": 0.9238095238095237,
124
+ "tp": 97,
125
+ "fp": 13,
126
+ "fn": 3
127
+ },
128
  "IP_ADDRESS": {
129
+ "precision": 0.7966101694915254,
130
+ "recall": 0.94,
131
+ "f1": 0.8623853211009174,
132
+ "tp": 94,
133
+ "fp": 24,
134
+ "fn": 6
135
  },
136
  "MAJOR": {
137
+ "precision": 0.8928571428571429,
138
+ "recall": 1.0,
139
+ "f1": 0.9433962264150945,
140
+ "tp": 100,
141
+ "fp": 12,
142
+ "fn": 0
143
  },
144
  "MEMBER_ID": {
145
+ "precision": 0.8867924528301887,
146
  "recall": 0.94,
147
+ "f1": 0.912621359223301,
148
  "tp": 94,
149
+ "fp": 12,
150
  "fn": 6
151
  },
152
  "NAME": {
153
+ "precision": 0.7983870967741935,
154
+ "recall": 0.99,
155
+ "f1": 0.8839285714285715,
156
+ "tp": 99,
157
+ "fp": 25,
158
+ "fn": 1
159
  },
160
  "NATIONALITY": {
161
+ "precision": 1.0,
162
+ "recall": 1.0,
163
+ "f1": 1.0,
164
+ "tp": 100,
165
+ "fp": 0,
166
+ "fn": 0
167
  },
168
  "NICKNAME": {
169
+ "precision": 0.26199261992619927,
170
+ "recall": 0.71,
171
+ "f1": 0.3827493261455525,
172
+ "tp": 71,
173
+ "fp": 200,
174
+ "fn": 29
175
  },
176
  "PARTICIPANT_ID": {
177
+ "precision": 0.4049586776859504,
178
+ "recall": 0.98,
179
+ "f1": 0.5730994152046783,
180
+ "tp": 98,
181
+ "fp": 144,
182
+ "fn": 2
183
  },
184
  "PASSPORTNUM": {
185
+ "precision": 0.99,
186
  "recall": 0.99,
187
+ "f1": 0.99,
188
  "tp": 99,
189
+ "fp": 1,
190
  "fn": 1
191
  },
192
  "PHONE": {
193
+ "precision": 0.9900990099009901,
194
+ "recall": 1.0,
195
+ "f1": 0.9950248756218906,
196
+ "tp": 100,
197
+ "fp": 1,
198
+ "fn": 0
199
  },
200
  "POSITION": {
201
+ "precision": 0.7857142857142857,
202
+ "recall": 0.99,
203
+ "f1": 0.8761061946902654,
204
+ "tp": 99,
205
+ "fp": 27,
206
+ "fn": 1
207
  },
208
  "RELIGION": {
209
+ "precision": 1.0,
210
+ "recall": 0.8,
211
+ "f1": 0.888888888888889,
212
+ "tp": 80,
213
+ "fp": 0,
214
+ "fn": 20
215
  },
216
  "RRN": {
217
+ "precision": 0.9117647058823529,
218
+ "recall": 0.93,
219
+ "f1": 0.9207920792079208,
220
+ "tp": 93,
221
+ "fp": 9,
222
+ "fn": 7
223
  },
224
  "SCHOOL": {
225
  "precision": 0.9803921568627451,
 
230
  "fn": 0
231
  },
232
  "URL": {
233
+ "precision": 0.8256880733944955,
234
+ "recall": 0.9,
235
+ "f1": 0.861244019138756,
236
+ "tp": 90,
237
+ "fp": 19,
238
+ "fn": 10
239
  },
240
  "USER_ID": {
241
+ "precision": 0.7154471544715447,
242
+ "recall": 0.88,
243
+ "f1": 0.789237668161435,
244
+ "tp": 88,
245
+ "fp": 35,
246
+ "fn": 12
247
  },
248
  "VEHICLE_NUMBER": {
249
+ "precision": 0.8073394495412844,
250
+ "recall": 0.88,
251
+ "f1": 0.8421052631578948,
252
+ "tp": 88,
253
+ "fp": 21,
254
+ "fn": 12
255
  },
256
  "WEIGHT": {
257
+ "precision": 0.8828828828828829,
258
+ "recall": 0.98,
259
+ "f1": 0.9289099526066351,
260
+ "tp": 98,
261
+ "fp": 13,
262
+ "fn": 2
263
  },
264
  "WORKPLACE": {
265
+ "precision": 0.9074074074074074,
266
+ "recall": 0.98,
267
+ "f1": 0.9423076923076924,
268
+ "tp": 98,
269
+ "fp": 10,
270
+ "fn": 2
271
  },
272
  "ZIPCODE": {
273
+ "precision": 0.8411214953271028,
274
+ "recall": 0.9,
275
+ "f1": 0.8695652173913043,
276
+ "tp": 90,
277
+ "fp": 17,
278
+ "fn": 10
279
  }
280
  }
281
  }
raw_evaluation_results.json CHANGED
The diff for this file is too large to render. See raw diff
 
threshold_policy.json CHANGED
@@ -59,25 +59,25 @@
59
  "precision_target": 0.995,
60
  "calibration": {
61
  "gold": 150,
62
- "tp": 137,
63
- "fp": 32,
64
- "fn": 13,
65
- "raw_precision": 0.8106508875739645,
66
- "raw_recall": 0.9133333333333333,
67
- "raw_f1": 0.8589341692789968,
68
- "tp_p01": 0.5120728421211242,
69
- "tp_p05": 0.7024677276611329,
70
- "fp_p95": 0.8592252254486084,
71
- "fp_p99": 0.9463381630182268,
72
- "tp_below_low": 4,
73
- "tp_below_low_rate": 0.029197080291970802,
74
- "fp_below_low": 17,
75
  "auto_band": {
76
- "tp": 95,
77
  "fp": 0,
78
  "precision": 1.0,
79
- "coverage": 0.6934306569343066,
80
- "wilson95_lower": 0.9611337736337737
81
  }
82
  },
83
  "routing_counts_initial": {
@@ -87,9 +87,9 @@
87
  "discarded_candidates": 0
88
  },
89
  "routing_counts_future": {
90
- "auto_accept_tp": 95,
91
  "auto_accept_fp": 0,
92
- "sllm_candidates": 74,
93
  "discarded_candidates": 0,
94
  "discarded_tp": 0,
95
  "discarded_fp": 0
@@ -123,10 +123,10 @@
123
  "raw_precision": 0.9514563106796117,
124
  "raw_recall": 0.98,
125
  "raw_f1": 0.9655172413793104,
126
- "tp_p01": 0.9768793314695359,
127
- "tp_p05": 0.9940129727125168,
128
- "fp_p95": 0.9987690567970275,
129
- "fp_p99": 0.9990222477912902,
130
  "tp_below_low": 0,
131
  "tp_below_low_rate": 0.0,
132
  "fp_below_low": 1,
@@ -176,18 +176,18 @@
176
  "calibration": {
177
  "gold": 100,
178
  "tp": 100,
179
- "fp": 14,
180
  "fn": 0,
181
- "raw_precision": 0.8771929824561403,
182
  "raw_recall": 1.0,
183
- "raw_f1": 0.9345794392523363,
184
- "tp_p01": 0.9901966875791549,
185
- "tp_p05": 0.9950935512781143,
186
- "fp_p95": 0.12422242946922778,
187
- "fp_p99": 0.13411296047270296,
188
  "tp_below_low": 0,
189
  "tp_below_low_rate": 0.0,
190
- "fp_below_low": 14,
191
  "auto_band": {
192
  "tp": 99,
193
  "fp": 0,
@@ -199,16 +199,16 @@
199
  "routing_counts_initial": {
200
  "auto_accept_tp": 0,
201
  "auto_accept_fp": 0,
202
- "sllm_candidates": 114,
203
  "discarded_candidates": 0
204
  },
205
  "routing_counts_future": {
206
  "auto_accept_tp": 99,
207
  "auto_accept_fp": 0,
208
  "sllm_candidates": 1,
209
- "discarded_candidates": 14,
210
  "discarded_tp": 0,
211
- "discarded_fp": 14
212
  },
213
  "conservative_auto_band": {
214
  "tp": 0,
@@ -220,7 +220,7 @@
220
  },
221
  "ALIEN_NUMBER": {
222
  "risk_tier": "high",
223
- "low": 0.6,
224
  "high": 1.0,
225
  "routing": {
226
  "confidence_gte_high": "SLLM",
@@ -233,37 +233,37 @@
233
  "precision_target": 0.995,
234
  "calibration": {
235
  "gold": 150,
236
- "tp": 146,
237
- "fp": 70,
238
- "fn": 4,
239
- "raw_precision": 0.6759259259259259,
240
- "raw_recall": 0.9733333333333334,
241
- "raw_f1": 0.7978142076502733,
242
- "tp_p01": 0.5507172822952271,
243
- "tp_p05": 0.6389045119285583,
244
- "fp_p95": 0.9627914458513259,
245
- "fp_p99": 0.9969346398115158,
246
- "tp_below_low": 5,
247
- "tp_below_low_rate": 0.03424657534246575,
248
- "fp_below_low": 44,
249
  "auto_band": {
250
- "tp": 13,
251
  "fp": 0,
252
  "precision": 1.0,
253
- "coverage": 0.08904109589041095,
254
- "wilson95_lower": 0.7718981569447084
255
  }
256
  },
257
  "routing_counts_initial": {
258
  "auto_accept_tp": 0,
259
  "auto_accept_fp": 0,
260
- "sllm_candidates": 216,
261
  "discarded_candidates": 0
262
  },
263
  "routing_counts_future": {
264
- "auto_accept_tp": 13,
265
  "auto_accept_fp": 0,
266
- "sllm_candidates": 203,
267
  "discarded_candidates": 0,
268
  "discarded_tp": 0,
269
  "discarded_fp": 0
@@ -292,34 +292,34 @@
292
  "calibration": {
293
  "gold": 100,
294
  "tp": 99,
295
- "fp": 6,
296
  "fn": 1,
297
- "raw_precision": 0.9428571428571428,
298
  "raw_recall": 0.99,
299
- "raw_f1": 0.9658536585365853,
300
- "tp_p01": 0.9049879360198975,
301
- "tp_p05": 0.99150550365448,
302
- "fp_p95": 0.8103273063898087,
303
- "fp_p99": 0.823517468571663,
304
- "tp_below_low": 1,
305
- "tp_below_low_rate": 0.010101010101010102,
306
  "fp_below_low": 6,
307
  "auto_band": {
308
- "tp": 97,
309
  "fp": 0,
310
  "precision": 1.0,
311
- "coverage": 0.9797979797979798,
312
- "wilson95_lower": 0.9619046107955446
313
  }
314
  },
315
  "routing_counts_initial": {
316
  "auto_accept_tp": 0,
317
  "auto_accept_fp": 0,
318
- "sllm_candidates": 105,
319
  "discarded_candidates": 0
320
  },
321
  "routing_counts_future": {
322
- "auto_accept_tp": 97,
323
  "auto_accept_fp": 0,
324
  "sllm_candidates": 8,
325
  "discarded_candidates": 0,
@@ -349,19 +349,19 @@
349
  "precision_target": 0.98,
350
  "calibration": {
351
  "gold": 100,
352
- "tp": 79,
353
- "fp": 109,
354
- "fn": 21,
355
- "raw_precision": 0.42021276595744683,
356
- "raw_recall": 0.79,
357
- "raw_f1": 0.5486111111111112,
358
- "tp_p01": 0.5321552926301956,
359
- "tp_p05": 0.9351438462734222,
360
- "fp_p95": 0.9973988771438599,
361
- "fp_p99": 0.998507137298584,
362
  "tp_below_low": 2,
363
- "tp_below_low_rate": 0.02531645569620253,
364
- "fp_below_low": 17,
365
  "auto_band": {
366
  "tp": 0,
367
  "fp": 0,
@@ -373,13 +373,13 @@
373
  "routing_counts_initial": {
374
  "auto_accept_tp": 0,
375
  "auto_accept_fp": 0,
376
- "sllm_candidates": 188,
377
  "discarded_candidates": 0
378
  },
379
  "routing_counts_future": {
380
  "auto_accept_tp": 0,
381
  "auto_accept_fp": 0,
382
- "sllm_candidates": 188,
383
  "discarded_candidates": 0,
384
  "discarded_tp": 0,
385
  "discarded_fp": 0
@@ -394,7 +394,7 @@
394
  },
395
  "CARD_NUMBER": {
396
  "risk_tier": "high",
397
- "low": 0.627,
398
  "high": 1.0,
399
  "routing": {
400
  "confidence_gte_high": "SLLM",
@@ -407,37 +407,37 @@
407
  "precision_target": 0.995,
408
  "calibration": {
409
  "gold": 150,
410
- "tp": 147,
411
- "fp": 9,
412
- "fn": 3,
413
- "raw_precision": 0.9423076923076923,
414
- "raw_recall": 0.98,
415
- "raw_f1": 0.9607843137254902,
416
- "tp_p01": 0.62718945145607,
417
- "tp_p05": 0.9321512699127197,
418
- "fp_p95": 0.7152620434761047,
419
- "fp_p99": 0.7640061116218566,
420
  "tp_below_low": 2,
421
- "tp_below_low_rate": 0.013605442176870748,
422
- "fp_below_low": 8,
423
  "auto_band": {
424
- "tp": 142,
425
  "fp": 0,
426
  "precision": 1.0,
427
- "coverage": 0.9659863945578231,
428
- "wilson95_lower": 0.9736590931531194
429
  }
430
  },
431
  "routing_counts_initial": {
432
  "auto_accept_tp": 0,
433
  "auto_accept_fp": 0,
434
- "sllm_candidates": 156,
435
  "discarded_candidates": 0
436
  },
437
  "routing_counts_future": {
438
- "auto_accept_tp": 142,
439
  "auto_accept_fp": 0,
440
- "sllm_candidates": 14,
441
  "discarded_candidates": 0,
442
  "discarded_tp": 0,
443
  "discarded_fp": 0
@@ -452,7 +452,7 @@
452
  },
453
  "CITY": {
454
  "risk_tier": "medium",
455
- "low": 0.834,
456
  "high": 1.0,
457
  "routing": {
458
  "confidence_gte_high": "SLLM",
@@ -471,19 +471,19 @@
471
  "raw_precision": 0.9802631578947368,
472
  "raw_recall": 0.9933333333333333,
473
  "raw_f1": 0.9867549668874172,
474
- "tp_p01": 0.8342308020591735,
475
- "tp_p05": 0.937603497505188,
476
- "fp_p95": 0.893658584356308,
477
- "fp_p99": 0.9099912536144257,
478
  "tp_below_low": 2,
479
  "tp_below_low_rate": 0.013422818791946308,
480
  "fp_below_low": 2,
481
  "auto_band": {
482
  "tp": 146,
483
- "fp": 1,
484
- "precision": 0.9931972789115646,
485
  "coverage": 0.9798657718120806,
486
- "wilson95_lower": 0.9624751101221806
487
  }
488
  },
489
  "routing_counts_initial": {
@@ -494,8 +494,8 @@
494
  },
495
  "routing_counts_future": {
496
  "auto_accept_tp": 146,
497
- "auto_accept_fp": 1,
498
- "sllm_candidates": 5,
499
  "discarded_candidates": 0,
500
  "discarded_tp": 0,
501
  "discarded_fp": 0
@@ -523,37 +523,37 @@
523
  "precision_target": 0.98,
524
  "calibration": {
525
  "gold": 100,
526
- "tp": 98,
527
  "fp": 2,
528
- "fn": 2,
529
- "raw_precision": 0.98,
530
- "raw_recall": 0.98,
531
- "raw_f1": 0.98,
532
- "tp_p01": 0.9511407971382141,
533
- "tp_p05": 0.9712725639343263,
534
- "fp_p95": 0.7911435544490814,
535
- "fp_p99": 0.8071458613872527,
536
- "tp_below_low": 0,
537
- "tp_below_low_rate": 0.0,
538
  "fp_below_low": 2,
539
  "auto_band": {
540
  "tp": 97,
541
  "fp": 0,
542
  "precision": 1.0,
543
- "coverage": 0.9897959183673469,
544
  "wilson95_lower": 0.9619046107955446
545
  }
546
  },
547
  "routing_counts_initial": {
548
  "auto_accept_tp": 0,
549
  "auto_accept_fp": 0,
550
- "sllm_candidates": 100,
551
  "discarded_candidates": 0
552
  },
553
  "routing_counts_future": {
554
  "auto_accept_tp": 97,
555
  "auto_accept_fp": 0,
556
- "sllm_candidates": 3,
557
  "discarded_candidates": 0,
558
  "discarded_tp": 0,
559
  "discarded_fp": 0
@@ -581,25 +581,25 @@
581
  "precision_target": 0.985,
582
  "calibration": {
583
  "gold": 100,
584
- "tp": 93,
585
- "fp": 56,
586
- "fn": 7,
587
- "raw_precision": 0.6241610738255033,
588
- "raw_recall": 0.93,
589
- "raw_f1": 0.746987951807229,
590
- "tp_p01": 0.4892506945133209,
591
- "tp_p05": 0.5480017781257629,
592
- "fp_p95": 0.975197970867157,
593
- "fp_p99": 0.9864130645990372,
594
- "tp_below_low": 6,
595
- "tp_below_low_rate": 0.06451612903225806,
596
- "fp_below_low": 20,
597
  "auto_band": {
598
- "tp": 42,
599
  "fp": 0,
600
  "precision": 1.0,
601
- "coverage": 0.45161290322580644,
602
- "wilson95_lower": 0.916198387490838
603
  }
604
  },
605
  "routing_counts_initial": {
@@ -609,9 +609,9 @@
609
  "discarded_candidates": 0
610
  },
611
  "routing_counts_future": {
612
- "auto_accept_tp": 42,
613
  "auto_accept_fp": 0,
614
- "sllm_candidates": 107,
615
  "discarded_candidates": 0,
616
  "discarded_tp": 0,
617
  "discarded_fp": 0
@@ -645,8 +645,8 @@
645
  "raw_precision": 1.0,
646
  "raw_recall": 1.0,
647
  "raw_f1": 1.0,
648
- "tp_p01": 0.9805606108903885,
649
- "tp_p05": 0.9973043203353882,
650
  "fp_p95": null,
651
  "fp_p99": null,
652
  "tp_below_low": 0,
@@ -661,9 +661,9 @@
661
  }
662
  },
663
  "routing_counts_initial": {
664
- "auto_accept_tp": 91,
665
  "auto_accept_fp": 0,
666
- "sllm_candidates": 9,
667
  "discarded_candidates": 0
668
  },
669
  "routing_counts_future": {
@@ -675,16 +675,16 @@
675
  "discarded_fp": 0
676
  },
677
  "conservative_auto_band": {
678
- "tp": 91,
679
  "fp": 0,
680
  "precision": 1.0,
681
- "coverage": 0.91,
682
  "rule": "V4 raw FP=0, V4 TP>=100, confidence>=0.999 TP>=10, confidence>=0.999 FP=0"
683
  }
684
  },
685
  "EMPLOYEE_ID": {
686
  "risk_tier": "medium",
687
- "low": 0.65,
688
  "high": 1.0,
689
  "routing": {
690
  "confidence_gte_high": "SLLM",
@@ -697,37 +697,37 @@
697
  "precision_target": 0.985,
698
  "calibration": {
699
  "gold": 141,
700
- "tp": 135,
701
- "fp": 146,
702
- "fn": 6,
703
- "raw_precision": 0.4804270462633452,
704
- "raw_recall": 0.9574468085106383,
705
- "raw_f1": 0.6398104265402844,
706
- "tp_p01": 0.6502189767360687,
707
- "tp_p05": 0.9183647990226746,
708
- "fp_p95": 0.9204906672239304,
709
- "fp_p99": 0.9778002738952639,
710
  "tp_below_low": 2,
711
- "tp_below_low_rate": 0.014814814814814815,
712
- "fp_below_low": 96,
713
  "auto_band": {
714
- "tp": 116,
715
  "fp": 1,
716
- "precision": 0.9914529914529915,
717
- "coverage": 0.8592592592592593,
718
- "wilson95_lower": 0.9531693460245405
719
  }
720
  },
721
  "routing_counts_initial": {
722
  "auto_accept_tp": 0,
723
  "auto_accept_fp": 0,
724
- "sllm_candidates": 281,
725
  "discarded_candidates": 0
726
  },
727
  "routing_counts_future": {
728
- "auto_accept_tp": 116,
729
  "auto_accept_fp": 1,
730
- "sllm_candidates": 164,
731
  "discarded_candidates": 0,
732
  "discarded_tp": 0,
733
  "discarded_fp": 0
@@ -761,19 +761,19 @@
761
  "raw_precision": 0.591715976331361,
762
  "raw_recall": 1.0,
763
  "raw_f1": 0.7434944237918216,
764
- "tp_p01": 0.9970074146986008,
765
- "tp_p05": 0.9978120118379593,
766
- "fp_p95": 0.9951604723930358,
767
- "fp_p99": 0.9966348576545715,
768
  "tp_below_low": 0,
769
  "tp_below_low_rate": 0.0,
770
- "fp_below_low": 3,
771
  "auto_band": {
772
- "tp": 89,
773
  "fp": 0,
774
  "precision": 1.0,
775
- "coverage": 0.89,
776
- "wilson95_lower": 0.9586219970358115
777
  }
778
  },
779
  "routing_counts_initial": {
@@ -783,12 +783,12 @@
783
  "discarded_candidates": 0
784
  },
785
  "routing_counts_future": {
786
- "auto_accept_tp": 89,
787
  "auto_accept_fp": 0,
788
- "sllm_candidates": 77,
789
- "discarded_candidates": 3,
790
  "discarded_tp": 0,
791
- "discarded_fp": 3
792
  },
793
  "conservative_auto_band": {
794
  "tp": 0,
@@ -814,18 +814,18 @@
814
  "calibration": {
815
  "gold": 100,
816
  "tp": 100,
817
- "fp": 69,
818
  "fn": 0,
819
- "raw_precision": 0.591715976331361,
820
  "raw_recall": 1.0,
821
- "raw_f1": 0.7434944237918216,
822
- "tp_p01": 0.9105177825689317,
823
- "tp_p05": 0.9918957084417344,
824
- "fp_p95": 0.9994500994682312,
825
- "fp_p99": 0.9995385837554931,
826
  "tp_below_low": 1,
827
  "tp_below_low_rate": 0.01,
828
- "fp_below_low": 2,
829
  "auto_band": {
830
  "tp": 0,
831
  "fp": 0,
@@ -837,16 +837,16 @@
837
  "routing_counts_initial": {
838
  "auto_accept_tp": 0,
839
  "auto_accept_fp": 0,
840
- "sllm_candidates": 169,
841
  "discarded_candidates": 0
842
  },
843
  "routing_counts_future": {
844
  "auto_accept_tp": 0,
845
  "auto_accept_fp": 0,
846
  "sllm_candidates": 166,
847
- "discarded_candidates": 3,
848
  "discarded_tp": 1,
849
- "discarded_fp": 2
850
  },
851
  "conservative_auto_band": {
852
  "tp": 0,
@@ -872,18 +872,18 @@
872
  "calibration": {
873
  "gold": 100,
874
  "tp": 99,
875
- "fp": 53,
876
  "fn": 1,
877
- "raw_precision": 0.6513157894736842,
878
  "raw_recall": 0.99,
879
- "raw_f1": 0.7857142857142857,
880
- "tp_p01": 0.9329536390304566,
881
- "tp_p05": 0.9795423209667207,
882
- "fp_p95": 0.9976564168930053,
883
- "fp_p99": 0.9979968929290772,
884
  "tp_below_low": 0,
885
  "tp_below_low_rate": 0.0,
886
- "fp_below_low": 32,
887
  "auto_band": {
888
  "tp": 0,
889
  "fp": 0,
@@ -895,13 +895,13 @@
895
  "routing_counts_initial": {
896
  "auto_accept_tp": 0,
897
  "auto_accept_fp": 0,
898
- "sllm_candidates": 152,
899
  "discarded_candidates": 0
900
  },
901
  "routing_counts_future": {
902
  "auto_accept_tp": 0,
903
  "auto_accept_fp": 0,
904
- "sllm_candidates": 152,
905
  "discarded_candidates": 0,
906
  "discarded_tp": 0,
907
  "discarded_fp": 0
@@ -930,36 +930,36 @@
930
  "calibration": {
931
  "gold": 100,
932
  "tp": 99,
933
- "fp": 47,
934
  "fn": 1,
935
- "raw_precision": 0.678082191780822,
936
  "raw_recall": 0.99,
937
- "raw_f1": 0.8048780487804877,
938
- "tp_p01": 0.9976530659198761,
939
- "tp_p05": 0.9983840703964234,
940
- "fp_p95": 0.83413963317871,
941
- "fp_p99": 0.9731187832355499,
942
  "tp_below_low": 0,
943
  "tp_below_low_rate": 0.0,
944
- "fp_below_low": 44,
945
  "auto_band": {
946
- "tp": 98,
947
  "fp": 1,
948
- "precision": 0.98989898989899,
949
- "coverage": 0.98989898989899,
950
- "wilson95_lower": 0.9449833445859679
951
  }
952
  },
953
  "routing_counts_initial": {
954
  "auto_accept_tp": 0,
955
  "auto_accept_fp": 0,
956
- "sllm_candidates": 146,
957
  "discarded_candidates": 0
958
  },
959
  "routing_counts_future": {
960
- "auto_accept_tp": 98,
961
  "auto_accept_fp": 1,
962
- "sllm_candidates": 47,
963
  "discarded_candidates": 0,
964
  "discarded_tp": 0,
965
  "discarded_fp": 0
@@ -987,37 +987,37 @@
987
  "precision_target": 0.985,
988
  "calibration": {
989
  "gold": 142,
990
- "tp": 131,
991
- "fp": 31,
992
- "fn": 11,
993
- "raw_precision": 0.808641975308642,
994
- "raw_recall": 0.9225352112676056,
995
- "raw_f1": 0.861842105263158,
996
- "tp_p01": 0.4460257738828659,
997
- "tp_p05": 0.5352282822132111,
998
- "fp_p95": 0.7273073792457581,
999
- "fp_p99": 0.8589926719665527,
1000
- "tp_below_low": 9,
1001
- "tp_below_low_rate": 0.06870229007633588,
1002
- "fp_below_low": 25,
1003
  "auto_band": {
1004
- "tp": 98,
1005
- "fp": 1,
1006
- "precision": 0.98989898989899,
1007
- "coverage": 0.7480916030534351,
1008
- "wilson95_lower": 0.9449833445859679
1009
  }
1010
  },
1011
  "routing_counts_initial": {
1012
  "auto_accept_tp": 0,
1013
  "auto_accept_fp": 0,
1014
- "sllm_candidates": 162,
1015
  "discarded_candidates": 0
1016
  },
1017
  "routing_counts_future": {
1018
- "auto_accept_tp": 98,
1019
- "auto_accept_fp": 1,
1020
- "sllm_candidates": 63,
1021
  "discarded_candidates": 0,
1022
  "discarded_tp": 0,
1023
  "discarded_fp": 0
@@ -1045,40 +1045,40 @@
1045
  "precision_target": 0.985,
1046
  "calibration": {
1047
  "gold": 150,
1048
- "tp": 146,
1049
- "fp": 48,
1050
- "fn": 4,
1051
- "raw_precision": 0.7525773195876289,
1052
- "raw_recall": 0.9733333333333334,
1053
- "raw_f1": 0.8488372093023255,
1054
- "tp_p01": 0.9713512897491455,
1055
- "tp_p05": 0.9989071488380432,
1056
- "fp_p95": 0.9976738452911377,
1057
- "fp_p99": 0.99977922976017,
1058
- "tp_below_low": 1,
1059
- "tp_below_low_rate": 0.00684931506849315,
1060
- "fp_below_low": 36,
1061
  "auto_band": {
1062
- "tp": 139,
1063
  "fp": 2,
1064
- "precision": 0.9858156028368794,
1065
- "coverage": 0.952054794520548,
1066
- "wilson95_lower": 0.9497593074687153
1067
  }
1068
  },
1069
  "routing_counts_initial": {
1070
  "auto_accept_tp": 0,
1071
  "auto_accept_fp": 0,
1072
- "sllm_candidates": 194,
1073
  "discarded_candidates": 0
1074
  },
1075
  "routing_counts_future": {
1076
- "auto_accept_tp": 139,
1077
  "auto_accept_fp": 2,
1078
- "sllm_candidates": 16,
1079
- "discarded_candidates": 37,
1080
- "discarded_tp": 1,
1081
- "discarded_fp": 36
1082
  },
1083
  "conservative_auto_band": {
1084
  "tp": 0,
@@ -1109,8 +1109,8 @@
1109
  "raw_precision": 1.0,
1110
  "raw_recall": 1.0,
1111
  "raw_f1": 1.0,
1112
- "tp_p01": 0.933220180273056,
1113
- "tp_p05": 0.9820838928222657,
1114
  "fp_p95": null,
1115
  "fp_p99": null,
1116
  "tp_below_low": 0,
@@ -1125,9 +1125,9 @@
1125
  }
1126
  },
1127
  "routing_counts_initial": {
1128
- "auto_accept_tp": 41,
1129
  "auto_accept_fp": 0,
1130
- "sllm_candidates": 59,
1131
  "discarded_candidates": 0
1132
  },
1133
  "routing_counts_future": {
@@ -1139,10 +1139,10 @@
1139
  "discarded_fp": 0
1140
  },
1141
  "conservative_auto_band": {
1142
- "tp": 41,
1143
  "fp": 0,
1144
  "precision": 1.0,
1145
- "coverage": 0.41,
1146
  "rule": "V4 raw FP=0, V4 TP>=100, confidence>=0.999 TP>=10, confidence>=0.999 FP=0"
1147
  }
1148
  },
@@ -1161,37 +1161,37 @@
1161
  "precision_target": 0.985,
1162
  "calibration": {
1163
  "gold": 150,
1164
- "tp": 105,
1165
- "fp": 60,
1166
- "fn": 45,
1167
- "raw_precision": 0.6363636363636364,
1168
- "raw_recall": 0.7,
1169
- "raw_f1": 0.6666666666666666,
1170
- "tp_p01": 0.25216613054275516,
1171
- "tp_p05": 0.39979671835899355,
1172
- "fp_p95": 0.8994668990373611,
1173
- "fp_p99": 0.9463484400510787,
1174
- "tp_below_low": 19,
1175
- "tp_below_low_rate": 0.18095238095238095,
1176
- "fp_below_low": 33,
1177
  "auto_band": {
1178
- "tp": 38,
1179
- "fp": 0,
1180
- "precision": 1.0,
1181
- "coverage": 0.3619047619047619,
1182
- "wilson95_lower": 0.90818706741616
1183
  }
1184
  },
1185
  "routing_counts_initial": {
1186
  "auto_accept_tp": 0,
1187
  "auto_accept_fp": 0,
1188
- "sllm_candidates": 165,
1189
  "discarded_candidates": 0
1190
  },
1191
  "routing_counts_future": {
1192
- "auto_accept_tp": 38,
1193
- "auto_accept_fp": 0,
1194
- "sllm_candidates": 127,
1195
  "discarded_candidates": 0,
1196
  "discarded_tp": 0,
1197
  "discarded_fp": 0
@@ -1206,7 +1206,7 @@
1206
  },
1207
  "PARTICIPANT_ID": {
1208
  "risk_tier": "medium",
1209
- "low": 0.714,
1210
  "high": 1.0,
1211
  "routing": {
1212
  "confidence_gte_high": "SLLM",
@@ -1220,36 +1220,36 @@
1220
  "calibration": {
1221
  "gold": 167,
1222
  "tp": 167,
1223
- "fp": 49,
1224
  "fn": 0,
1225
- "raw_precision": 0.7731481481481481,
1226
  "raw_recall": 1.0,
1227
- "raw_f1": 0.8720626631853786,
1228
- "tp_p01": 0.7147158861160279,
1229
- "tp_p05": 0.9335695087909699,
1230
- "fp_p95": 0.6939958691596984,
1231
- "fp_p99": 0.9161539459228512,
1232
  "tp_below_low": 2,
1233
  "tp_below_low_rate": 0.011976047904191617,
1234
- "fp_below_low": 47,
1235
  "auto_band": {
1236
- "tp": 162,
1237
  "fp": 1,
1238
- "precision": 0.9938650306748467,
1239
- "coverage": 0.9700598802395209,
1240
- "wilson95_lower": 0.966070916482625
1241
  }
1242
  },
1243
  "routing_counts_initial": {
1244
  "auto_accept_tp": 0,
1245
  "auto_accept_fp": 0,
1246
- "sllm_candidates": 216,
1247
  "discarded_candidates": 0
1248
  },
1249
  "routing_counts_future": {
1250
- "auto_accept_tp": 162,
1251
  "auto_accept_fp": 1,
1252
- "sllm_candidates": 53,
1253
  "discarded_candidates": 0,
1254
  "discarded_tp": 0,
1255
  "discarded_fp": 0
@@ -1265,31 +1265,31 @@
1265
  "PASSPORTNUM": {
1266
  "risk_tier": "high",
1267
  "low": 0.85,
1268
- "high": 0.999,
1269
  "routing": {
1270
- "confidence_gte_high": "NER_ACCEPT",
1271
  "low_lte_confidence_lt_high": "SLLM",
1272
  "confidence_lt_low_initial": "SLLM",
1273
  "confidence_lt_low_future": "SLLM"
1274
  },
1275
- "auto_accept_enabled": true,
1276
  "future_discard_below_low_allowed": false,
1277
  "precision_target": 0.995,
1278
  "calibration": {
1279
  "gold": 100,
1280
  "tp": 100,
1281
- "fp": 0,
1282
  "fn": 0,
1283
- "raw_precision": 1.0,
1284
  "raw_recall": 1.0,
1285
- "raw_f1": 1.0,
1286
- "tp_p01": 0.8905399191379547,
1287
- "tp_p05": 0.9846730321645737,
1288
- "fp_p95": null,
1289
- "fp_p99": null,
1290
  "tp_below_low": 0,
1291
  "tp_below_low_rate": 0.0,
1292
- "fp_below_low": 0,
1293
  "auto_band": {
1294
  "tp": 99,
1295
  "fp": 0,
@@ -1299,24 +1299,24 @@
1299
  }
1300
  },
1301
  "routing_counts_initial": {
1302
- "auto_accept_tp": 41,
1303
  "auto_accept_fp": 0,
1304
- "sllm_candidates": 59,
1305
  "discarded_candidates": 0
1306
  },
1307
  "routing_counts_future": {
1308
  "auto_accept_tp": 99,
1309
  "auto_accept_fp": 0,
1310
- "sllm_candidates": 1,
1311
  "discarded_candidates": 0,
1312
  "discarded_tp": 0,
1313
  "discarded_fp": 0
1314
  },
1315
  "conservative_auto_band": {
1316
- "tp": 41,
1317
  "fp": 0,
1318
- "precision": 1.0,
1319
- "coverage": 0.41,
1320
  "rule": "V4 raw FP=0, V4 TP>=100, confidence>=0.999 TP>=10, confidence>=0.999 FP=0"
1321
  }
1322
  },
@@ -1336,18 +1336,18 @@
1336
  "calibration": {
1337
  "gold": 100,
1338
  "tp": 100,
1339
- "fp": 37,
1340
  "fn": 0,
1341
- "raw_precision": 0.7299270072992701,
1342
  "raw_recall": 1.0,
1343
- "raw_f1": 0.8438818565400844,
1344
- "tp_p01": 0.9977281510829925,
1345
- "tp_p05": 0.9990428477525711,
1346
- "fp_p95": 0.9996501207351685,
1347
- "fp_p99": 0.9996863222122192,
1348
  "tp_below_low": 0,
1349
  "tp_below_low_rate": 0.0,
1350
- "fp_below_low": 5,
1351
  "auto_band": {
1352
  "tp": 0,
1353
  "fp": 0,
@@ -1359,13 +1359,13 @@
1359
  "routing_counts_initial": {
1360
  "auto_accept_tp": 0,
1361
  "auto_accept_fp": 0,
1362
- "sllm_candidates": 137,
1363
  "discarded_candidates": 0
1364
  },
1365
  "routing_counts_future": {
1366
  "auto_accept_tp": 0,
1367
  "auto_accept_fp": 0,
1368
- "sllm_candidates": 137,
1369
  "discarded_candidates": 0,
1370
  "discarded_tp": 0,
1371
  "discarded_fp": 0
@@ -1394,18 +1394,18 @@
1394
  "calibration": {
1395
  "gold": 100,
1396
  "tp": 99,
1397
- "fp": 65,
1398
  "fn": 1,
1399
- "raw_precision": 0.6036585365853658,
1400
  "raw_recall": 0.99,
1401
- "raw_f1": 0.75,
1402
- "tp_p01": 0.9932499432563782,
1403
- "tp_p05": 0.9959164083003998,
1404
- "fp_p95": 0.7920477986335751,
1405
- "fp_p99": 0.9559848380088807,
1406
  "tp_below_low": 0,
1407
  "tp_below_low_rate": 0.0,
1408
- "fp_below_low": 62,
1409
  "auto_band": {
1410
  "tp": 98,
1411
  "fp": 1,
@@ -1417,13 +1417,13 @@
1417
  "routing_counts_initial": {
1418
  "auto_accept_tp": 0,
1419
  "auto_accept_fp": 0,
1420
- "sllm_candidates": 164,
1421
  "discarded_candidates": 0
1422
  },
1423
  "routing_counts_future": {
1424
  "auto_accept_tp": 98,
1425
  "auto_accept_fp": 1,
1426
- "sllm_candidates": 65,
1427
  "discarded_candidates": 0,
1428
  "discarded_tp": 0,
1429
  "discarded_fp": 0
@@ -1452,18 +1452,18 @@
1452
  "calibration": {
1453
  "gold": 100,
1454
  "tp": 86,
1455
- "fp": 3,
1456
  "fn": 14,
1457
- "raw_precision": 0.9662921348314607,
1458
  "raw_recall": 0.86,
1459
- "raw_f1": 0.9100529100529101,
1460
- "tp_p01": 0.9789567559957504,
1461
- "tp_p05": 0.9946330040693283,
1462
- "fp_p95": 0.7368616610765457,
1463
- "fp_p99": 0.7783877283334731,
1464
  "tp_below_low": 0,
1465
  "tp_below_low_rate": 0.0,
1466
- "fp_below_low": 3,
1467
  "auto_band": {
1468
  "tp": 85,
1469
  "fp": 0,
@@ -1475,13 +1475,13 @@
1475
  "routing_counts_initial": {
1476
  "auto_accept_tp": 0,
1477
  "auto_accept_fp": 0,
1478
- "sllm_candidates": 89,
1479
  "discarded_candidates": 0
1480
  },
1481
  "routing_counts_future": {
1482
  "auto_accept_tp": 85,
1483
  "auto_accept_fp": 0,
1484
- "sllm_candidates": 4,
1485
  "discarded_candidates": 0,
1486
  "discarded_tp": 0,
1487
  "discarded_fp": 0
@@ -1509,37 +1509,37 @@
1509
  "precision_target": 0.995,
1510
  "calibration": {
1511
  "gold": 150,
1512
- "tp": 141,
1513
- "fp": 33,
1514
- "fn": 9,
1515
- "raw_precision": 0.8103448275862069,
1516
- "raw_recall": 0.94,
1517
- "raw_f1": 0.8703703703703703,
1518
- "tp_p01": 0.5498645544052123,
1519
- "tp_p05": 0.6394393444061279,
1520
- "fp_p95": 0.99106023311615,
1521
- "fp_p99": 0.9943838906288147,
1522
- "tp_below_low": 5,
1523
- "tp_below_low_rate": 0.03546099290780142,
1524
- "fp_below_low": 23,
1525
  "auto_band": {
1526
- "tp": 23,
1527
  "fp": 0,
1528
  "precision": 1.0,
1529
- "coverage": 0.16312056737588654,
1530
- "wilson95_lower": 0.8568788745827373
1531
  }
1532
  },
1533
  "routing_counts_initial": {
1534
  "auto_accept_tp": 0,
1535
  "auto_accept_fp": 0,
1536
- "sllm_candidates": 174,
1537
  "discarded_candidates": 0
1538
  },
1539
  "routing_counts_future": {
1540
- "auto_accept_tp": 23,
1541
  "auto_accept_fp": 0,
1542
- "sllm_candidates": 151,
1543
  "discarded_candidates": 0,
1544
  "discarded_tp": 0,
1545
  "discarded_fp": 0
@@ -1560,10 +1560,10 @@
1560
  "confidence_gte_high": "NER_ACCEPT",
1561
  "low_lte_confidence_lt_high": "SLLM",
1562
  "confidence_lt_low_initial": "SLLM",
1563
- "confidence_lt_low_future": "SLLM"
1564
  },
1565
  "auto_accept_enabled": true,
1566
- "future_discard_below_low_allowed": false,
1567
  "precision_target": 0.985,
1568
  "calibration": {
1569
  "gold": 150,
@@ -1573,40 +1573,40 @@
1573
  "raw_precision": 1.0,
1574
  "raw_recall": 1.0,
1575
  "raw_f1": 1.0,
1576
- "tp_p01": 0.9140399301052093,
1577
- "tp_p05": 0.9981067180633545,
1578
  "fp_p95": null,
1579
  "fp_p99": null,
1580
- "tp_below_low": 2,
1581
- "tp_below_low_rate": 0.013333333333333334,
1582
  "fp_below_low": 0,
1583
  "auto_band": {
1584
- "tp": 147,
1585
  "fp": 0,
1586
  "precision": 1.0,
1587
- "coverage": 0.98,
1588
- "wilson95_lower": 0.9745322245322244
1589
  }
1590
  },
1591
  "routing_counts_initial": {
1592
- "auto_accept_tp": 134,
1593
  "auto_accept_fp": 0,
1594
- "sllm_candidates": 16,
1595
  "discarded_candidates": 0
1596
  },
1597
  "routing_counts_future": {
1598
- "auto_accept_tp": 147,
1599
  "auto_accept_fp": 0,
1600
- "sllm_candidates": 3,
1601
- "discarded_candidates": 0,
1602
- "discarded_tp": 0,
1603
  "discarded_fp": 0
1604
  },
1605
  "conservative_auto_band": {
1606
- "tp": 134,
1607
  "fp": 0,
1608
  "precision": 1.0,
1609
- "coverage": 0.8933333333333333,
1610
  "rule": "V4 raw FP=0, V4 TP>=100, confidence>=0.999 TP>=10, confidence>=0.999 FP=0"
1611
  }
1612
  },
@@ -1626,35 +1626,35 @@
1626
  "calibration": {
1627
  "gold": 100,
1628
  "tp": 98,
1629
- "fp": 3,
1630
  "fn": 2,
1631
- "raw_precision": 0.9702970297029703,
1632
  "raw_recall": 0.98,
1633
- "raw_f1": 0.9751243781094527,
1634
- "tp_p01": 0.9858153849840164,
1635
- "tp_p05": 0.9929412394762039,
1636
- "fp_p95": 0.986471951007843,
1637
- "fp_p99": 0.9941968083381654,
1638
  "tp_below_low": 0,
1639
  "tp_below_low_rate": 0.0,
1640
- "fp_below_low": 1,
1641
  "auto_band": {
1642
  "tp": 97,
1643
- "fp": 1,
1644
- "precision": 0.9897959183673469,
1645
  "coverage": 0.9897959183673469,
1646
- "wilson95_lower": 0.9444438369076963
1647
  }
1648
  },
1649
  "routing_counts_initial": {
1650
  "auto_accept_tp": 0,
1651
  "auto_accept_fp": 0,
1652
- "sllm_candidates": 101,
1653
  "discarded_candidates": 0
1654
  },
1655
  "routing_counts_future": {
1656
  "auto_accept_tp": 97,
1657
- "auto_accept_fp": 1,
1658
  "sllm_candidates": 3,
1659
  "discarded_candidates": 0,
1660
  "discarded_tp": 0,
@@ -1683,19 +1683,19 @@
1683
  "precision_target": 0.985,
1684
  "calibration": {
1685
  "gold": 150,
1686
- "tp": 118,
1687
- "fp": 45,
1688
- "fn": 32,
1689
- "raw_precision": 0.7239263803680982,
1690
- "raw_recall": 0.7866666666666666,
1691
- "raw_f1": 0.7539936102236422,
1692
- "tp_p01": 0.4981919765472412,
1693
- "tp_p05": 0.5556579768657685,
1694
- "fp_p95": 0.9987887620925904,
1695
- "fp_p99": 0.9988537788391114,
1696
  "tp_below_low": 8,
1697
- "tp_below_low_rate": 0.06779661016949153,
1698
- "fp_below_low": 23,
1699
  "auto_band": {
1700
  "tp": 0,
1701
  "fp": 0,
@@ -1728,7 +1728,7 @@
1728
  },
1729
  "VEHICLE_NUMBER": {
1730
  "risk_tier": "low",
1731
- "low": 0.845,
1732
  "high": 1.0,
1733
  "routing": {
1734
  "confidence_gte_high": "SLLM",
@@ -1742,39 +1742,39 @@
1742
  "calibration": {
1743
  "gold": 100,
1744
  "tp": 100,
1745
- "fp": 11,
1746
  "fn": 0,
1747
- "raw_precision": 0.9009009009009009,
1748
  "raw_recall": 1.0,
1749
- "raw_f1": 0.947867298578199,
1750
- "tp_p01": 0.8454677325487138,
1751
- "tp_p05": 0.9418180853128434,
1752
- "fp_p95": 0.6710271835327148,
1753
- "fp_p99": 0.6734858036041259,
1754
  "tp_below_low": 1,
1755
  "tp_below_low_rate": 0.01,
1756
- "fp_below_low": 11,
1757
  "auto_band": {
1758
- "tp": 97,
1759
  "fp": 0,
1760
  "precision": 1.0,
1761
- "coverage": 0.97,
1762
- "wilson95_lower": 0.9619046107955446
1763
  }
1764
  },
1765
  "routing_counts_initial": {
1766
  "auto_accept_tp": 0,
1767
  "auto_accept_fp": 0,
1768
- "sllm_candidates": 111,
1769
  "discarded_candidates": 0
1770
  },
1771
  "routing_counts_future": {
1772
- "auto_accept_tp": 97,
1773
  "auto_accept_fp": 0,
1774
- "sllm_candidates": 2,
1775
- "discarded_candidates": 12,
1776
  "discarded_tp": 1,
1777
- "discarded_fp": 11
1778
  },
1779
  "conservative_auto_band": {
1780
  "tp": 0,
@@ -1805,19 +1805,19 @@
1805
  "raw_precision": 0.5988023952095808,
1806
  "raw_recall": 1.0,
1807
  "raw_f1": 0.7490636704119851,
1808
- "tp_p01": 0.9355115407705308,
1809
- "tp_p05": 0.9632527709007264,
1810
- "fp_p95": 0.9939551532268524,
1811
- "fp_p99": 0.995442830324173,
1812
  "tp_below_low": 0,
1813
  "tp_below_low_rate": 0.0,
1814
  "fp_below_low": 0,
1815
  "auto_band": {
1816
- "tp": 47,
1817
  "fp": 0,
1818
- "precision": 1.0,
1819
- "coverage": 0.47,
1820
- "wilson95_lower": 0.9244398288016114
1821
  }
1822
  },
1823
  "routing_counts_initial": {
@@ -1827,9 +1827,9 @@
1827
  "discarded_candidates": 0
1828
  },
1829
  "routing_counts_future": {
1830
- "auto_accept_tp": 47,
1831
  "auto_accept_fp": 0,
1832
- "sllm_candidates": 120,
1833
  "discarded_candidates": 0,
1834
  "discarded_tp": 0,
1835
  "discarded_fp": 0
@@ -1858,36 +1858,36 @@
1858
  "calibration": {
1859
  "gold": 150,
1860
  "tp": 144,
1861
- "fp": 14,
1862
  "fn": 6,
1863
- "raw_precision": 0.9113924050632911,
1864
  "raw_recall": 0.96,
1865
- "raw_f1": 0.935064935064935,
1866
- "tp_p01": 0.09240424945950508,
1867
- "tp_p05": 0.20271302610635755,
1868
- "fp_p95": 0.9822952568531036,
1869
- "fp_p99": 0.9877596342563628,
1870
  "tp_below_low": 32,
1871
  "tp_below_low_rate": 0.2222222222222222,
1872
  "fp_below_low": 5,
1873
  "auto_band": {
1874
- "tp": 38,
1875
  "fp": 0,
1876
  "precision": 1.0,
1877
- "coverage": 0.2638888888888889,
1878
- "wilson95_lower": 0.90818706741616
1879
  }
1880
  },
1881
  "routing_counts_initial": {
1882
  "auto_accept_tp": 0,
1883
  "auto_accept_fp": 0,
1884
- "sllm_candidates": 158,
1885
  "discarded_candidates": 0
1886
  },
1887
  "routing_counts_future": {
1888
- "auto_accept_tp": 38,
1889
  "auto_accept_fp": 0,
1890
- "sllm_candidates": 120,
1891
  "discarded_candidates": 0,
1892
  "discarded_tp": 0,
1893
  "discarded_fp": 0
@@ -1902,7 +1902,7 @@
1902
  },
1903
  "ZIPCODE": {
1904
  "risk_tier": "medium",
1905
- "low": 0.743,
1906
  "high": 1.0,
1907
  "routing": {
1908
  "confidence_gte_high": "SLLM",
@@ -1916,36 +1916,36 @@
1916
  "calibration": {
1917
  "gold": 100,
1918
  "tp": 97,
1919
- "fp": 37,
1920
  "fn": 3,
1921
- "raw_precision": 0.7238805970149254,
1922
  "raw_recall": 0.97,
1923
- "raw_f1": 0.8290598290598291,
1924
- "tp_p01": 0.7434603476524353,
1925
- "tp_p05": 0.9343424081802368,
1926
- "fp_p95": 0.976547598838806,
1927
- "fp_p99": 0.9922604513168336,
1928
  "tp_below_low": 1,
1929
  "tp_below_low_rate": 0.010309278350515464,
1930
- "fp_below_low": 20,
1931
  "auto_band": {
1932
- "tp": 71,
1933
  "fp": 1,
1934
- "precision": 0.9861111111111112,
1935
- "coverage": 0.7319587628865979,
1936
- "wilson95_lower": 0.9254321971571302
1937
  }
1938
  },
1939
  "routing_counts_initial": {
1940
  "auto_accept_tp": 0,
1941
  "auto_accept_fp": 0,
1942
- "sllm_candidates": 134,
1943
  "discarded_candidates": 0
1944
  },
1945
  "routing_counts_future": {
1946
- "auto_accept_tp": 71,
1947
  "auto_accept_fp": 1,
1948
- "sllm_candidates": 62,
1949
  "discarded_candidates": 0,
1950
  "discarded_tp": 0,
1951
  "discarded_fp": 0
@@ -1960,25 +1960,24 @@
1960
  }
1961
  },
1962
  "routing_totals_initial": {
1963
- "auto_tp": 307,
1964
  "auto_fp": 0,
1965
- "sllm_candidates": 4647,
1966
  "discarded_candidates": 0,
1967
- "unrecovered_gold_fn": 189,
1968
  "auto_precision": 1.0
1969
  },
1970
  "routing_totals_future": {
1971
- "auto_tp": 2471,
1972
- "auto_fp": 10,
1973
- "sllm_candidates": 2404,
1974
- "discarded_candidates": 69,
1975
- "unrecovered_gold_fn": 189,
1976
- "auto_precision": 0.9959693671906489
1977
  },
1978
  "auto_enabled_labels": [
1979
  "EMAIL",
1980
  "NATIONALITY",
1981
- "PASSPORTNUM",
1982
  "SCHOOL"
1983
  ]
1984
  }
 
59
  "precision_target": 0.995,
60
  "calibration": {
61
  "gold": 150,
62
+ "tp": 141,
63
+ "fp": 28,
64
+ "fn": 9,
65
+ "raw_precision": 0.834319526627219,
66
+ "raw_recall": 0.94,
67
+ "raw_f1": 0.8840125391849529,
68
+ "tp_p01": 0.5279600262641907,
69
+ "tp_p05": 0.7730298042297363,
70
+ "fp_p95": 0.9650364160537719,
71
+ "fp_p99": 0.989805857539177,
72
+ "tp_below_low": 3,
73
+ "tp_below_low_rate": 0.02127659574468085,
74
+ "fp_below_low": 14,
75
  "auto_band": {
76
+ "tp": 83,
77
  "fp": 0,
78
  "precision": 1.0,
79
+ "coverage": 0.5886524822695035,
80
+ "wilson95_lower": 0.9557631365612794
81
  }
82
  },
83
  "routing_counts_initial": {
 
87
  "discarded_candidates": 0
88
  },
89
  "routing_counts_future": {
90
+ "auto_accept_tp": 83,
91
  "auto_accept_fp": 0,
92
+ "sllm_candidates": 86,
93
  "discarded_candidates": 0,
94
  "discarded_tp": 0,
95
  "discarded_fp": 0
 
123
  "raw_precision": 0.9514563106796117,
124
  "raw_recall": 0.98,
125
  "raw_f1": 0.9655172413793104,
126
+ "tp_p01": 0.989485747218132,
127
+ "tp_p05": 0.99609954059124,
128
+ "fp_p95": 0.9989572048187256,
129
+ "fp_p99": 0.999220905303955,
130
  "tp_below_low": 0,
131
  "tp_below_low_rate": 0.0,
132
  "fp_below_low": 1,
 
176
  "calibration": {
177
  "gold": 100,
178
  "tp": 100,
179
+ "fp": 33,
180
  "fn": 0,
181
+ "raw_precision": 0.7518796992481203,
182
  "raw_recall": 1.0,
183
+ "raw_f1": 0.8583690987124464,
184
+ "tp_p01": 0.9887144988775254,
185
+ "tp_p05": 0.9955841392278671,
186
+ "fp_p95": 0.14105110466480253,
187
+ "fp_p99": 0.15072334706783294,
188
  "tp_below_low": 0,
189
  "tp_below_low_rate": 0.0,
190
+ "fp_below_low": 33,
191
  "auto_band": {
192
  "tp": 99,
193
  "fp": 0,
 
199
  "routing_counts_initial": {
200
  "auto_accept_tp": 0,
201
  "auto_accept_fp": 0,
202
+ "sllm_candidates": 133,
203
  "discarded_candidates": 0
204
  },
205
  "routing_counts_future": {
206
  "auto_accept_tp": 99,
207
  "auto_accept_fp": 0,
208
  "sllm_candidates": 1,
209
+ "discarded_candidates": 33,
210
  "discarded_tp": 0,
211
+ "discarded_fp": 33
212
  },
213
  "conservative_auto_band": {
214
  "tp": 0,
 
220
  },
221
  "ALIEN_NUMBER": {
222
  "risk_tier": "high",
223
+ "low": 0.618,
224
  "high": 1.0,
225
  "routing": {
226
  "confidence_gte_high": "SLLM",
 
233
  "precision_target": 0.995,
234
  "calibration": {
235
  "gold": 150,
236
+ "tp": 143,
237
+ "fp": 68,
238
+ "fn": 7,
239
+ "raw_precision": 0.6777251184834123,
240
+ "raw_recall": 0.9533333333333334,
241
+ "raw_f1": 0.7922437673130195,
242
+ "tp_p01": 0.6181560385227203,
243
+ "tp_p05": 0.7406675696372986,
244
+ "fp_p95": 0.9107672691345214,
245
+ "fp_p99": 0.9874289107322693,
246
+ "tp_below_low": 2,
247
+ "tp_below_low_rate": 0.013986013986013986,
248
+ "fp_below_low": 42,
249
  "auto_band": {
250
+ "tp": 78,
251
  "fp": 0,
252
  "precision": 1.0,
253
+ "coverage": 0.5454545454545454,
254
+ "wilson95_lower": 0.9530605462258802
255
  }
256
  },
257
  "routing_counts_initial": {
258
  "auto_accept_tp": 0,
259
  "auto_accept_fp": 0,
260
+ "sllm_candidates": 211,
261
  "discarded_candidates": 0
262
  },
263
  "routing_counts_future": {
264
+ "auto_accept_tp": 78,
265
  "auto_accept_fp": 0,
266
+ "sllm_candidates": 133,
267
  "discarded_candidates": 0,
268
  "discarded_tp": 0,
269
  "discarded_fp": 0
 
292
  "calibration": {
293
  "gold": 100,
294
  "tp": 99,
295
+ "fp": 7,
296
  "fn": 1,
297
+ "raw_precision": 0.9339622641509434,
298
  "raw_recall": 0.99,
299
+ "raw_f1": 0.9611650485436893,
300
+ "tp_p01": 0.9531525158882141,
301
+ "tp_p05": 0.9944851279258728,
302
+ "fp_p95": 0.8616051375865935,
303
+ "fp_p99": 0.8743154466152191,
304
+ "tp_below_low": 0,
305
+ "tp_below_low_rate": 0.0,
306
  "fp_below_low": 6,
307
  "auto_band": {
308
+ "tp": 98,
309
  "fp": 0,
310
  "precision": 1.0,
311
+ "coverage": 0.98989898989899,
312
+ "wilson95_lower": 0.9622786759045421
313
  }
314
  },
315
  "routing_counts_initial": {
316
  "auto_accept_tp": 0,
317
  "auto_accept_fp": 0,
318
+ "sllm_candidates": 106,
319
  "discarded_candidates": 0
320
  },
321
  "routing_counts_future": {
322
+ "auto_accept_tp": 98,
323
  "auto_accept_fp": 0,
324
  "sllm_candidates": 8,
325
  "discarded_candidates": 0,
 
349
  "precision_target": 0.98,
350
  "calibration": {
351
  "gold": 100,
352
+ "tp": 81,
353
+ "fp": 115,
354
+ "fn": 19,
355
+ "raw_precision": 0.413265306122449,
356
+ "raw_recall": 0.81,
357
+ "raw_f1": 0.5472972972972974,
358
+ "tp_p01": 0.5110871195793152,
359
+ "tp_p05": 0.89145827293396,
360
+ "fp_p95": 0.9984909772872924,
361
+ "fp_p99": 0.9990045022964478,
362
  "tp_below_low": 2,
363
+ "tp_below_low_rate": 0.024691358024691357,
364
+ "fp_below_low": 22,
365
  "auto_band": {
366
  "tp": 0,
367
  "fp": 0,
 
373
  "routing_counts_initial": {
374
  "auto_accept_tp": 0,
375
  "auto_accept_fp": 0,
376
+ "sllm_candidates": 196,
377
  "discarded_candidates": 0
378
  },
379
  "routing_counts_future": {
380
  "auto_accept_tp": 0,
381
  "auto_accept_fp": 0,
382
+ "sllm_candidates": 196,
383
  "discarded_candidates": 0,
384
  "discarded_tp": 0,
385
  "discarded_fp": 0
 
394
  },
395
  "CARD_NUMBER": {
396
  "risk_tier": "high",
397
+ "low": 0.756,
398
  "high": 1.0,
399
  "routing": {
400
  "confidence_gte_high": "SLLM",
 
407
  "precision_target": 0.995,
408
  "calibration": {
409
  "gold": 150,
410
+ "tp": 149,
411
+ "fp": 6,
412
+ "fn": 1,
413
+ "raw_precision": 0.9612903225806452,
414
+ "raw_recall": 0.9933333333333333,
415
+ "raw_f1": 0.9770491803278689,
416
+ "tp_p01": 0.7564220571517944,
417
+ "tp_p05": 0.944215738773346,
418
+ "fp_p95": 0.6197407692670822,
419
+ "fp_p99": 0.6254905790090561,
420
  "tp_below_low": 2,
421
+ "tp_below_low_rate": 0.013422818791946308,
422
+ "fp_below_low": 6,
423
  "auto_band": {
424
+ "tp": 143,
425
  "fp": 0,
426
  "precision": 1.0,
427
+ "coverage": 0.959731543624161,
428
+ "wilson95_lower": 0.9738384762900977
429
  }
430
  },
431
  "routing_counts_initial": {
432
  "auto_accept_tp": 0,
433
  "auto_accept_fp": 0,
434
+ "sllm_candidates": 155,
435
  "discarded_candidates": 0
436
  },
437
  "routing_counts_future": {
438
+ "auto_accept_tp": 143,
439
  "auto_accept_fp": 0,
440
+ "sllm_candidates": 12,
441
  "discarded_candidates": 0,
442
  "discarded_tp": 0,
443
  "discarded_fp": 0
 
452
  },
453
  "CITY": {
454
  "risk_tier": "medium",
455
+ "low": 0.84,
456
  "high": 1.0,
457
  "routing": {
458
  "confidence_gte_high": "SLLM",
 
471
  "raw_precision": 0.9802631578947368,
472
  "raw_recall": 0.9933333333333333,
473
  "raw_f1": 0.9867549668874172,
474
+ "tp_p01": 0.8406903600692749,
475
+ "tp_p05": 0.9489035844802857,
476
+ "fp_p95": 0.8427393794059753,
477
+ "fp_p99": 0.8552059245109558,
478
  "tp_below_low": 2,
479
  "tp_below_low_rate": 0.013422818791946308,
480
  "fp_below_low": 2,
481
  "auto_band": {
482
  "tp": 146,
483
+ "fp": 0,
484
+ "precision": 1.0,
485
  "coverage": 0.9798657718120806,
486
+ "wilson95_lower": 0.9743622598797664
487
  }
488
  },
489
  "routing_counts_initial": {
 
494
  },
495
  "routing_counts_future": {
496
  "auto_accept_tp": 146,
497
+ "auto_accept_fp": 0,
498
+ "sllm_candidates": 6,
499
  "discarded_candidates": 0,
500
  "discarded_tp": 0,
501
  "discarded_fp": 0
 
523
  "precision_target": 0.98,
524
  "calibration": {
525
  "gold": 100,
526
+ "tp": 99,
527
  "fp": 2,
528
+ "fn": 1,
529
+ "raw_precision": 0.9801980198019802,
530
+ "raw_recall": 0.99,
531
+ "raw_f1": 0.9850746268656716,
532
+ "tp_p01": 0.9717840254306793,
533
+ "tp_p05": 0.9864128172397614,
534
+ "fp_p95": 0.46165389120578765,
535
+ "fp_p99": 0.46920298397541044,
536
+ "tp_below_low": 1,
537
+ "tp_below_low_rate": 0.010101010101010102,
538
  "fp_below_low": 2,
539
  "auto_band": {
540
  "tp": 97,
541
  "fp": 0,
542
  "precision": 1.0,
543
+ "coverage": 0.9797979797979798,
544
  "wilson95_lower": 0.9619046107955446
545
  }
546
  },
547
  "routing_counts_initial": {
548
  "auto_accept_tp": 0,
549
  "auto_accept_fp": 0,
550
+ "sllm_candidates": 101,
551
  "discarded_candidates": 0
552
  },
553
  "routing_counts_future": {
554
  "auto_accept_tp": 97,
555
  "auto_accept_fp": 0,
556
+ "sllm_candidates": 4,
557
  "discarded_candidates": 0,
558
  "discarded_tp": 0,
559
  "discarded_fp": 0
 
581
  "precision_target": 0.985,
582
  "calibration": {
583
  "gold": 100,
584
+ "tp": 94,
585
+ "fp": 55,
586
+ "fn": 6,
587
+ "raw_precision": 0.6308724832214765,
588
+ "raw_recall": 0.94,
589
+ "raw_f1": 0.7550200803212851,
590
+ "tp_p01": 0.5541346728801727,
591
+ "tp_p05": 0.673829996585846,
592
+ "fp_p95": 0.9832729935646057,
593
+ "fp_p99": 0.9893621695041657,
594
+ "tp_below_low": 2,
595
+ "tp_below_low_rate": 0.02127659574468085,
596
+ "fp_below_low": 11,
597
  "auto_band": {
598
+ "tp": 43,
599
  "fp": 0,
600
  "precision": 1.0,
601
+ "coverage": 0.4574468085106383,
602
+ "wilson95_lower": 0.9179874299767727
603
  }
604
  },
605
  "routing_counts_initial": {
 
609
  "discarded_candidates": 0
610
  },
611
  "routing_counts_future": {
612
+ "auto_accept_tp": 43,
613
  "auto_accept_fp": 0,
614
+ "sllm_candidates": 106,
615
  "discarded_candidates": 0,
616
  "discarded_tp": 0,
617
  "discarded_fp": 0
 
645
  "raw_precision": 1.0,
646
  "raw_recall": 1.0,
647
  "raw_f1": 1.0,
648
+ "tp_p01": 0.9912993973493576,
649
+ "tp_p05": 0.9992368340492248,
650
  "fp_p95": null,
651
  "fp_p99": null,
652
  "tp_below_low": 0,
 
661
  }
662
  },
663
  "routing_counts_initial": {
664
+ "auto_accept_tp": 96,
665
  "auto_accept_fp": 0,
666
+ "sllm_candidates": 4,
667
  "discarded_candidates": 0
668
  },
669
  "routing_counts_future": {
 
675
  "discarded_fp": 0
676
  },
677
  "conservative_auto_band": {
678
+ "tp": 96,
679
  "fp": 0,
680
  "precision": 1.0,
681
+ "coverage": 0.96,
682
  "rule": "V4 raw FP=0, V4 TP>=100, confidence>=0.999 TP>=10, confidence>=0.999 FP=0"
683
  }
684
  },
685
  "EMPLOYEE_ID": {
686
  "risk_tier": "medium",
687
+ "low": 0.85,
688
  "high": 1.0,
689
  "routing": {
690
  "confidence_gte_high": "SLLM",
 
697
  "precision_target": 0.985,
698
  "calibration": {
699
  "gold": 141,
700
+ "tp": 129,
701
+ "fp": 144,
702
+ "fn": 12,
703
+ "raw_precision": 0.4725274725274725,
704
+ "raw_recall": 0.9148936170212766,
705
+ "raw_f1": 0.6231884057971014,
706
+ "tp_p01": 0.8613667511940002,
707
+ "tp_p05": 0.966871702671051,
708
+ "fp_p95": 0.9300328224897384,
709
+ "fp_p99": 0.9805235266685486,
710
  "tp_below_low": 2,
711
+ "tp_below_low_rate": 0.015503875968992248,
712
+ "fp_below_low": 129,
713
  "auto_band": {
714
+ "tp": 112,
715
  "fp": 1,
716
+ "precision": 0.9911504424778761,
717
+ "coverage": 0.8682170542635659,
718
+ "wilson95_lower": 0.9515679439394749
719
  }
720
  },
721
  "routing_counts_initial": {
722
  "auto_accept_tp": 0,
723
  "auto_accept_fp": 0,
724
+ "sllm_candidates": 273,
725
  "discarded_candidates": 0
726
  },
727
  "routing_counts_future": {
728
+ "auto_accept_tp": 112,
729
  "auto_accept_fp": 1,
730
+ "sllm_candidates": 160,
731
  "discarded_candidates": 0,
732
  "discarded_tp": 0,
733
  "discarded_fp": 0
 
761
  "raw_precision": 0.591715976331361,
762
  "raw_recall": 1.0,
763
  "raw_f1": 0.7434944237918216,
764
+ "tp_p01": 0.997779933810234,
765
+ "tp_p05": 0.9981514066457748,
766
+ "fp_p95": 0.9962255835533143,
767
+ "fp_p99": 0.9973360109329223,
768
  "tp_below_low": 0,
769
  "tp_below_low_rate": 0.0,
770
+ "fp_below_low": 1,
771
  "auto_band": {
772
+ "tp": 97,
773
  "fp": 0,
774
  "precision": 1.0,
775
+ "coverage": 0.97,
776
+ "wilson95_lower": 0.9619046107955446
777
  }
778
  },
779
  "routing_counts_initial": {
 
783
  "discarded_candidates": 0
784
  },
785
  "routing_counts_future": {
786
+ "auto_accept_tp": 97,
787
  "auto_accept_fp": 0,
788
+ "sllm_candidates": 71,
789
+ "discarded_candidates": 1,
790
  "discarded_tp": 0,
791
+ "discarded_fp": 1
792
  },
793
  "conservative_auto_band": {
794
  "tp": 0,
 
814
  "calibration": {
815
  "gold": 100,
816
  "tp": 100,
817
+ "fp": 70,
818
  "fn": 0,
819
+ "raw_precision": 0.5882352941176471,
820
  "raw_recall": 1.0,
821
+ "raw_f1": 0.7407407407407407,
822
+ "tp_p01": 0.9012879550457001,
823
+ "tp_p05": 0.9939749002456665,
824
+ "fp_p95": 0.999596643447876,
825
+ "fp_p99": 0.9996490907669067,
826
  "tp_below_low": 1,
827
  "tp_below_low_rate": 0.01,
828
+ "fp_below_low": 3,
829
  "auto_band": {
830
  "tp": 0,
831
  "fp": 0,
 
837
  "routing_counts_initial": {
838
  "auto_accept_tp": 0,
839
  "auto_accept_fp": 0,
840
+ "sllm_candidates": 170,
841
  "discarded_candidates": 0
842
  },
843
  "routing_counts_future": {
844
  "auto_accept_tp": 0,
845
  "auto_accept_fp": 0,
846
  "sllm_candidates": 166,
847
+ "discarded_candidates": 4,
848
  "discarded_tp": 1,
849
+ "discarded_fp": 3
850
  },
851
  "conservative_auto_band": {
852
  "tp": 0,
 
872
  "calibration": {
873
  "gold": 100,
874
  "tp": 99,
875
+ "fp": 58,
876
  "fn": 1,
877
+ "raw_precision": 0.6305732484076433,
878
  "raw_recall": 0.99,
879
+ "raw_f1": 0.7704280155642024,
880
+ "tp_p01": 0.9597602045536041,
881
+ "tp_p05": 0.982790744304657,
882
+ "fp_p95": 0.9981081038713455,
883
+ "fp_p99": 0.9983216363191605,
884
  "tp_below_low": 0,
885
  "tp_below_low_rate": 0.0,
886
+ "fp_below_low": 38,
887
  "auto_band": {
888
  "tp": 0,
889
  "fp": 0,
 
895
  "routing_counts_initial": {
896
  "auto_accept_tp": 0,
897
  "auto_accept_fp": 0,
898
+ "sllm_candidates": 157,
899
  "discarded_candidates": 0
900
  },
901
  "routing_counts_future": {
902
  "auto_accept_tp": 0,
903
  "auto_accept_fp": 0,
904
+ "sllm_candidates": 157,
905
  "discarded_candidates": 0,
906
  "discarded_tp": 0,
907
  "discarded_fp": 0
 
930
  "calibration": {
931
  "gold": 100,
932
  "tp": 99,
933
+ "fp": 58,
934
  "fn": 1,
935
+ "raw_precision": 0.6305732484076433,
936
  "raw_recall": 0.99,
937
+ "raw_f1": 0.7704280155642024,
938
+ "tp_p01": 0.9984672820568085,
939
+ "tp_p05": 0.9990727007389069,
940
+ "fp_p95": 0.9110401004552842,
941
+ "fp_p99": 0.9904469752311706,
942
  "tp_below_low": 0,
943
  "tp_below_low_rate": 0.0,
944
+ "fp_below_low": 52,
945
  "auto_band": {
946
+ "tp": 94,
947
  "fp": 1,
948
+ "precision": 0.9894736842105263,
949
+ "coverage": 0.9494949494949495,
950
+ "wilson95_lower": 0.9427599067633495
951
  }
952
  },
953
  "routing_counts_initial": {
954
  "auto_accept_tp": 0,
955
  "auto_accept_fp": 0,
956
+ "sllm_candidates": 157,
957
  "discarded_candidates": 0
958
  },
959
  "routing_counts_future": {
960
+ "auto_accept_tp": 94,
961
  "auto_accept_fp": 1,
962
+ "sllm_candidates": 62,
963
  "discarded_candidates": 0,
964
  "discarded_tp": 0,
965
  "discarded_fp": 0
 
987
  "precision_target": 0.985,
988
  "calibration": {
989
  "gold": 142,
990
+ "tp": 129,
991
+ "fp": 25,
992
+ "fn": 13,
993
+ "raw_precision": 0.8376623376623377,
994
+ "raw_recall": 0.9084507042253521,
995
+ "raw_f1": 0.8716216216216216,
996
+ "tp_p01": 0.5225646281242371,
997
+ "tp_p05": 0.667635440826416,
998
+ "fp_p95": 0.7362570047378539,
999
+ "fp_p99": 0.767651801109314,
1000
+ "tp_below_low": 4,
1001
+ "tp_below_low_rate": 0.031007751937984496,
1002
+ "fp_below_low": 19,
1003
  "auto_band": {
1004
+ "tp": 108,
1005
+ "fp": 0,
1006
+ "precision": 1.0,
1007
+ "coverage": 0.8372093023255814,
1008
+ "wilson95_lower": 0.9656514212958325
1009
  }
1010
  },
1011
  "routing_counts_initial": {
1012
  "auto_accept_tp": 0,
1013
  "auto_accept_fp": 0,
1014
+ "sllm_candidates": 154,
1015
  "discarded_candidates": 0
1016
  },
1017
  "routing_counts_future": {
1018
+ "auto_accept_tp": 108,
1019
+ "auto_accept_fp": 0,
1020
+ "sllm_candidates": 46,
1021
  "discarded_candidates": 0,
1022
  "discarded_tp": 0,
1023
  "discarded_fp": 0
 
1045
  "precision_target": 0.985,
1046
  "calibration": {
1047
  "gold": 150,
1048
+ "tp": 145,
1049
+ "fp": 41,
1050
+ "fn": 5,
1051
+ "raw_precision": 0.7795698924731183,
1052
+ "raw_recall": 0.9666666666666667,
1053
+ "raw_f1": 0.8630952380952382,
1054
+ "tp_p01": 0.9945324158668518,
1055
+ "tp_p05": 0.9993756294250488,
1056
+ "fp_p95": 0.9911686182022095,
1057
+ "fp_p99": 0.9998230695724487,
1058
+ "tp_below_low": 0,
1059
+ "tp_below_low_rate": 0.0,
1060
+ "fp_below_low": 31,
1061
  "auto_band": {
1062
+ "tp": 142,
1063
  "fp": 2,
1064
+ "precision": 0.9861111111111112,
1065
+ "coverage": 0.9793103448275862,
1066
+ "wilson95_lower": 0.9507765031823722
1067
  }
1068
  },
1069
  "routing_counts_initial": {
1070
  "auto_accept_tp": 0,
1071
  "auto_accept_fp": 0,
1072
+ "sllm_candidates": 186,
1073
  "discarded_candidates": 0
1074
  },
1075
  "routing_counts_future": {
1076
+ "auto_accept_tp": 142,
1077
  "auto_accept_fp": 2,
1078
+ "sllm_candidates": 11,
1079
+ "discarded_candidates": 31,
1080
+ "discarded_tp": 0,
1081
+ "discarded_fp": 31
1082
  },
1083
  "conservative_auto_band": {
1084
  "tp": 0,
 
1109
  "raw_precision": 1.0,
1110
  "raw_recall": 1.0,
1111
  "raw_f1": 1.0,
1112
+ "tp_p01": 0.9452904033660889,
1113
+ "tp_p05": 0.9855882167816162,
1114
  "fp_p95": null,
1115
  "fp_p99": null,
1116
  "tp_below_low": 0,
 
1125
  }
1126
  },
1127
  "routing_counts_initial": {
1128
+ "auto_accept_tp": 55,
1129
  "auto_accept_fp": 0,
1130
+ "sllm_candidates": 45,
1131
  "discarded_candidates": 0
1132
  },
1133
  "routing_counts_future": {
 
1139
  "discarded_fp": 0
1140
  },
1141
  "conservative_auto_band": {
1142
+ "tp": 55,
1143
  "fp": 0,
1144
  "precision": 1.0,
1145
+ "coverage": 0.55,
1146
  "rule": "V4 raw FP=0, V4 TP>=100, confidence>=0.999 TP>=10, confidence>=0.999 FP=0"
1147
  }
1148
  },
 
1161
  "precision_target": 0.985,
1162
  "calibration": {
1163
  "gold": 150,
1164
+ "tp": 108,
1165
+ "fp": 49,
1166
+ "fn": 42,
1167
+ "raw_precision": 0.6878980891719745,
1168
+ "raw_recall": 0.72,
1169
+ "raw_f1": 0.7035830618892508,
1170
+ "tp_p01": 0.3101186007261276,
1171
+ "tp_p05": 0.5216924011707306,
1172
+ "fp_p95": 0.9062089681625366,
1173
+ "fp_p99": 0.9348918509483337,
1174
+ "tp_below_low": 11,
1175
+ "tp_below_low_rate": 0.10185185185185185,
1176
+ "fp_below_low": 27,
1177
  "auto_band": {
1178
+ "tp": 67,
1179
+ "fp": 1,
1180
+ "precision": 0.9852941176470589,
1181
+ "coverage": 0.6203703703703703,
1182
+ "wilson95_lower": 0.9212883963845385
1183
  }
1184
  },
1185
  "routing_counts_initial": {
1186
  "auto_accept_tp": 0,
1187
  "auto_accept_fp": 0,
1188
+ "sllm_candidates": 157,
1189
  "discarded_candidates": 0
1190
  },
1191
  "routing_counts_future": {
1192
+ "auto_accept_tp": 67,
1193
+ "auto_accept_fp": 1,
1194
+ "sllm_candidates": 89,
1195
  "discarded_candidates": 0,
1196
  "discarded_tp": 0,
1197
  "discarded_fp": 0
 
1206
  },
1207
  "PARTICIPANT_ID": {
1208
  "risk_tier": "medium",
1209
+ "low": 0.767,
1210
  "high": 1.0,
1211
  "routing": {
1212
  "confidence_gte_high": "SLLM",
 
1220
  "calibration": {
1221
  "gold": 167,
1222
  "tp": 167,
1223
+ "fp": 32,
1224
  "fn": 0,
1225
+ "raw_precision": 0.8391959798994975,
1226
  "raw_recall": 1.0,
1227
+ "raw_f1": 0.912568306010929,
1228
+ "tp_p01": 0.7675521767139435,
1229
+ "tp_p05": 0.9619539082050323,
1230
+ "fp_p95": 0.7085889995098114,
1231
+ "fp_p99": 0.8777799898386005,
1232
  "tp_below_low": 2,
1233
  "tp_below_low_rate": 0.011976047904191617,
1234
+ "fp_below_low": 31,
1235
  "auto_band": {
1236
+ "tp": 163,
1237
  "fp": 1,
1238
+ "precision": 0.9939024390243902,
1239
+ "coverage": 0.9760479041916168,
1240
+ "wilson95_lower": 0.96627290966789
1241
  }
1242
  },
1243
  "routing_counts_initial": {
1244
  "auto_accept_tp": 0,
1245
  "auto_accept_fp": 0,
1246
+ "sllm_candidates": 199,
1247
  "discarded_candidates": 0
1248
  },
1249
  "routing_counts_future": {
1250
+ "auto_accept_tp": 163,
1251
  "auto_accept_fp": 1,
1252
+ "sllm_candidates": 35,
1253
  "discarded_candidates": 0,
1254
  "discarded_tp": 0,
1255
  "discarded_fp": 0
 
1265
  "PASSPORTNUM": {
1266
  "risk_tier": "high",
1267
  "low": 0.85,
1268
+ "high": 1.0,
1269
  "routing": {
1270
+ "confidence_gte_high": "SLLM",
1271
  "low_lte_confidence_lt_high": "SLLM",
1272
  "confidence_lt_low_initial": "SLLM",
1273
  "confidence_lt_low_future": "SLLM"
1274
  },
1275
+ "auto_accept_enabled": false,
1276
  "future_discard_below_low_allowed": false,
1277
  "precision_target": 0.995,
1278
  "calibration": {
1279
  "gold": 100,
1280
  "tp": 100,
1281
+ "fp": 1,
1282
  "fn": 0,
1283
+ "raw_precision": 0.9900990099009901,
1284
  "raw_recall": 1.0,
1285
+ "raw_f1": 0.9950248756218906,
1286
+ "tp_p01": 0.9489431154727936,
1287
+ "tp_p05": 0.9940242916345596,
1288
+ "fp_p95": 0.2736428380012512,
1289
+ "fp_p99": 0.2736428380012512,
1290
  "tp_below_low": 0,
1291
  "tp_below_low_rate": 0.0,
1292
+ "fp_below_low": 1,
1293
  "auto_band": {
1294
  "tp": 99,
1295
  "fp": 0,
 
1299
  }
1300
  },
1301
  "routing_counts_initial": {
1302
+ "auto_accept_tp": 0,
1303
  "auto_accept_fp": 0,
1304
+ "sllm_candidates": 101,
1305
  "discarded_candidates": 0
1306
  },
1307
  "routing_counts_future": {
1308
  "auto_accept_tp": 99,
1309
  "auto_accept_fp": 0,
1310
+ "sllm_candidates": 2,
1311
  "discarded_candidates": 0,
1312
  "discarded_tp": 0,
1313
  "discarded_fp": 0
1314
  },
1315
  "conservative_auto_band": {
1316
+ "tp": 0,
1317
  "fp": 0,
1318
+ "precision": null,
1319
+ "coverage": 0.0,
1320
  "rule": "V4 raw FP=0, V4 TP>=100, confidence>=0.999 TP>=10, confidence>=0.999 FP=0"
1321
  }
1322
  },
 
1336
  "calibration": {
1337
  "gold": 100,
1338
  "tp": 100,
1339
+ "fp": 36,
1340
  "fn": 0,
1341
+ "raw_precision": 0.7352941176470589,
1342
  "raw_recall": 1.0,
1343
+ "raw_f1": 0.8474576271186441,
1344
+ "tp_p01": 0.998772698044777,
1345
+ "tp_p05": 0.9992198914289475,
1346
+ "fp_p95": 0.999710351228714,
1347
+ "fp_p99": 0.9997318983078003,
1348
  "tp_below_low": 0,
1349
  "tp_below_low_rate": 0.0,
1350
+ "fp_below_low": 3,
1351
  "auto_band": {
1352
  "tp": 0,
1353
  "fp": 0,
 
1359
  "routing_counts_initial": {
1360
  "auto_accept_tp": 0,
1361
  "auto_accept_fp": 0,
1362
+ "sllm_candidates": 136,
1363
  "discarded_candidates": 0
1364
  },
1365
  "routing_counts_future": {
1366
  "auto_accept_tp": 0,
1367
  "auto_accept_fp": 0,
1368
+ "sllm_candidates": 136,
1369
  "discarded_candidates": 0,
1370
  "discarded_tp": 0,
1371
  "discarded_fp": 0
 
1394
  "calibration": {
1395
  "gold": 100,
1396
  "tp": 99,
1397
+ "fp": 67,
1398
  "fn": 1,
1399
+ "raw_precision": 0.5963855421686747,
1400
  "raw_recall": 0.99,
1401
+ "raw_f1": 0.744360902255639,
1402
+ "tp_p01": 0.9948600542545318,
1403
+ "tp_p05": 0.9964091539382935,
1404
+ "fp_p95": 0.823778027296066,
1405
+ "fp_p99": 0.9691383326053622,
1406
  "tp_below_low": 0,
1407
  "tp_below_low_rate": 0.0,
1408
+ "fp_below_low": 63,
1409
  "auto_band": {
1410
  "tp": 98,
1411
  "fp": 1,
 
1417
  "routing_counts_initial": {
1418
  "auto_accept_tp": 0,
1419
  "auto_accept_fp": 0,
1420
+ "sllm_candidates": 166,
1421
  "discarded_candidates": 0
1422
  },
1423
  "routing_counts_future": {
1424
  "auto_accept_tp": 98,
1425
  "auto_accept_fp": 1,
1426
+ "sllm_candidates": 67,
1427
  "discarded_candidates": 0,
1428
  "discarded_tp": 0,
1429
  "discarded_fp": 0
 
1452
  "calibration": {
1453
  "gold": 100,
1454
  "tp": 86,
1455
+ "fp": 2,
1456
  "fn": 14,
1457
+ "raw_precision": 0.9772727272727273,
1458
  "raw_recall": 0.86,
1459
+ "raw_f1": 0.9148936170212766,
1460
+ "tp_p01": 0.9803977280855178,
1461
+ "tp_p05": 0.995708242058754,
1462
+ "fp_p95": 0.759431891143322,
1463
+ "fp_p99": 0.7808207139372826,
1464
  "tp_below_low": 0,
1465
  "tp_below_low_rate": 0.0,
1466
+ "fp_below_low": 2,
1467
  "auto_band": {
1468
  "tp": 85,
1469
  "fp": 0,
 
1475
  "routing_counts_initial": {
1476
  "auto_accept_tp": 0,
1477
  "auto_accept_fp": 0,
1478
+ "sllm_candidates": 88,
1479
  "discarded_candidates": 0
1480
  },
1481
  "routing_counts_future": {
1482
  "auto_accept_tp": 85,
1483
  "auto_accept_fp": 0,
1484
+ "sllm_candidates": 3,
1485
  "discarded_candidates": 0,
1486
  "discarded_tp": 0,
1487
  "discarded_fp": 0
 
1509
  "precision_target": 0.995,
1510
  "calibration": {
1511
  "gold": 150,
1512
+ "tp": 143,
1513
+ "fp": 38,
1514
+ "fn": 7,
1515
+ "raw_precision": 0.7900552486187845,
1516
+ "raw_recall": 0.9533333333333334,
1517
+ "raw_f1": 0.8640483383685801,
1518
+ "tp_p01": 0.5228946423530578,
1519
+ "tp_p05": 0.6324706554412842,
1520
+ "fp_p95": 0.9942778915166854,
1521
+ "fp_p99": 0.9948081791400909,
1522
+ "tp_below_low": 7,
1523
+ "tp_below_low_rate": 0.04895104895104895,
1524
+ "fp_below_low": 27,
1525
  "auto_band": {
1526
+ "tp": 16,
1527
  "fp": 0,
1528
  "precision": 1.0,
1529
+ "coverage": 0.11188811188811189,
1530
+ "wilson95_lower": 0.8063865817272801
1531
  }
1532
  },
1533
  "routing_counts_initial": {
1534
  "auto_accept_tp": 0,
1535
  "auto_accept_fp": 0,
1536
+ "sllm_candidates": 181,
1537
  "discarded_candidates": 0
1538
  },
1539
  "routing_counts_future": {
1540
+ "auto_accept_tp": 16,
1541
  "auto_accept_fp": 0,
1542
+ "sllm_candidates": 165,
1543
  "discarded_candidates": 0,
1544
  "discarded_tp": 0,
1545
  "discarded_fp": 0
 
1560
  "confidence_gte_high": "NER_ACCEPT",
1561
  "low_lte_confidence_lt_high": "SLLM",
1562
  "confidence_lt_low_initial": "SLLM",
1563
+ "confidence_lt_low_future": "DISCARD_ALLOWED"
1564
  },
1565
  "auto_accept_enabled": true,
1566
+ "future_discard_below_low_allowed": true,
1567
  "precision_target": 0.985,
1568
  "calibration": {
1569
  "gold": 150,
 
1573
  "raw_precision": 1.0,
1574
  "raw_recall": 1.0,
1575
  "raw_f1": 1.0,
1576
+ "tp_p01": 0.9522248715162278,
1577
+ "tp_p05": 0.9985177725553513,
1578
  "fp_p95": null,
1579
  "fp_p99": null,
1580
+ "tp_below_low": 1,
1581
+ "tp_below_low_rate": 0.006666666666666667,
1582
  "fp_below_low": 0,
1583
  "auto_band": {
1584
+ "tp": 148,
1585
  "fp": 0,
1586
  "precision": 1.0,
1587
+ "coverage": 0.9866666666666667,
1588
+ "wilson95_lower": 0.9746999504747053
1589
  }
1590
  },
1591
  "routing_counts_initial": {
1592
+ "auto_accept_tp": 140,
1593
  "auto_accept_fp": 0,
1594
+ "sllm_candidates": 10,
1595
  "discarded_candidates": 0
1596
  },
1597
  "routing_counts_future": {
1598
+ "auto_accept_tp": 148,
1599
  "auto_accept_fp": 0,
1600
+ "sllm_candidates": 1,
1601
+ "discarded_candidates": 1,
1602
+ "discarded_tp": 1,
1603
  "discarded_fp": 0
1604
  },
1605
  "conservative_auto_band": {
1606
+ "tp": 140,
1607
  "fp": 0,
1608
  "precision": 1.0,
1609
+ "coverage": 0.9333333333333333,
1610
  "rule": "V4 raw FP=0, V4 TP>=100, confidence>=0.999 TP>=10, confidence>=0.999 FP=0"
1611
  }
1612
  },
 
1626
  "calibration": {
1627
  "gold": 100,
1628
  "tp": 98,
1629
+ "fp": 2,
1630
  "fn": 2,
1631
+ "raw_precision": 0.98,
1632
  "raw_recall": 0.98,
1633
+ "raw_f1": 0.98,
1634
+ "tp_p01": 0.9914001291990281,
1635
+ "tp_p05": 0.9963382810354233,
1636
+ "fp_p95": 0.687697473168373,
1637
+ "fp_p99": 0.6878114348649979,
1638
  "tp_below_low": 0,
1639
  "tp_below_low_rate": 0.0,
1640
+ "fp_below_low": 2,
1641
  "auto_band": {
1642
  "tp": 97,
1643
+ "fp": 0,
1644
+ "precision": 1.0,
1645
  "coverage": 0.9897959183673469,
1646
+ "wilson95_lower": 0.9619046107955446
1647
  }
1648
  },
1649
  "routing_counts_initial": {
1650
  "auto_accept_tp": 0,
1651
  "auto_accept_fp": 0,
1652
+ "sllm_candidates": 100,
1653
  "discarded_candidates": 0
1654
  },
1655
  "routing_counts_future": {
1656
  "auto_accept_tp": 97,
1657
+ "auto_accept_fp": 0,
1658
  "sllm_candidates": 3,
1659
  "discarded_candidates": 0,
1660
  "discarded_tp": 0,
 
1683
  "precision_target": 0.985,
1684
  "calibration": {
1685
  "gold": 150,
1686
+ "tp": 130,
1687
+ "fp": 33,
1688
+ "fn": 20,
1689
+ "raw_precision": 0.7975460122699386,
1690
+ "raw_recall": 0.8666666666666667,
1691
+ "raw_f1": 0.8306709265175719,
1692
+ "tp_p01": 0.5202785676717758,
1693
+ "tp_p05": 0.5842449188232421,
1694
+ "fp_p95": 0.9988666892051696,
1695
+ "fp_p99": 0.9989911603927613,
1696
  "tp_below_low": 8,
1697
+ "tp_below_low_rate": 0.06153846153846154,
1698
+ "fp_below_low": 12,
1699
  "auto_band": {
1700
  "tp": 0,
1701
  "fp": 0,
 
1728
  },
1729
  "VEHICLE_NUMBER": {
1730
  "risk_tier": "low",
1731
+ "low": 0.85,
1732
  "high": 1.0,
1733
  "routing": {
1734
  "confidence_gte_high": "SLLM",
 
1742
  "calibration": {
1743
  "gold": 100,
1744
  "tp": 100,
1745
+ "fp": 14,
1746
  "fn": 0,
1747
+ "raw_precision": 0.8771929824561403,
1748
  "raw_recall": 1.0,
1749
+ "raw_f1": 0.9345794392523363,
1750
+ "tp_p01": 0.8903139638900757,
1751
+ "tp_p05": 0.9633320719003677,
1752
+ "fp_p95": 0.6182366847991942,
1753
+ "fp_p99": 0.6471676158905029,
1754
  "tp_below_low": 1,
1755
  "tp_below_low_rate": 0.01,
1756
+ "fp_below_low": 14,
1757
  "auto_band": {
1758
+ "tp": 98,
1759
  "fp": 0,
1760
  "precision": 1.0,
1761
+ "coverage": 0.98,
1762
+ "wilson95_lower": 0.9622786759045421
1763
  }
1764
  },
1765
  "routing_counts_initial": {
1766
  "auto_accept_tp": 0,
1767
  "auto_accept_fp": 0,
1768
+ "sllm_candidates": 114,
1769
  "discarded_candidates": 0
1770
  },
1771
  "routing_counts_future": {
1772
+ "auto_accept_tp": 98,
1773
  "auto_accept_fp": 0,
1774
+ "sllm_candidates": 1,
1775
+ "discarded_candidates": 15,
1776
  "discarded_tp": 1,
1777
+ "discarded_fp": 14
1778
  },
1779
  "conservative_auto_band": {
1780
  "tp": 0,
 
1805
  "raw_precision": 0.5988023952095808,
1806
  "raw_recall": 1.0,
1807
  "raw_f1": 0.7490636704119851,
1808
+ "tp_p01": 0.9072790610790252,
1809
+ "tp_p05": 0.9640769720077514,
1810
+ "fp_p95": 0.9937423467636108,
1811
+ "fp_p99": 0.9955686962604522,
1812
  "tp_below_low": 0,
1813
  "tp_below_low_rate": 0.0,
1814
  "fp_below_low": 0,
1815
  "auto_band": {
1816
+ "tp": 0,
1817
  "fp": 0,
1818
+ "precision": null,
1819
+ "coverage": 0.0,
1820
+ "wilson95_lower": null
1821
  }
1822
  },
1823
  "routing_counts_initial": {
 
1827
  "discarded_candidates": 0
1828
  },
1829
  "routing_counts_future": {
1830
+ "auto_accept_tp": 0,
1831
  "auto_accept_fp": 0,
1832
+ "sllm_candidates": 167,
1833
  "discarded_candidates": 0,
1834
  "discarded_tp": 0,
1835
  "discarded_fp": 0
 
1858
  "calibration": {
1859
  "gold": 150,
1860
  "tp": 144,
1861
+ "fp": 15,
1862
  "fn": 6,
1863
+ "raw_precision": 0.9056603773584906,
1864
  "raw_recall": 0.96,
1865
+ "raw_f1": 0.9320388349514563,
1866
+ "tp_p01": 0.09967849016189576,
1867
+ "tp_p05": 0.2041497603058815,
1868
+ "fp_p95": 0.9814407646656036,
1869
+ "fp_p99": 0.9889926397800446,
1870
  "tp_below_low": 32,
1871
  "tp_below_low_rate": 0.2222222222222222,
1872
  "fp_below_low": 5,
1873
  "auto_band": {
1874
+ "tp": 36,
1875
  "fp": 0,
1876
  "precision": 1.0,
1877
+ "coverage": 0.25,
1878
+ "wilson95_lower": 0.9035781695514236
1879
  }
1880
  },
1881
  "routing_counts_initial": {
1882
  "auto_accept_tp": 0,
1883
  "auto_accept_fp": 0,
1884
+ "sllm_candidates": 159,
1885
  "discarded_candidates": 0
1886
  },
1887
  "routing_counts_future": {
1888
+ "auto_accept_tp": 36,
1889
  "auto_accept_fp": 0,
1890
+ "sllm_candidates": 123,
1891
  "discarded_candidates": 0,
1892
  "discarded_tp": 0,
1893
  "discarded_fp": 0
 
1902
  },
1903
  "ZIPCODE": {
1904
  "risk_tier": "medium",
1905
+ "low": 0.85,
1906
  "high": 1.0,
1907
  "routing": {
1908
  "confidence_gte_high": "SLLM",
 
1916
  "calibration": {
1917
  "gold": 100,
1918
  "tp": 97,
1919
+ "fp": 35,
1920
  "fn": 3,
1921
+ "raw_precision": 0.7348484848484849,
1922
  "raw_recall": 0.97,
1923
+ "raw_f1": 0.8362068965517241,
1924
+ "tp_p01": 0.9186700534820557,
1925
+ "tp_p05": 0.9623782634735107,
1926
+ "fp_p95": 0.9835636913776398,
1927
+ "fp_p99": 0.9953167736530304,
1928
  "tp_below_low": 1,
1929
  "tp_below_low_rate": 0.010309278350515464,
1930
+ "fp_below_low": 24,
1931
  "auto_band": {
1932
+ "tp": 68,
1933
  "fp": 1,
1934
+ "precision": 0.9855072463768116,
1935
+ "coverage": 0.7010309278350515,
1936
+ "wilson95_lower": 0.9223669266494263
1937
  }
1938
  },
1939
  "routing_counts_initial": {
1940
  "auto_accept_tp": 0,
1941
  "auto_accept_fp": 0,
1942
+ "sllm_candidates": 132,
1943
  "discarded_candidates": 0
1944
  },
1945
  "routing_counts_future": {
1946
+ "auto_accept_tp": 68,
1947
  "auto_accept_fp": 1,
1948
+ "sllm_candidates": 63,
1949
  "discarded_candidates": 0,
1950
  "discarded_tp": 0,
1951
  "discarded_fp": 0
 
1960
  }
1961
  },
1962
  "routing_totals_initial": {
1963
+ "auto_tp": 291,
1964
  "auto_fp": 0,
1965
+ "sllm_candidates": 4663,
1966
  "discarded_candidates": 0,
1967
+ "unrecovered_gold_fn": 174,
1968
  "auto_precision": 1.0
1969
  },
1970
  "routing_totals_future": {
1971
+ "auto_tp": 2513,
1972
+ "auto_fp": 8,
1973
+ "sllm_candidates": 2348,
1974
+ "discarded_candidates": 85,
1975
+ "unrecovered_gold_fn": 174,
1976
+ "auto_precision": 0.9968266560888537
1977
  },
1978
  "auto_enabled_labels": [
1979
  "EMAIL",
1980
  "NATIONALITY",
 
1981
  "SCHOOL"
1982
  ]
1983
  }
training_config.json CHANGED
@@ -2,18 +2,31 @@
2
  "base_model": "KPF/KPF-bert-ner",
3
  "dataset": "townboy/korean-pii-dataset",
4
  "dataset_config": "bio",
5
- "epochs": 1,
6
  "batch_size": 4,
7
  "validation_batch_size": 8,
8
  "gradient_accumulation_steps": 8,
9
  "effective_batch_size": 32,
10
- "learning_rate": 2e-06,
11
  "max_length": 512,
12
  "early_stopping_patience": 1,
13
- "seed": 20260818,
14
  "loss": "standard_cross_entropy",
15
  "class_weighted": false,
16
  "train_rows": 9227,
17
  "validation_rows": 1510,
18
- "optimizer_steps_per_epoch": 289
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
19
  }
 
2
  "base_model": "KPF/KPF-bert-ner",
3
  "dataset": "townboy/korean-pii-dataset",
4
  "dataset_config": "bio",
 
5
  "batch_size": 4,
6
  "validation_batch_size": 8,
7
  "gradient_accumulation_steps": 8,
8
  "effective_batch_size": 32,
 
9
  "max_length": 512,
10
  "early_stopping_patience": 1,
 
11
  "loss": "standard_cross_entropy",
12
  "class_weighted": false,
13
  "train_rows": 9227,
14
  "validation_rows": 1510,
15
+ "optimizer_steps_per_epoch": 289,
16
+ "final_refinement_stages": [
17
+ {
18
+ "purpose": "Korean RRN/alien-number counterfactual context learning",
19
+ "epochs": 1,
20
+ "learning_rate": 5e-06,
21
+ "seed": 20260824,
22
+ "corpus": "public corpus with counterfactual Korean-ID contexts"
23
+ },
24
+ {
25
+ "purpose": "general-label rehearsal and stabilization",
26
+ "epochs": 1,
27
+ "learning_rate": 1e-06,
28
+ "seed": 20260825,
29
+ "corpus": "pre-counterfactual corpus snapshot"
30
+ }
31
+ ]
32
  }
training_history.json CHANGED
@@ -1,11 +1,11 @@
1
  [
2
  {
3
  "epoch": 1,
4
- "train_loss": 0.0082918972230706,
5
- "peak_gpu_memory_mb": 2209.9,
6
- "micro_precision": 0.9946335263380879,
7
- "micro_recall": 0.9984406010774028,
8
- "micro_f1": 0.9965334276618323,
9
  "per_label": {
10
  "ACCOUNT_NUMBER": {
11
  "precision": 1.0,
@@ -32,19 +32,19 @@
32
  "fn": 1
33
  },
34
  "ALIEN_NUMBER": {
35
- "precision": 1.0,
36
- "recall": 0.95,
37
- "f1": 0.9743589743589743,
38
- "tp": 19,
39
- "fp": 0,
40
- "fn": 1
41
  },
42
  "BIRTHDATE": {
43
- "precision": 0.9885931558935361,
44
  "recall": 1.0,
45
- "f1": 0.994263862332696,
46
  "tp": 260,
47
- "fp": 3,
48
  "fn": 0
49
  },
50
  "BLOOD_TYPE": {
@@ -72,12 +72,12 @@
72
  "fn": 0
73
  },
74
  "DEPARTMENT": {
75
- "precision": 0.9975124378109452,
76
- "recall": 0.9975124378109452,
77
- "f1": 0.9975124378109452,
78
- "tp": 802,
79
- "fp": 2,
80
- "fn": 2
81
  },
82
  "DRIVER_LICENSE": {
83
  "precision": 1.0,
@@ -128,12 +128,12 @@
128
  "fn": 0
129
  },
130
  "MAJOR": {
131
- "precision": 0.7857142857142857,
132
- "recall": 0.9166666666666666,
133
- "f1": 0.8461538461538461,
134
- "tp": 22,
135
- "fp": 6,
136
- "fn": 2
137
  },
138
  "MEMBER_ID": {
139
  "precision": 1.0,
@@ -192,11 +192,11 @@
192
  "fn": 0
193
  },
194
  "POSITION": {
195
- "precision": 0.9828431372549019,
196
  "recall": 0.9975124378109452,
197
- "f1": 0.9901234567901234,
198
  "tp": 802,
199
- "fp": 14,
200
  "fn": 2
201
  },
202
  "RELIGION": {
@@ -208,12 +208,12 @@
208
  "fn": 0
209
  },
210
  "RRN": {
211
- "precision": 0.9791666666666666,
212
- "recall": 1.0,
213
- "f1": 0.9894736842105264,
214
- "tp": 47,
215
- "fp": 1,
216
- "fn": 0
217
  },
218
  "SCHOOL": {
219
  "precision": 1.0,
@@ -232,19 +232,19 @@
232
  "fn": 0
233
  },
234
  "USER_ID": {
235
- "precision": 0.9714285714285714,
236
  "recall": 1.0,
237
- "f1": 0.9855072463768115,
238
  "tp": 34,
239
- "fp": 1,
240
  "fn": 0
241
  },
242
  "VEHICLE_NUMBER": {
243
- "precision": 1.0,
244
  "recall": 1.0,
245
- "f1": 1.0,
246
  "tp": 35,
247
- "fp": 0,
248
  "fn": 0
249
  },
250
  "WEIGHT": {
 
1
  [
2
  {
3
  "epoch": 1,
4
+ "train_loss": 0.003366851370334628,
5
+ "peak_gpu_memory_mb": 2208.0,
6
+ "micro_precision": 0.9943534726143421,
7
+ "micro_recall": 0.9985823646158208,
8
+ "micro_f1": 0.9964634318856981,
9
  "per_label": {
10
  "ACCOUNT_NUMBER": {
11
  "precision": 1.0,
 
32
  "fn": 1
33
  },
34
  "ALIEN_NUMBER": {
35
+ "precision": 0.9523809523809523,
36
+ "recall": 1.0,
37
+ "f1": 0.975609756097561,
38
+ "tp": 20,
39
+ "fp": 1,
40
+ "fn": 0
41
  },
42
  "BIRTHDATE": {
43
+ "precision": 0.9923664122137404,
44
  "recall": 1.0,
45
+ "f1": 0.9961685823754789,
46
  "tp": 260,
47
+ "fp": 2,
48
  "fn": 0
49
  },
50
  "BLOOD_TYPE": {
 
72
  "fn": 0
73
  },
74
  "DEPARTMENT": {
75
+ "precision": 1.0,
76
+ "recall": 1.0,
77
+ "f1": 1.0,
78
+ "tp": 804,
79
+ "fp": 0,
80
+ "fn": 0
81
  },
82
  "DRIVER_LICENSE": {
83
  "precision": 1.0,
 
128
  "fn": 0
129
  },
130
  "MAJOR": {
131
+ "precision": 0.7241379310344828,
132
+ "recall": 0.875,
133
+ "f1": 0.7924528301886793,
134
+ "tp": 21,
135
+ "fp": 8,
136
+ "fn": 3
137
  },
138
  "MEMBER_ID": {
139
  "precision": 1.0,
 
192
  "fn": 0
193
  },
194
  "POSITION": {
195
+ "precision": 0.981640146878825,
196
  "recall": 0.9975124378109452,
197
+ "f1": 0.9895126465144972,
198
  "tp": 802,
199
+ "fp": 15,
200
  "fn": 2
201
  },
202
  "RELIGION": {
 
208
  "fn": 0
209
  },
210
  "RRN": {
211
+ "precision": 1.0,
212
+ "recall": 0.9787234042553191,
213
+ "f1": 0.989247311827957,
214
+ "tp": 46,
215
+ "fp": 0,
216
+ "fn": 1
217
  },
218
  "SCHOOL": {
219
  "precision": 1.0,
 
232
  "fn": 0
233
  },
234
  "USER_ID": {
235
+ "precision": 0.9444444444444444,
236
  "recall": 1.0,
237
+ "f1": 0.9714285714285714,
238
  "tp": 34,
239
+ "fp": 2,
240
  "fn": 0
241
  },
242
  "VEHICLE_NUMBER": {
243
+ "precision": 0.9722222222222222,
244
  "recall": 1.0,
245
+ "f1": 0.9859154929577464,
246
  "tp": 35,
247
+ "fp": 1,
248
  "fn": 0
249
  },
250
  "WEIGHT": {
training_provenance.json CHANGED
@@ -10,19 +10,29 @@
10
  "pii_types": 33,
11
  "bio_labels": 67,
12
  "maximum_sequence_length": 512,
13
- "final_training_stage": {
14
- "epochs": 1,
15
- "learning_rate": 2e-06,
16
  "effective_batch_size": 32,
17
  "class_weighted_loss": false,
18
- "validation_micro_f1": 0.9965334276618323
 
 
 
 
 
 
 
 
 
 
 
 
19
  },
20
  "final_evaluation": {
21
  "documents": 1320,
22
  "positive_spans_per_label": 100,
23
  "exact_character_span_matching": true,
24
- "macro_f1": 0.8919862756842204,
25
- "micro_f1": 0.8871014076414823
26
  },
27
  "notes": "The final refinement used standard cross-entropy. The trained parameters are stored in model.safetensors; class weighting is a loss setting, not a separate required inference weight file."
28
  }
 
10
  "pii_types": 33,
11
  "bio_labels": 67,
12
  "maximum_sequence_length": 512,
13
+ "final_refinement": {
 
 
14
  "effective_batch_size": 32,
15
  "class_weighted_loss": false,
16
+ "stages": [
17
+ {
18
+ "purpose": "Korean-ID counterfactual learning",
19
+ "epochs": 1,
20
+ "learning_rate": 5e-06
21
+ },
22
+ {
23
+ "purpose": "general-label stabilization",
24
+ "epochs": 1,
25
+ "learning_rate": 1e-06
26
+ }
27
+ ],
28
+ "validation_micro_f1": 0.9964634318856981
29
  },
30
  "final_evaluation": {
31
  "documents": 1320,
32
  "positive_spans_per_label": 100,
33
  "exact_character_span_matching": true,
34
+ "macro_f1": 0.883369786048345,
35
+ "micro_f1": 0.8642728407042839
36
  },
37
  "notes": "The final refinement used standard cross-entropy. The trained parameters are stored in model.safetensors; class weighting is a loss setting, not a separate required inference weight file."
38
  }