Každá americká nemocnice nebo zdravotnické zařízení přiřazuje pacientům Medical Record Numbers (MRN). Tyto identifikátory jsou HIPAA PHI kategorie — musí být redigovány v de-identifikaci Bezpečného přístavu. Ale každé zařízení si vybírá svůj vlastní MRN formát, a tato diverzita je noční můrou při konfiguraci.
Problém diverzity MRN formátu
Běžné MRN formáty v amerických zařízeních:
MRN: 1234567(čistě numerický, 7 číslic)PT-447291(prefix PT-, číslice)UH-2024-44291(University Hospital format, rok-číslo)MH447291(Memorial Hospital, MA prefix)M-447291(M prefix s pomlčkou)P447291(P prefix bez pomlčky)#447291(znak hash jako prefix)
Výzkumný projekt spojující záznamy z pěti nemocničních systémů bude mít pět odlišných MRN formátů v jednom datasetu — každý vyžadující vlastní regulární výraz pro správnou detekci.
Tradici přístup: Psaní regulárních výrazů ručně
Tradiční přístup vyžaduje technický personál schopný psát a testovat regulární výrazy:
# Memorial Hospital MRN
pattern_memorial = r"MRN:\s*[0-9]{7}"
# University Hospital MRN
pattern_uh = r"UH-[0-9]{4}-[0-9]{5}"
# St. Mary's MRN
pattern_stmarys = r"PT-[0-9]{5,6}"
Pro ne-technický compliance personál — klinické výzkumníky, IRB personál, nemocniční privacy úředníky — psaní regex vzorů je mimo jejich schopnosti.
AI-asistované generování vzorů
Moderní AI nástroje mohou generovat regex vzory z příkladů v přirozeném jazyce. Místo psaní regex, compliance personál poskytuje příklady:
Prompt pro AI: „Potřebuji regulární výraz pro detekci Medical Record Numbers v tomto formátu: MRN: 1234567 nebo MRN:7654321 nebo MRN: 0001234. Číslo je vždy 7 číslic, je vždy předcházeno 'MRN:' s volitelnou mezerou."
AI generovaný výstup:
Vzor: MRN:\s*[0-9]{7}
Popis: Shody MRN: prefix, volitelná mezera, pak přesně 7 číslic
Testovací případy: MRN:1234567 ✓, MRN: 7654321 ✓, MRN:0001234 ✓
Konfigurace v nástrojích PII: Jakmile máte regex, konfigurujte vlastní rekognizér v Presidiu nebo ekvivalentním nástroji:
from presidio_analyzer import Pattern, PatternRecognizer
mrn_pattern = Pattern(
name="memorial_hospital_mrn",
regex=r"MRN:\s*[0-9]{7}",
score=0.95
)
mrn_recognizer = PatternRecognizer(
supported_entity="US_MEDICAL_RECORD_NUMBER",
patterns=[mrn_pattern],
context=["patient", "record", "medical", "záznam", "pacient"]
)
Testování a validace
Po konfiguraci vlastního vzoru MRN je testování kritické před produkčním nasazením:
Test sada: Vytvořte testovací dokumenty se:
- Platnými MRN v každém formátu (pozitivní případy)
- Podobně vypadajícími čísly, která NEJSOU MRN (záporné případy): čísla telefonů, datumy, kódy objednávek
- MRN v různých kontextech: v tabulkách, v větách, v záhlavích
Metriky přesnosti:
- Sensitivity (recall): jaké procento skutečných MRN je detekováno?
- Specificity: jaké procento non-MRN čísel je správně přeskočeno?
- HIPAA de-identifikace vyžaduje vysokou sensitivity — přehlédnutý MRN je selhání de-identifikace
Zdroje: