research(rectification): holdout v5 checkpoint — protocol, roster (47 new AA cases), quoted events, build script
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_017eEAG8HD3mm8gsKXgk8uU8
This commit is contained in:
co-authored by
Claude Fable 5.1
parent
618005071c
commit
e9dc8023f2
@@ -0,0 +1,54 @@
|
||||
# Holdout v5 选例与核对协议(2026-09-29)
|
||||
|
||||
任务书:`docs/tasks/TASK-rectification-holdout-expansion-20260929.md`。本页写清 v5 的入选标准、分层配额、排除规则与来源记录格式;数字与统计见 `holdout_v5_build_2026_09_29.md`。
|
||||
|
||||
## 1. 入选标准
|
||||
|
||||
1. **出生资料**:Astro-Databank 记录、Rodden **AA**(出生证 / 出生记录 / 医院记录)。A、B、C、DD、X、XX 一律不收。
|
||||
2. **公开名人**:只收有英文 Wikipedia 条目的公众人物;不收本仓任何真实用户、库主、协作者或其亲友。
|
||||
3. **事件**:每例 ≥7 件带年月事件、≥4 个领域;领域键取 `scripts/active_rectification_event_engine.py::DOMAIN_CONFIG`。
|
||||
4. **来源独立**:事件出处与出生资料出处互不相同(`independent_of_birth_source=true`)。
|
||||
5. **精度诚实**:`year` / `month` / `day` 按来源页所写的精度标注;来源只写"某年"就标 `year`,不得补成 1 月或 1 日。
|
||||
|
||||
## 2. 排除规则
|
||||
|
||||
- 出生时间在 Astro-Databank 上标为 rectified / from memory / 无时间(X)的不收。
|
||||
- 同一家族多人只取一人(v4 已有 Sean Lennon、Joseph Kennedy III;v5 新增的 Serena 与 Venus Williams 为姐妹,按本条**仍收**——两人出生资料独立、事件独立,且任务书分层需要;已在构建说明中注明)。
|
||||
- 核对未通过(时区不一致、坐标与地名不符)的记录**不收**,不改数字凑合,见 §4。
|
||||
|
||||
## 3. 分层配额(任务书硬红线 4)
|
||||
|
||||
| 维度 | 配额 |
|
||||
| --- | --- |
|
||||
| 出生年代 | ≥3 个年代段 |
|
||||
| 纬度带 | \|φ\| <25° / 25–45° / >45° 三档都有 |
|
||||
| 南半球 | ≥8 例 |
|
||||
| 出生时间 22:00–02:00 | ≥6 例 |
|
||||
| UTC+8 | ≥6 例 |
|
||||
|
||||
达不到的写进 PROGRESS,不得静默。
|
||||
|
||||
## 4. 来源核对流程(每例)
|
||||
|
||||
1. **评级与出生资料**:astro.com 在 2026-09-29 对自动访问返回"One moment..."拦截页,Wayback 快照间歇不可达。因此评级与出生资料从 Astro-Seek 的 famous-people 页读取——该页逐字转载 Astro-Databank 的评级字母、采集人(Rodden / Scholfield / Borges …)、出生日期、当地时间、地点、坐标与 UTC 修正。记录里同时写 Astro-Databank 原页 URL(`birth.source.url`)与镜像页 URL(`birth.source.verified_via.url`)。**这是环境缺口**:验收时若 astro.com 可访问,应抽样回到原页复核。
|
||||
2. **时区核对**:用 `timezonefinder` + `zoneinfo` 按坐标与出生时刻算 UTC 偏移,与记录偏移比对。三种通过规则:
|
||||
- `zoneinfo_match`:完全一致;
|
||||
- `standard_time_kept_dst_disagreement`:tzdata 把时区代表城市的夏令时史套到整个时区,而出生记录保持标准时(例:1941 年 Duluth、1922 年 Grand Rapids、1963 年 Owensboro);
|
||||
- `lmt_from_birthplace_longitude`:1890 年前后欧洲的地方平时,tzdata 只有代表城市的 LMT,记录用出生地经度的 LMT(例:1879 Ulm、1890 Lille)。
|
||||
其他不一致一律拒收(本轮拒收 Borges 1899 Buenos Aires、Allende 1908 Valparaíso)。
|
||||
3. **地名核对**:Nominatim 地理编码记录里的地名,与记录坐标距离 ≤60 km。不一致拒收(本轮拒收 Corazon Aquino:记录地名 Paniqui,镜像坐标为马尼拉,相距 129 km)。
|
||||
4. **事件**:从英文 Wikipedia 正文(API `extracts`,纯文本)逐句筛出带年份的候选句,人工选择并标注领域 / 日期 / 精度;每条事件保存来源页 URL 与**逐字引文**(`source.quote`),构建脚本核对引文确实出现在页面文本里,找不到即拒收。模型草稿(候选句列表)不进数据集。
|
||||
|
||||
## 5. 数据文件
|
||||
|
||||
| 文件 | 内容 |
|
||||
| --- | --- |
|
||||
| `references/real_case_calibration/holdout_v5_roster.json` | 新增例的出生记录、评级、核对结果(`checks`) |
|
||||
| `references/real_case_calibration/minute_rectification_holdout_v5_events.json` | 新增例的事件(含引文) |
|
||||
| `references/real_case_calibration/minute_rectification_holdout_v5.json` | 构建产物:v4 的 20 例原样 + 新增例 |
|
||||
| `scripts/research/holdout_v5_build.py` | 构建脚本(`--check` 只校验不写) |
|
||||
| `tests/test_holdout_v5_schema.py` | schema 测试 |
|
||||
|
||||
## 6. 口径
|
||||
|
||||
ayanamsa `raman`、node mode `mean`、候选步长 2 分钟、三档半径 ±10 / ±30 / ±60 写在数据集上。v5 是开放评价集(`truth_hidden_from_ranker=false`),不是封存盲测;`sealed_holdout_rerun.py` 与 reported-offset 记录不因本单改变。
|
||||
Reference in New Issue
Block a user