Estrazione intelligente dei dati in base alla semantica del - k-tree

Transcript

Estrazione intelligente dei dati in base alla semantica del - k-tree
Estrazione intelligente dei dati in base alla
semantica del contesto
K-Tree S.r.l.
Via Noto, 6, 20141 Milano - Italy
Tel. 02 56810063 -02 36580660
Fax +39 02 57303797
Introduzione
Il crescente ruolo strategico svolto, nell’era dell’economia della conoscenza e genericamente
postindustriale, da processi di generazione, acquisizione ed interpretazione dati legati alla proliferazione
informazionale che caratterizza i contemporanei media digitali, ha comportato negli ultimi anni una
moltiplicazione di studi ed analisi incentrati sulle tematiche della rappresentazione della conoscenza e sul
ruolo sempre più rilevante svolto da queste ultime nel campo della cosiddetta knowledge extraction.
L’innesco di queste traiettorie di sviluppo e ricerca si radica evidentemente all’interno degli scenari di
business connessi alle più recenti opportunità di mercato promosse dallo sfruttamento dell’informazione
come fattore competitivo, ovvero allo sviluppo di tecnologie in grado di
1) processare grandi quantità di dati provenienti da fonti eterogenee di informazioni nativamente povere di
struttura
2) permettere il riconoscimento di pattern e ricorrenze tra dette entità informazionali
3) arricchirne il contenuto con meta-informazioni
4) abilitare funzionalità di interrogazione dati e recupero di informazioni che siano sensibili ai vari contesti di
significato in cui tali dati ed informazioni alloggiano.
Il nuovo orientamento concettuale subito dal Document Management indotto da questi nuovi scenari
commerciali, diviene così evidente quando questo intenda offrire ad una azienda uno strumento
informatico capace non solo di ordinare e rendere accessibili le informazioni (evitare ripetizioni, possibili
ridondanze, impossibilità di accesso, incoerenza, perdita di dati, ecc.), quanto piuttosto una suite che
supporti
1) l’analisi e la catalogazione di dati eterogenei e delle basi di conoscenza implicitamente presenti nella
massa documentale, gravitante attorno ad un’impresa (dai documenti proprietari a documentazione
distribuite nell’infosfera),
2) l’acquisizione e la rappresentazione sistematica e formale di questa conoscenza,
3) l’attivazione di processi computazionali efficaci anche in fase manutentiva ed evolutiva e, naturalmente 4)
modalità molteplici di condivisione e trasferimento della stessa.
1
In quest’ottica, ciò che si chiede ad un Document Management System è inoltre che sia in grado di aggredire
il livello propriamente conoscitivo delle informazioni, ovvero che sia capace di riconoscere
automaticamente il significato delle informazioni processate/catalogate in funzione degli interessi specifici
dell’utente che vi accede.
Riassumendo un sistema che, sensibile al contesto semantico delle parole, offra servizi di classificazione,
analisi ed interrogazioni su corpora informazionali che sono non solo distribuiti ed eterogenei, ma anche
fortemente destrutturati (come nel caso dei documenti web).
Obiettivo del contributo è precisamente quello di illustrare, attraverso la descrizione di un reale caso
aziendale, le linee metodologiche per lo sviluppo di una classe di sistemi di Information Retrieval basati
esattamente sul trattamento semantico di informazioni contestuali.
A questo scopo nel seguito, viene presentata l’esperienza condotta da K-Tree s.r.l. nel campo della
progettazione e sviluppo di un sistema di Context-Based Intelligent Data Capturing realizzato con tecniche di
rappresentazione della conoscenza e applicato al riconoscimento e classificazione automatica di grandi
flussi documentali dematerializzati.
Dati, Contesto e Semantica Applicata: il caso K-Capture
In linea generale K-Capture nasce come sistema di Context-Based Intelligent Data Capturing mirante ad
escludere - o comunque portare a livelli minimi - l’intervento umano nel processo di
riconoscimento/interpretazione di significati testuali.
Nello specifico K-Capture è stato sviluppato come applicazione che, eventualmente collocata a valle di
sistemi Optical Character Recognition (OCR), consente di estendere le potenzialità di lettura di questi ultimi
arricchendone il processo di interpretazione con moduli Knowledge Based.
Portando quindi a convergenza l’approccio basato sulla visione artificiale e quello testuale/semantico,
K-Capture rappresenta ad oggi una soluzione di Document Management e Knowledge Extraction che,
coordinando vari moduli applicativi esterni (ICR/OCR, motore inferenziale, Knowledge Base, Document
Management System) permette di automatizzare la gestione di flussi documentali e spostare il focus dei
tradizionali approcci documentali al riconoscimento ottico di caratteri dalla semplice digitalizzazione dei
flussi documentali in ingresso (fatture passive, cartelle cliniche, email, ecc.), ad un livello più evoluto capace
di affrontare il livello semantico dell’informazione disponibile nel testo scritto.
L’evoluzione a cui qui si allude si riferisce essenzialmente ai colli di bottiglia di cui i tradizionali sistemi OCR
soffrono, i quali, senza scendere in analisi di dettaglio fuori dagli scopi del presente contributo, derivano
2
essenzialmente dalle ambiguità semantiche di cui soffre la lettura OCR. Sul piano strettamente tecnologico
dei sistemi OCR il razionale da cui dette ambiguità traggano origine, trova spiegazione in tre distinte
considerazioni:
–
Nel fatto che la scelta basata su algoritmi puramente grafici può essere in sé ingannevole;
–
Nel fatto che la filtrazione basata su dizionari non è sufficiente a dirimere casi di ambiguità
semantica;
–
Nel fatto che la costruzione manuale di insiemi di regole per la classificazione documentale e la data
extraction è particolarmente costosa e onerosa.
Sul piano invece delle performance e dunque delle effettive prestazioni offerte in specifici casi applicativi,
queste ultime sono strettamente dipendenti dal grado di ‘regolarità’ strutturale posseduto dai documenti
de materializzati.
Nei documenti strutturati infatti (ad esempio format o tabelle valorizzate univocamente generate da una
singola applicazione, ad esempio un DBMS) la forma del testo offre relativamente ai termini e alle asserzioni
che in quella struttura sono organizzate, un contesto per ridurne le eventuali ambiguità di significato, nei
documenti non strutturati ,invece (ad esempio testi in campo libero) il significato del testo non può essere
supportato da alcun tipo di analisi strutturale mirante all’individuazione dei contesti semantici.
Tra queste due opzioni – che di fatto esprimono le aree del Document Object Modelling e quello del Natural
Language Processing - trova spazio il caso ‘ibrido’ di documenti semi-strutturati, ovvero testi in cui la
semantica dello scritto può essere solo intuita dalla struttura poiché il significato dei termini che vi
occorrono è solo parzialmente deducibile dalla struttura in cui i termini sono organizzati (esempi di questo
tipo rappresentati in Tabella 1).
Il caso di studio K-Capture qui descritto è precisamente riferito al trattamento computazionale di
quest’ultima tipologia di documenti.
Come estrarre quindi, in modo intelligente, i dati in base al contesto?
In linea generale la strategia risolutiva per supportare un processo di interpretazione automatica di testi
semi-strutturati consiste di fatto, nell’individuazione di euristiche per minimizzare l’ambiguità del significato,
ovvero nel definire procedure computazionali in grado di utilizzare il riconoscimento automatico del
contesto offerto dalla semi-struttura per arricchire semanticamente i segni linguistici che vi occorrono.
Dalla linea generale al punto applicativo il passo non è banale. L’esperienza di ricerca e sviluppo maturata su
questo tema attraverso K-Capture, ha permesso di impostare una via originale sul piano metodologico ed
innovativa sul piano computazionale per la realizzazione del suddetto obiettivo.
In breve – ma a fronte di un lavoro estremamente lungo - l’euristica per il trattamento del contesto
semantico è stata individuata negli indicatori tipografici e topologici presenti nel testo da interpretare
automaticamente.
3
Detto altrimenti, attraverso una interpretazione posizionale dei tipi e sottotipi grafici(derivata da una teoria
sui comportamenti grafici dello scrivente) si è riconosciuto come la disposizione assoluta e relativa dei tipi
grafici potesse essere una sentinella utile per il riconoscimento del significato degli elementi semantici
occorrenti in detta disposizione (si pensi al caso – realmente accaduto nel caso della interpretazione di
fatture – del riconoscimento automatico di tabelle irriducibili ad una singola struttura e presenti in
documenti dalla struttura altrettanto variabile).
Il significato di detto simbolo semantico è stato così rappresentato sulla base di un modello a due facce: per
un verso il significato puntuale del termine, per l’altro il contesto tipografico in cui il simbolo si presenta.
Il trattamento coordinato di queste due sorgenti di informazione (una esplicita legata al singolo termine,
l’altra implicita legata alla sua disposizione nello spazio del testo) ha permesso di progettare, sviluppare ed
ingegnerizzare un sistema basato sulla conoscenza ( Knowledge Base System - KBS) a supporto della
interpretazione dei risultati della piattaforme di lettura (non necessariamente solo OCR).
Tale implementazione comporta la realizzazione di tre moduli, tra loro integrati:
–
Un sistema di rappresentazione dello spazio dei simboli, per il trattamento dei contesti semantici su
base topologica e posizionale;
–
Un sistema di rappresentazione del significato lessicale dei termini, ovvero una ontologia e un
dizionario controllato;
–
Un sistema di apprendimento meccanico per l’aggiornamento semi-automatico delle basi di
conoscenza.
Nel complesso l’architettura del sistema appare come da Figura 1.
4
Figura 1 - Rappresentazione del flusso concettuale K-Capture-motore di lettura. Due distinte interfacce permettono l’accesso al
sistema. L’interfaccia utente consente di eseguire 1) le funzionalità di analisi ed interpretazione erogate dal Knowledge Based
System oltre che 2) i servizi di supervisione dipendenti dalla valutazione dell’utente rispetto agli output del sistema. L’interfaccia
di servizio consente invece ai manutentori/tecnici informatici/ingegneri della conoscenza, di configurare e manutenere i moduli
del KBS verticalizzando in funzione dei casi d’uso la configurazione del sistema. La componente ‘Machine Learner’ opera invece
direttamente sulle regole implementate nei modelli di conoscenza correggendole in senso statistico. Gli archi rappresentano il
flusso informativo motore di lettura-K-Capture orchestrato dal gestore del Sistema.
La versione in ambito web è la seguente:
5
Aspetto rilevante dell’architettura riguarda precisamente l’ibridazione tra un approccio modellistico
basato su tecniche simboliche di rappresentazione della conoscenza (ontologie, reasoners, sistemi a
regole) ed un approccio sub-simbolico volte a calibrare i modelli di conoscenza attraverso correzioni di
tipo statistico.
A fronte di un opportuno addestramento del sistema e di sue specifiche verticalizzazioni, in funzione dei
distinti domini applicativi (la componete “KBS” di Figura 1) ed a fronte inoltre dell’implementazione di
distinte interfacce per il sistema di supervisione accedute direttamente dall’utente finale del sistema (la
componente “Supervisione” in Figura 1) e volte a favorire la manutenzione dei modelli, sono stati raggiunti
risultati – sia su casi di studio che su clienti reali - estremamente significativi rispetto a quelli espressi dai
sistemi in commercio, arrivando a performance di estrazione di dati significativi non inferiori al 75% (nel
caso OCR) su tipologie di documenti che spaziano tra le classi di documenti segnalati in tabella1.
6
Tabella 1- Domini Applicativi K-Capture
Conclusioni
L’esperienza maturata attraverso K-Capture come esempio di trattamento semantico dell’informazione
applicato a documentazione dematerializzata, costituisce un caso aziendale significativo di profonda
sinergia tra l’approntamento e definizione di metodologie di sviluppo Knowledge Based tipiche della ricerca
di base e lo sviluppo di applicativi in grado di rispondere alle richieste gestionali indotte dalla proliferazione
informazionale che caratterizza larga parte degli attuali scenari di mercato in ambito ICT-documentale. In
questo senso il caso qui descritto intende mostrare l’alleanza K-Capture-motore di lettura solo come uno tra
i molteplici scenari applicativi del più generale approccio metodologico al trattamento semantico e
contestuale di corpi informazionali (information retrieval) di cui K-Capture costituisce, per l’appunto, una tra
le possibili istanze.
7