Guide

Accelerare la gestione documentale con l’AI: guida alla NER



Indirizzo copiato

Come implementare in azienda la Named Entity Recognition (NER), una tecnologia che viene impiegata con successo in settori diversi su casi d’uso che richiedono appunto l’estrazione di una o più entità dai documenti

Pubblicato il 23 feb 2024

Andrea Walter Ruggerini

Machine Learning Engineer – Innovation Ammagamma



NER

Ogni organizzazione genera tutti i giorni centinaia di documenti funzionali all’operatività: contratti, manualistica ed e-mail sono solo alcuni esempi. Cosa c’è in questi documenti? Come trovarvi informazioni rapidamente? Come accedere all’informazione giusta quando serve?

A mano a mano che la base documentale cresce diventa sempre più difficile per le aziende rispondere a queste domande in modo efficiente. Non è solo una questione di efficienza: se non si può accedere all’informazione è impossibile prendere decisioni informate e coerenti.

Risolvere questi problemi richiede una gestione “intelligente” dei documenti: la tecnologia può venire in nostro aiuto e facilitare ricerca e organizzazione. In questo articolo parleremo di una delle tecnologie adatte all’identificazione sistematica di “entità”, la NER (Named Entity Recognition), e come implementarla in pratica in azienda. Al di là della definizione formale, intendiamo per “entità” qualsiasi oggetto o soggetto menzionato nella nostra base documentale che sia di nostro interesse. Tipicamente si cercano nomi di persona, organizzazioni, prodotti, quantità numeriche e date.

NER (Named Entity Recognition), cos’è la gestione intelligente dei documenti


La NER (Named Entity Recognition) è una tecnologia che viene impiegata con successo in settori diversi, su casi d’uso che richiedono appunto l’estrazione di una o più entità dai documenti. Vediamo alcuni esempi.

  • In ambito legale: i professionisti possono estrarre persone, date, luoghi e immobili salienti dai documenti, senza dover scorrere contratti lunghi e complessi per recuperare le informazioni.
  • Nel servizio clienti: gli assistenti virtuali dei servizi clienti sono simili a ChatGPT rispondono in modo conversazionale. Tuttavia, il riconoscimento di tipi specifici di entità consente di indirizzare i casi di supporto nella maniera desiderata e.g. fornendo informazioni sul tracking o facendo intervenire un operatore quando necessario.
  • Nel marketing: l’analisi sistematica delle news e feed social per tipi di entità consente di individuare le tendenze, gestire la reputazione e comprendere meglio i clienti.
  • Nella sanità: i medici possono trovare velocemente patologie e farmaci pertinenti in basi di dati non strutturate come i referti.
NER
Figura 1 – settore Immobiliare: riconoscimento delle entità mediante NER

Implementare il riconoscimento delle entità (NER) in azienda: le domande fondamentali

Riconoscere entità rilevanti per il business all’interno di una base documentale può rendere molti processi più semplici ed efficaci. L’implementazione della tecnologia in azienda consente elevati guadagni di produttività ma eseguire un progetto di implementazione nei tempi e con le risorse giuste è importante.

Vale allora la pena allora dotarsi di alcune domande:

  • quanto tempo o inefficienze posso risparmiare implementando la NER nei miei processi?
  • Che tempi e costi possono essere ragionevoli?
  • Quale accuratezza deve raggiungere il sistema di identificazione (NER) per generare i benefici attesi?

Spesso non è semplice conoscere le risposte a queste domande tecniche. Partire però dalle necessità, o dai benefici attesi, permette di solito di individuare i primi processi da accelerare. Alle volte si può anche considerare di validare il caso d’uso end-to-end per essere certi che i benefici possano essere raggiunti: il riconoscimento delle entità è parte di un sistema software che deve rendere migliore il lavoro di qualcuno (end-to-end: dal documento alla persona).

In quanto a tempi, costi e accuratezza spesso si tratta di individuare un bilanciamento che va valutato in base al caso d’uso e al budget. In generale, si può dire che sistemi semplici tendono a essere poco “flessibili” (i.e. adatti a riconoscere pochi tipi di entità) e poco accurati mentre sistemi più complessi risultato più accurati, costosi (e rischiosi) da sviluppare.

Questa euristica però non è una guida definitiva. Esistono anche sistemi “flessibili” e rapidissimi da sviluppare, con accuratezze e compromessi che dipendono dal caso d’uso.

Per essere più consapevoli dell’impatto di queste scelte in termini di tempi, costi e accuratezza (e non solo!) ci addentriamo nel dettaglio nel prossimo paragrafo.

Tre modi per iniziare con la NER

Esistono almeno tre approcci per implementare il riconoscimento delle entità:

  1. approccio basato su regole (rule-based);
  2. Modelli di Machine Learning supervisionato (supervised ML) per l’analisi del linguaggio naturale (NLP);
  3. Tecniche di estrazione entità via Large Language Model.

Il primo approccio è molto efficace per le entità facili da descrivere attraverso regole: codici fiscali, numeri di tracking, numeri di telefono e, talvolta, nomi. Adottare un approccio basato su regole significa disporre delle regole stesse o del vocabolario necessario a identificare le parole. È inoltre un approccio che mostra limitazioni in caso in cui il contesto semantico sia importante per definire l’entità stessa (si pensi di dover estrarre solo una controparte da un contratto legale). In compenso è semplice da spiegare e richiede una raccolta dati limitata.

Le tecniche di Machine learning supervisionato sono di solito la tecnica di elezione per la NER, in quanto consentono un’eccellente accuratezza. Non c’è bisogno di stabilire regole o vocabolari e consentono di “imparare dai dati” le relazioni desiderate, dando vita a un “modello”. Per apprendere le relazioni però sarà necessario partire con almeno 200-250 esempi di entità per tipologia di entità da estrarre, che devono essere etichettati da uno o più operatori.

Uno schema semplificato delle fasi di sviluppo di un modello Machine learning da integrare in un sistema applicativo è presentato di seguito. La raccolta dati e l’addestramento specifico permettono di sviluppare un modello altamente efficiente e specializzato per il caso d’uso.

NER

Anche se ottimale dal punto di vista delle prestazioni, la raccolta dati può rivelarsi costosa o essere bloccante per completare altre parti di un progetto di automazione. Questa è la soluzione da adottare più di frequente ma non sempre quella ottimale per ogni fase del progetto o per ogni tipo di progetto.

Veniamo infine alle tecniche di estrazione di entità tramite LLM: facendo prompting in modo industrializzato e applicando opportune tecniche di post-processamento è possibile estrarre le entità di interesse dal testo, avendo addirittura la possibilità di decidere i tipi di entità da estrarre al momento stesso dell’estrazione (e non al momento di progettazione).

È inoltre possibile eseguire l’estrazione in maniera zero-shot, i.e. senza disporre di dati di addestramento da cui prendere esempio. L’integrazione risulta quindi molto rapida ed è possibile verificare l’impatto del sistema.

NER

L’applicazione della NER con LLM va valutata in base alla quantità e tipologia delle entità da estrarre: sebbene gli LLM siano estremamente flessibili e costi e tempi di sviluppo siano ridotti ciò potrebbe riflettersi in costi di esercizio più elevati e accuratezza inferiore.

Conclusioni

L’estrazione di entità e informazioni chiave dai testi non strutturati – nel nostro caso documenti – consente di automatizzare, semplificare e accelerare la gestione e l’operatività aziendale. Per questo motivo è importante disporre delle tecniche di riconoscimento delle entità (NER) adatte al caso di business: questo accelera lo sviluppo del progetto, la validazione e il ritorno dell’investimento. Bisogna inoltre tenere presente che gli approcci presentati non sono mutualmente esclusivi e si combinano talvolta con altri approcci che non abbiamo qui trattato per l’identificazione di entità in documenti strutturati (come fatture, scontrini, documenti di identità…).

Abbiamo mostrato che le tecniche di NER siano esse di AI o regole ad-hoc, sono strumenti. Possono essere utilizzati in contemporanea o in sequenza a seconda dello stato di sviluppo e maturità di una applicazione, per arrivare efficacemente all’obiettivo finale: rendere più intelligente il lavoro. Spesso la risposta dipende dalle necessità: vi lasciamo con uno schema riassuntivo dove evidenziamo il miglior metodo secondo alcuni possibili criteri di valutazione, da affiancare alle “domande fondamentali” riportate sopra.

Articoli correlati

Articolo 1 di 4