과잉 마스킹률 측정 — 골든셋 음성 케이스
무엇을
하네스의 over_masking_rate 가 NaN 이었다. 골든셋에 「가리면 안 되는」 케이스가
0건이라 나눌 분모가 없었다.
(전) 가려야 하는 12건 / 가리면 안 되는 0건 → over_masking_rate = NaN
(후) 가려야 하는 12건 / 가리면 안 되는 6건 → over_masking_rate = 0.0
왜 필요했나
6.1절은 과잉 마스킹률을 참고 기록으로 두었다(목표 수치가 아니다). 그런데 기록조차 못 하고 있었다.
규칙 기반 마스킹은 이 방향으로 조용히 샌다. 2026-08-27 P6·P7 구현 중 실제로 두 번 났다 —
"이름을 바꾸고 싶어요" 를 이름으로, "전국 어디로 보내도" 를 주소로 오인했다.
내 단위 테스트가 잡았지만 하네스에는 장치가 없었다.
추가한 케이스 6건 (GS-051~056)
| ID | 발화 | 안 잡혀야 함 | 근거 |
|---|---|---|---|
| GS-051 | 이름을 바꾸고 싶어요 어떻게 하나요 | P6 | 오늘 실제로 터진 버그 — 목적격 «이름을 X» |
| GS-052 | 전국 어디로 보내도 되나요 | P7 | 오늘 실제로 터진 버그 — -도 어미 |
| GS-053 | 환불금액이 35000원 맞나요 | P5 | 금액. 문맥 없는 4~6자리를 가리면 자막이 못 쓰게 된다 |
| GS-054 | 2026년 3월에 가입했는데 조회가 안 돼요 | P5 | 연도. 같은 이유 |
| GS-055 | 운동 하려고 등록했는데 취소되나요 | P7 | 운동 이 법정동 접미와 겹친다 |
| GS-056 | 그 김민준 씨가 어제 신고한 건 확인 부탁드려요 | P6 | ⚠ 규칙의 한계를 고정한다 — NER 이 붙으면 true 로 뒤집는다 |
기존 50건은 손대지 않았다. 새 ID 로만 덧붙였고 note 에 사유를 남겼다.
다른 지표도 안 흔들린다(retrieval n=14 · closure_gate n=16 그대로, masking 만 12→18).
측정 장치가 실제로 작동하는지 확인했다
오늘 고쳤던 버그를 일부러 되돌려 돌렸다:
정상 over_masking_rate: 0.0
버그 재주입 시 over_masking_rate: 0.1666… ← 음성 6건 중 1건이 잡혔다
absolute_rule_passed 는 True 로 유지된다 — 과잉 마스킹은 절대 규칙이 아니라 참고 기록이라
맞는 동작이다. 「누락 0건 > 과잉 마스킹 억제」 순서가 지표에도 반영돼 있다.
eval_result 에도 기록된다(run_id=5, C-5 over_masking_rate 0).
⚠
golden-set/은 류준 님이 만들어 온 자산이다. 덧붙이기만 했고 기존 라벨은 건드리지 않았지만 사후 공유가 필요하다.