p5y

DOCS

APMF e tassonomia degli errori in un unico posto.
Strutturata.

1. Authorization & PII Minimization Framework (APMF)

Un sistema strutturato di policy e decision-making che determina quali dati personali possono essere accessibili per un compito specifico, da uno specifico richiedente, sotto vincoli normativi ed etici specifici.

Questo framework produce due output machine-readable:

  • Privacy Allowance Profile (PAP) – definisce quali classi di PII possono essere incluse (dirette, indirette, sensibili)
  • Data Access Certificate (DAC) – l’artefatto formale di autorizzazione che accompagna i dati

Scopo del framework

  • Far rispettare data minimization, least privilege access e purpose limitation
  • Decidere quali classi di PII sono consentite in un determinato contesto
  • Decidere quale processo di anonimizzazione sia necessario o appropriato
  • Integrarsi con workflow enterprise di Data Access Governance (DAG)
  • Fornire tracciabilità per audit di privacy, compliance, ML governance e reporting
  • Supportare dati non strutturati e workload ML (chat, log, trascrizioni, prompt)

Ambito

  • Si applica a qualsiasi dataset non strutturato o richiesta
  • Copre sia strumenti interni sia strumenti di terze parti (es. LLM cloud)
  • Copre richiedenti umani e automatizzati
  • Considera normative, etica, consenso e policy organizzative
  • Produce certificazioni, obblighi e trasformazioni delle PII

Come funziona

  1. Gli input vengono raccolti da metadati del dataset, profilo del richiedente, contesto d’uso e ambiente normativo
  2. Gli input vengono confrontati con le regole nella matrice di autorizzazione
  3. La matrice determina il Privacy Allowance Profile (es. “Nessuna PII diretta/indiretta”)
  4. Il sistema produce un Data Access Certificate (DAC) con requisiti, restrizioni e metadati di audit
  5. Pipeline automatizzate di anonimizzazione/redazione/scrubbing trasformano i dati di conseguenza
  6. L’accesso è concesso solo alla vista trasformata e approvata dei dati

Questo si inserisce in modelli esistenti di DAG, DLP, ML governance e privacy compliance.

2. APMF: PAPs

  • P0 — Full Access: Direct/indirect/sensitive consentite (audit/certificazione richiesti).
  • P1 — No Direct IDs: Dirette rimosse; indirette e sensibili possono rimanere.
  • P2 — No Direct or Indirect IDs: Dirette e indirette rimosse; sensibili possono rimanere
  • P3 — No Direct and sensitive: Dirette e sensibili rimosse; indirette possono rimanere
  • P4 — No sensitive data: Dirette e indirette possono rimanere; sensibili mascherate o rimosse
  • P5 — Fully De-Identified / External Processor: Tutte le PII rimosse/redatte; consentito solo testo aggregato o anonimizzato in modo irreversibile.
  • P6 — Synthetic / Derived: Consentiti solo dati sintetici o completamente derivati.

3. APMF: Framework Specification (Inputs)

Input information

Data source (automated from data metadata)

Informazioni che dovrebbero accompagnare la sorgente dati.

  • Data type: Chat clienti, email, trascrizioni chiamate, cartelle cliniche, documenti finanziari, record dipendenti, prompt, log, altro
  • Data domain: medico, finanziario, legale, governativo, altro (specificare)
  • Data include minors: sì / no / sconosciuto
  • Moderation risks: presenza di contenuti illegali, dannosi o potenzialmente disturbanti (richiede cura extra, specialmente se destinato a accesso umano, es. labeler)
  • PII classes in data: identificatori diretti, identificatori indiretti, attributi sensibili, nessuno, sconosciuto
  • Jurisdiction: localizzazione dei dati e dei soggetti per la giurisdizione
  • Consent: consenso ottenuto (sì/no/parziale – specificare uso consentito). Catturare stringhe esatte, timestamp, ambito (training sì, marketing no) e fonte (UI, cookie, contratto). GDPR/CCPA richiedono prova della base legale.
  • Data policy: campo per la policy di accesso e utilizzo dei dati dal provider.
  • Data provenance: collega dataset a sorgenti originali, versioni e trasformazioni per audit e riproducibilità.
  • Re-Use / Re-Training Flags: flag esplicito se il dataset può essere usato per training/fine-tuning successivi (sì/no/condizionale).
  • Access log: monitoraggio di chi ha avuto accesso ai dati, quando, …
  • Storage: dove sono archiviati i dati, eventuali copie
Requester (automated from requester profile)
  • Human or automated: umano, agent/tool/program
  • Party: interno / terza parte (nome & regione) / regolatore / interessato
  • Role: data scientist, annotator, analyst, …
  • Permissions: training, livello di accesso
Request (requester needs to provide)
  • Purpose of access: training (modello), testing/valutazione, debugging, produzione user-serving, analytics, legal/compliance, altro (specificare).
  • Processing location: on-prem, in-cloud (provider: …), hybrid.
  • Processing tool: tool interno, LLM/tool di terza parte (sì/no. Se sì: nome provider, stato contrattuale (DPA/BAA/SCCs))
  • Sensitivity of decisions: decisioni automatizzate? (sì/no); impatto sugli utenti? (sì/no); …
  • PII classes requested: identificatori diretti / identificatori indiretti / informazioni sensibili
Regulations (automated)
  • Jurisdiction: basata su localizzazione dati/utenti e localizzazione di processing/deployment – EU, US, UK, altro (specificare).
  • Regulations: regolamenti applicabili, in base alle info disponibili
  • Ethical risks: rischio di bias atteso (basso/medio/alto) e preoccupazioni

4. APMF: Framework Specification (Outputs)

Privacy Allowance Profile (PAP)

Machine readable: istruisce la macchina a preparare i dati secondo il profilo consentito.

  • Allowed classes of PII: identificatori diretti / identificatori indiretti / informazioni sensibili
  • Anonymization required: workflow automatizzati da applicare prima di concedere accesso secondo il DAC: redaction, obfuscation, …
Data Access Certificate (DAC)

Accompagna i dati ed è sia human sia machine readable, per abilitare audit e rilevazione automatica di violazioni di policy.

  • Request summary: dettagli su dati e per cosa l’accesso è concesso (chi può accedere, per quanto tempo, come può/non può essere usato, regolamenti rispettati, rischi etici …).
  • Re-identification risk score: score automatizzato per misurare l’efficacia della de-identificazione (utile per regolatori e auditor).
  • Derivative policies: policy per output dati/modelli derivati. Model inversion ed embedding leakage sono rischi noti.
  • Retention and deletion policy: quanto può persistere la vista/extract o un modello derivato. Collegare emissione a scadenza.
Permissions checklist

Elenca quali permessi sono richiesti e quali mancano per accedere ai dati come specificato dal richiedente. Facilita la richiesta chiarendo cosa serve e dove richiederlo.

5. Error Code Management & Taxonomy

Questo documento definisce la metodologia di gestione e la tassonomia dei codici di errore per il miglioramento continuo dei processi di anonimizzazione dei dati.

Management Framework

Overview

Questo framework fornisce un approccio sistematico per gestire e migliorare la qualità dell’anonimizzazione tramite rilevazione, misurazione e riduzione continue degli errori. Ispirato ai principi del Six Sigma[^1], consente alle organizzazioni di ottenere un’anonimizzazione quasi perfetta minimizzando gli errori nel tempo come parte di un Privacy Information Management System (PIMS).

Process Architecture

La pipeline di anonimizzazione consiste in tre livelli:

  1. Source Layer: testo originale contenente informazioni personali identificabili (PII)
  2. Privacy Layer: testo con PII sostituite da privacy token (es. [NAME], [EMAIL])
  3. Output Layer: testo finale dopo l’unmasking e eventuali trasformazioni (es. traduzione, sintesi)

Core Detection Function

FUNCTION DetectErrors( 	inputs: { source: String, actual-mask: PrivacyMask=[ List <{Start , End, Label, Index }>], computed-mask:PrivacyMask=[ List <{Start , End, Label, Index }>]} 	) 	-> ErrorMatrix [ List<{ activation: Code, explanation: String }> ]:

Objective: minimizzare la funzione di errore al crescere di volume e complessità delle richieste.

Quality Management Workflow:

  • Inference Stage: dato il testo sorgente e la tassonomia delle label, calcolare la privacy mask
  • Evaluation Stage: confrontare la mask calcolata con annotazioni gold standard
  • Post-Processing Stage: applicare sostituzioni stringa e validare la qualità dell’output
  • Analysis Stage: classificare errori per tipologia, calcolare metriche, identificare aree di miglioramento
  • Improvement Stage: affinare modelli, regole e processi in base ai pattern di errore

6. Error Taxonomy: Errori di classificazione token (T)

  1. ## Errori di classificazione token (T)

Description: fallimenti di classificazione binaria a livello di token, in cui unità di testo vengono identificate erroneamente come contenenti o non contenenti PII. Token qui indica le unità risultanti, ad esempio, dalla tokenizzazione del testo.

Application: si applica a tutti i task di anonimizzazione durante la fase iniziale di detection a livello token.

Evaluation:

  • Severity: 5/5 — l’undertriggering crea violazioni dirette di privacy; l’overtriggering riduce l’utilità dei dati e può bloccare casi d’uso legittimi
  • Metrics: Precision, Recall, F1-score a livello token; False Positive Rate (FPR), False Negative Rate (FNR)
Code
T-001
Error Name
Overtriggered
Description
Token marcato come PII quando non dovrebbe
Example[^2]
S: I like apple pie P: I like [COMPANY] pie G: I like apple pie
Code
T-002
Error Name
Undertriggered
Description
Token marcato come non-PII quando contiene info personali
Example[^2]
S: Email to john.doe@email.com P: Email to john.doe@email.com G: Email to [EMAIL]

7. Error Taxonomy: Errori di entity span (S)

  1. ## Errori di entity span (S)

Description: errori nel determinare correttamente i confini delle entità PII. Il sistema riconosce che esiste PII ma non cattura l’intero span oppure cattura porzioni errate del testo circostante. Un’entità è un’informazione che può contribuire a identificare un individuo o rivelare dettagli sensibili. Le entità possono essere realizzate tramite span di uno o più token.

Application: si applica a tutti i sistemi di anonimizzazione basati su entità. Particolarmente rilevante per NER e boundary detection su entità multi-token.

Evaluation:

  • Severity: 4/5 — impatto moderato su privacy (underannotation) e utilità (overannotation). Può propagarsi in errori di label classification
  • Metrics: Exact Match Accuracy, Partial Match Score, Character-level F1, Boundary IoU
Code
S-001
Error Name
Overannotated
Description
Span include più token del corretto
Example
S: Dr. Sarah Johnson's research is outstanding P: [NAME] research is outstanding G: Dr. [NAME]’s research is outstanding
Code
S-002
Error Name
Underannotated
Description
Span include meno token del corretto
Example
S: Dr. Sarah Johnson's research is outstanding P: Dr. Sarah [NAME]’s research is outstanding G: Dr. [NAME]’s research is outstanding
Code
S-003
Error Name
Partially Overlapping
Description
Span sovrapposti ma confini non allineati
Example
S: Dr. Sarah Johnson's research is outstanding P: Dr. Sarah [NAME] is outstanding G: Dr. [NAME]’s research is outstanding
Code
S-004
Error Name
Span Fragmented
Description
Entità singola spezzata in più entità
Example
S: I live in New York City P: I live in [LOCATION] [LOCATION] [LOCATION] G: I live in [LOCATION]
Code
S-005
Error Name
Spans Merged
Description
Più entità distinte fuse in un unico span
Example
S: Travel from Paris to London tomorrow P: Travel from [LOCATION] tomorrow G: Travel from [LOCATION] to [LOCATION] tomorrow
Code
S-006
Error Name
Span Misaligned
Description
Entità rilevata ma confini completamente errati
Example
S: I live in New York P: I liv[LOCATION]ork G: I live in [LOCATION]

8. Error Taxonomy: Errori di entity nesting (N)

  1. ## Errori di entity nesting (N)

Description: fallimenti nel riconoscere e rappresentare relazioni gerarchiche in cui un’entità contiene o è contenuta in un’altra entità.

Application: si applica principalmente a contesti di dati strutturati (file path, URL, indirizzi, gerarchie organizzative) e a sistemi che supportano entità annidate. Non applicabile a modelli “flat”.

Evaluation:

  • Severity: 3/5 — può esporre PII annidate ma spesso l’entità contenitore offre protezione sufficiente. L’impatto varia per profondità e tipi di entità
  • Metrics: Nested Entity Recognition Rate, Hierarchy Completeness Score, Parent-Child Match Accuracy
Code
N-001
Error Name
Missing Nested Entity
Description
Entità annidata non riconosciuta
Example
S: /home/john_doe/documents/contract.pdf P: [/home/john_doe/documents/contract.pdf]FILEPATH G: [/home[/john_doe]USERNAME/documents/ contract.pdf]FILEPATH
Code
N-002
Error Name
Missing Larger Entity
Description
Entità più grande non riconosciuta
Example
S: /home/john_doe/documents/contract.pdf P: /home[/john_doe]USERNAME/documents/ contract.pdf G: [/home[/john_doe]USERNAME/documents/ contract.pdf]FILEPATH

9. Error Taxonomy: Errori di label classification (single-label) (L)

  1. ## Errori di label classification (single-label) (L)

Errori nell’assegnare la corretta categoria PII a un’entità. Si verificano quando lo span è corretto ma viene assegnato il tipo/categoria sbagliato o un livello di granularità inappropriato.

Description: errori nell’assegnare la categoria PII corretta quando deve essere applicata una sola label. Lo span è corretto ma la tipologia o la granularità è errata.

Application: si applica a tutti i sistemi basati su classificazione. Critico quando entità diverse richiedono trattamenti differenti (es. retention, encryption).

Evaluation:

  • Severity: 3/5 — rischio spesso più basso perché l’entità è comunque protetta, ma può impattare processing downstream, policy compliance e utilità analitica
  • Metrics: Label Accuracy, Confusion Matrix, Macro/Micro F1 per classe, Granularity Appropriateness Score
Code
L-001
Error Name
Misclassified
Description
Label completamente errata
Example
S: For support, call 555-1234 P: For support, call [PASSWORD] G: For support, call [PHONE]
Code
L-002
Error Name
Imprecise
Description
Categoria troppo grossolana/fallback
Example
S: I live in Paris P: I live in [LOCATION] G: I live in [CITY]
Code
L-003
Error Name
Too Specific
Description
Categoria troppo specifica
Example
S: Enter code 3456 P: Enter code [PASSWORD] G: Enter code [NUMERIC_ID]

10. Error Taxonomy: Errori di label classification (multi-label) (M)

  1. ## Errori di label classification (multi-label) (M)

Description: errori nell’assegnare e nel rankare più categorie PII valide quando un’entità appartiene legittimamente a più classi. Include label mancanti, ranking errato o label non valide.

Application: si applica solo a sistemi multi-label, tipicamente per entità ambigue (es. “Jordan” come NAME/LOCATION) o entità con più informazioni (es. SSN italiano “RSSRRT60R27F205X” che include anche parti di nome, data di nascita, città e genere).

Evaluation:

  • Severity: 2/5 — impatta decisioni downstream ma l’entità resta probabilmente protetta da almeno una label
  • Metrics: ranking: nDCG o LRAP; assegnazione: Precision/Recall
Code
M-001
Error Name
Overranked
Description
Label possibile ma rankata troppo alta
Example
S: I want to visit Jordan P: I want to visit Jordan[NAME:0.9, COUNTRY:0.8] G: I want to visit Jordan[COUNTRY:0.8, NAME:0.4]
Code
M-002
Error Name
Underranked
Description
Label possibile ma rankata troppo bassa
Example
S: I want to visit Jordan P: I want to visit Jordan[NAME:0.4, COUNTRY:0.3] G: I want to visit Jordan[COUNTRY:0.8, NAME:0.4]
Code
M-003
Error Name
Underlabeled
Description
Poche label assegnate; label valide mancanti
Example
S: I want to visit Jordan P: I want to visit Jordan[COUNTRY:0.8, ] G: I want to visit Jordan[COUNTRY:0.8, NAME:0.4]
Code
M-004
Error Name
Overlabeled
Description
Troppe label; alcune non valide
Example
S: I want to visit my friend Jordan P: I want to visit my friend Jordan[NAME:0.9, COUNTRY:0.4] G: I want to visit my friend Jordan[NAME:0.9]

11. Error Taxonomy: Errori di privacy token (K)

  1. ## Errori di privacy token (K)

Description: errori nella struttura dei privacy token, nel collegamento al testo sorgente e nella coreference lungo il documento. Impattano integrità, tracciabilità e consistenza dell’identità.

Application: si applica a tutti i sistemi token-based che mantengono mappature tra token e entità originali. Critico per anonimizzazione reversibile e scenari con più menzioni.

Evaluation:

  • Severity: 4/5 — alta: può rompere l’unmasking, esporre PII tramite token mal formati o non proteggere menzioni ripetute
  • Metrics: Token-Span Alignment Accuracy, Coreference Resolution F1, Token Format Compliance Rate
Code
K-001
Error Name
Incorrect token length
Description
Lunghezza token non corrisponde allo span reale
Example
P: Contact Dr. Smith[NAME] Privacy token: [NAME]byte:12-13 Privacy token: [NAME]byte:12-17
Code
K-002
Error Name
Incorrect token anchors
Description
Token collegato a span errato o a nessuno
Example
P: Contact Dr. Smith[NAME] Privacy token: [NAME]byte:4-8 Privacy token: [NAME]byte:12-17
Code
K-003
Error Name
Missing Coreference
Description
Coreference mancante tra riferimenti
Example
S: Hannah Smith was born in 1956. Dr. Smith studied in Edinburgh P: [NAME_1] was born in 1956. Dr. [SURNAME_2] studied in Edinburgh G: [NAME_1] was born in 1956. Dr. [SURNAME_1] studied in Edinburgh
Code
K-004
Error Name
Incorrect token label
Description
Token etichettato in modo errato
Example
S: Patient SSN is 123-45-6789 P: Patient SSN is [SocialNum_001] G: Patient SSN is [SSN_1]
Code
K-005
Error Name
Token label includes PII
Description
Label include PII
Example
S: Janet Smith’s passport number is DG456789 P:[NAME_FEMALE_1]’s passport number is [US_PASSPORTNO_1] G:[NAME_1]’s passport number is[PASSPORTNO_1]

12. Error Taxonomy: Errori di testo in output (O)

  1. ## Errori di testo in output (O)

Description: errori durante unmasking e generazione dell’output, in cui i privacy token vengono sostituiti in modo errato, posizionati male o rendono il testo finale agrammaticale.

Application: si applica solo a sistemi reversibili con unmasking e a pipeline che includono trasformazioni (traduzione, sintesi, style transfer) dopo il masking.

Evaluation:

  • Severity: 3/5 — media. Non crea privacy breach ma impatta fortemente usabilità, comprensione e fiducia
  • Metrics: Unmasking Accuracy, BLEU/ROUGE, Edit Distance, Grammaticality
Code
O-001
Error Name
Privacy mask filled with incorrect entity value
Description
Valore errato inserito in unmasking
Example
S: We met John Doe at the conference P: We met [NAME] at the conference O: We met Janet at the conference G: We met John Doe at the conference
Code
O-002
Error Name
Privacy mask not replaced
Description
Token resta nell’output
Example
S: We met John Doe at the conference P: We met [NAME] at the conference O: We met [NAME] at the conference G: We met John Doe at the conference
Code
O-003
Error Name
Span incorrectly replaced
Description
Sostituzione in posizione errata
Example
S: We met John Doe at the conference P: We met [NAME] at the conference O: We met at the John Doe conference G: We met John Doe at the conference
Code
O-004
Error Name
Unmasked entity value ungrammatical
Description
Valore unmasked non adattato al contesto
Example
S: Helena's book is excellent P: [NAME] book is excellent O: Helena Buch ist ausgezeichnet G: Helenas Buch ist ausgezeichnet (German possessive ‘s’)
Code
O-005
Error Name
Surrounding output text ungrammatical
Description
Errori introdotti nel testo circostante
Example
S: Residency: United States P: Residency: [COUNTRY] O: I live in United States G: I live in the United States
Code
O-006
Error Name
Unmasked entity value not translated
Description
Valore non adattato alla lingua di output
Example
S: Janet has recently married P: [NAME] has recently [MARITAL_STATUS] O: Janet si è married da poco G: Janet si è sposata da poco

13. Error Taxonomy: Errori di personalizzazione (P)

  1. ## Errori di personalizzazione (P)

Description: errori nell’applicazione di preferenze specifiche utente/policy, che portano a gestione errata rispetto a requisiti individuali o policy organizzative.

Application: si applica solo a sistemi con regole personalizzate (es. livelli di sensibilità, custom entity type, requisiti giurisdizionali).

Evaluation:

  • Severity: 4/5 — alta, perché viola aspettative e compliance di policy
  • Metrics: Policy Compliance Rate, Preference Application Accuracy, User Satisfaction Score
Code
P-001
Error Name
Preference Not Applied
Description
Preferenza ignorata
Example
S: My IP address is 192.168.1.1 User Preference: Anonymise all IP addresses P: My IP address is 192.168.1.1 G: My IP address is [IP_ADDRESS]
Code
P-002
Error Name
Wrong Preference Applied
Description
Preferenza errata applicata
Example
S: Patient : E12345 Applied Policy: Healthcare (anonymise) P: Employee ID: [EMPLOYEE_ID] Correct Policy: Internal HR (retain) G: Employee ID: E12345

14. Error Taxonomy: Errori di processo legati a progetti di privacy (E)

  1. ## Errori di processo legati a progetti di privacy (E)

Description: errori organizzativi e di workflow che riflettono come l’anonimizzazione è integrata nelle attività più ampie di trattamento dati.

Application: a livello di processo/workflow, non di implementazione tecnica. Rilevante per audit e valutazioni di maturità PIMS.

Evaluation:

  • Severity: 5/5 — massima: fallimenti sistemici che possono impattare tutte le attività di trattamento dati
  • Metrics: Privacy Impact Assessment, audit di processo, incident rate, time-to-privacy
Code
E-001
Error Name
Privacy Ignored
Description
Anonimizzazione ignorata quando necessaria
Example
Il team condivide un DB di produzione con PII per testing senza anonimizzazione
Code
E-002
Error Name
Anonymization as Blocker
Description
Anonimizzazione troppo restrittiva che blocca lavoro legittimo
Example
Over-anonymization rende i dataset inutilizzabili e forza workaround
Code
E-003
Error Name
Privacy as Blocker
Description
Anonimizzazione mancante/insufficiente rende dati inutilizzabili
Example
Dataset inutilizzabili per preoccupazioni di rischio privacy
Code
E-004
Error Name
Inappropriate Technique Selection
Description
Tecnica errata per il livello di sensibilità
Example
Tokenization dove serve anonimizzazione/pseudonimizzazione; masking reversibile per dati altamente sensibili
Code
E-005
Error Name
Inferability Risk
Description
Informazioni inferibili da contesto/metadati
Example
Lunghezza token rivela genere, inferenza statistica da quasi-identificatori

[^1]: Six Sigma è un metodo di quality management data-driven che mira a risultati quasi perfetti minimizzando difetti e variazione nei processi.

[^2]: S: Source text; P: Privacy layer; O: output layer dopo unmasking/processing; G: Gold standard