Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
APPUNTI
DIGITALI
17 dicembre 2015
Quaderni
Le esigenze
Il mondo in cui viviamo e lavoriamo una fonte infinita di dati. Molti di essi
sono ben catalogati e accessibili in archivi e database organizzati per facilitare
la ricerca, lanalisi e la sintesi in informazioni, essenziali per ragionare, fare
ipotesi e prendere decisioni. Per contro luso di internet e del web mette in
evidenza anche lenorme quantit di dati e informazioni presenti in miliardi di
pagine e documenti disseminati in ogni parte del mondo. Inoltre anche
allinterno di ogni organizzazione, privata o pubblica, oltre agli archivi ben
organizzati dei sistemi ERP, CRM, PLM, ecc, esistono delle grandi moli di
documenti di varia natura che nascondono al loro interno unulteriore
vastissima quantit di informazioni le quali, se portate alla luce e rese accessibili
in modo strutturato, potrebbero letteralmente cambiare in molti casi la nostra
percezione e il valore delle nostre decisioni. Il problema che tutto questo
infinito patrimonio informativo contenuto in documenti e pagine scritte
generalmente sottoforma di testo libero, in lingue diverse, spesso con alfabeti
diversi e quindi in forme tuttaltro che strutturate ed atte a consentire una loro
identificazione, sintesi e catalogazione. Luso dei motori di ricerca sul web o di
un sistema di gestione documentale evidenzia il limite accennato. Anche
limpiego dei pi sofisticati motori, come ad esempio Google, a fronte di una
ricerca che vada oltre allindividuazione di alcune parole chiave in combinazione
tra loro ma che esprima, attraverso una frase, un concetto obiettivo trova
numerosi ostacoli nel processo di estrazione. Il limite risiede nel fatto che
unespressione di ricerca non solo da considerare come una serie di parole a
se stanti, ma come una frase con un suo significato (semantica frasale) che
deriva dallinsieme delle regole fonetiche, ortografiche, morfologiche, lessicali e
sintattiche di una lingua: la grammatica. Allo stesso modo, ai fini accennati, non
sufficiente identificare le pagine o i documenti che possano attendibilmente
riferirsi a quanto espresso, come con un tradizionale motore di ricerca, ma
2
ing. Roberto Gallerani
La maggior parte dei documenti necessari, anche a fini fiscali, sono altres
prodotti direttamente dalle procedure IT di supporto. Tuttavia in numerose
organizzazioni i documenti aggiuntivi del ciclo del magazzino possono essere
diversi e numerosi. Si pensi ad esempio a quelli relativi allanalisi ed al controllo
dei rischi, alla gestione della qualit del prodotto o a quelli che descrivono
modalit e aspetti legati al deperimento di merci e prodotti aventi effetto
diretto sui criteri di valorizzazione. Anche in questi casi il numero, la qualit ed il
valore delle informazioni contenute va molto al di la di quanto presente nel
sistema informativo tradizionale.
Un processo di information extraction basato sullanalisi e la comprensione di
documenti discorsivi in linguaggio naturale in grado di estendere
lidentificazione, la raccolta e la catalogazione di dati e informazioni utili a
migliorare la gestione dellorganizzazione.
Verbali di inventario in ambito civilistico
Il processo verbale dinventario contiene:
la descrizione degli immobili, mediante lindicazione della loro natura, della loro
situazione, dei loro conni e dei numeri del catasto e delle mappe censuarie;
la descrizione e la stima dei mobili, con la specicazione del peso o del marchio
per gli oggetti doro e dargento;
lindicazione della quantit e specie delle monete per il danaro contante;
lindicazione delle altre attivit e passivit;
3
ing. Roberto Gallerani
persone fisiche
persone giuridiche
organizzazioni prive di personalit giuridica
organizzazioni criminali
ecc.
Cosa significa
Estrarre informazioni da una sorgente scritta in linguaggio naturale comporta
intuitivamente lo sviluppo di una capacit di interpretazione semantica legata
alla lingua utilizzata e, non meno importante, al contesto espressivo e
terminologico del campo a cui essa si riferisce (dominio).
Con il termine Natural Language Processing (NLP) sintende un insieme di
tecniche e strumenti dedicati all'analisi e allelaborazione del linguaggio usato
comunemente dalle persone in forma scritta, orale e, al limite, gestuale.
La comprensione del linguaggio naturale spesso considerata un problema di
IA-completo poich si ritiene che il riconoscimento del linguaggio richieda una
conoscenza estesa del mondo e una grande capacit di comprensione. Questo
processo reso particolarmente difficile a causa delle caratteristiche intrinseche
di ambiguit del linguaggio umano e, per questo motivo, esso suddiviso in fasi
diverse simili, per certi versi, a quelle che si riscontrano nel processo di
elaborazione di un tradizionale linguaggio di programmazione.
In particolare un processo completo di elaborazione richiede di effettuare:
Analisi sintattica: arrangiamento dei token in una struttura sintattica (ad albero: parse
tree)
Analisi semantica: assegnazione di un significato (semantica) alla struttura sintattica e,
di conseguenza, all'espressione linguistica. Nell'analisi semantica la procedura
automatica che attribuisce all'espressione linguistica un significato tra i diversi possibili
detta disambiguazione.
5
ing. Roberto Gallerani
Gli strumenti
In un panorama globale esistono numerosi strumenti e piattaforme open
source di supporto alla progettazione e realizzazione di applicazioni di IE basate
su NLP. Essi si differenziano sotto vari aspetti, tra cui il tipo di licenza, i linguaggi
di sviluppo e gli ambienti supportati, linteroperabilit con altri ambienti, la
copertura in termini di funzionalit offerte ovvero il livello di generalit delle
6
ing. Roberto Gallerani
http://en.wikipedia.org/wiki/Outline_of_natural_language_processing
http://www-nlp.stanford.edu/links/statnlp.html
https://www.assembla.com/spaces/extraction-of-cost-data/wiki/Gate-vs-UIMA-vsOpenNLP
Stanford CoreNLP
Il gruppo di ricerca di Stanford University mette a disposizione una serie di
strumenti di NLP (http://nlp.stanford.edu/software/corenlp.shtml ,
http://nlp.stanford.edu/publications.shtml) che sono complessivamente
denominati Stanford CoreNLP. Stanford CoreNLP rilasciato con GNU General
Public License.
Stanford CoreNLP un framework Java per la gestione di pipeline (sequenze di
processi di elaborazione) per lannotazione di documenti che ha avuto negli
anni una rilevante espansione nellarchitettura e nelle funzionalit registrando
una notevole diffusione in molti ambienti scientifici e industriali.
7
ing. Roberto Gallerani
Da sottolineare che negli anni il core stato reso disponibile anche per lutilizzo
da altri linguaggi, quali C#, F#, PERL, Pyton, Ruby, Javascript.
Il framework offerto con unampia scelta di modelli e risorse di annotazione
per la lingua inglese e, nel tempo, anche per altre lingue tra cui Francese,
Tedesco, Cinese e Arabo. Molto poco invece attualmente disponibile per la
lingua italiana.
UIMA
UIMA (Unstructured
Information Management
Architecture) lunico
insieme di strumenti per
content analytics che stato
riconosciuto come standard
OASIS (Organization for the
Advancement of Structured
Information Standards) nel
2009. UIMA unarchitettura
software per lo sviluppo di
strumenti per lanalisi multimodale di informazioni non
strutturate e la loro
integrazione con tecnologie
di ricerca realizzate da IBM.
8
ing. Roberto Gallerani
"language identification"
"language specific segmentation"
"sentence boundary detection"
"entity detection (person/place names ...)".
OpenNLP
OpenNLP (http://opennlp.apache.org/) una libreria Apache per analisi di testi
che supporta vari tipi di azione:
tokenization
sentence segmentation
part-of-speech tagging
named entity extraction
chunking
parsing
coreference resolution.
GATE
GATE un'infrastruttura open source per lo sviluppo di sistemi di IE proposta da
University of Sheffield.
La piattaforma comprende principalmente:
9
ing. Roberto Gallerani
Plain Text
HTML
SGML
XML
RTF
Email
PDF (some documents)
10
ing. Roberto Gallerani
11
ing. Roberto Gallerani
12
ing. Roberto Gallerani
Un esempio
A titolo di esempio didattico elementare, per riassumere, vediamo una
rivisitazione di ANNIE, tra le tante possibili.
Si consideri la pipeline ANNIE in cui i nomi dei PR sono del tutto arbitrari e, in
ogni caso, personalizzabili:
13
ing. Roberto Gallerani
14
ing. Roberto Gallerani
Mario
Milano
Monza
Vimercate
Ogni annotazione presenta nelle propriet informazioni realtive alla lingua di
riferimento e di classificazione (majorType e minorType) legate al glossario
attraverso cui stato effettuato il riconoscimento.
15
ing. Roberto Gallerani
16
ing. Roberto Gallerani
17
ing. Roberto Gallerani
Una pipeline Pi una sequenza di PR, {PR1, PR2, , PRn} applicata a un set
(corpus) di documenti, al limite anche uno solo. Un PRi generico di una pipeline
pu essere sempre eseguito in modo incondizionato oppure in modo
condizionato al verificarsi di una specifica condizione.
Un progetto applicativo potr prevedere, in generale, la presenza di diverse
pipeline per diverse esigenze di IE. Tuttavia il progetto deve garantire che esse
possano comunque condividere, attraverso i relativi PR, parti in comune: glossari,
grammatiche jape, script groovy ecc. secondo logiche modulari.
Nel progetto si deve inoltre tener conto dei seguenti vincoli:
18
ing. Roberto Gallerani
19
ing. Roberto Gallerani
Il modello statistico generato potr essere applicato dal motore di analisi a documenti
diversi dal campione operando in modalit application
20
ing. Roberto Gallerani
Token
Token
LookupGlossary
LookupGlossary
LookupMorphIt
LookupMorphIt
Caratteristiche
espresso dal valore
della feature
Orth:
lessere maiuscolo
liniziale, interamente
maiuscolo, tutto
minuscolo
Kind:
Lessere un numero, una
parola o un simbolo di
punteggiatura
String:
Il valore della stringa del
token
majorType:
tipologia del glossario
minorType:
sottotipologia del
glossario
Lemma:
Lemma della forma
relativa alla stringa del
token
Morfologia:
Intervallo di
prossimit
[-1,1]
[-2,2]
[-3,3]
[-3,3]
[-3,3]
[-3,3]
[-3,3]
21
ing. Roberto Gallerani
22
ing. Roberto Gallerani
Lapproccio e il metodo
Come in ogni progetto IT assolutamente necessario definire lo scenario duso
dellapplicazione.
23
ing. Roberto Gallerani
24
ing. Roberto Gallerani
Risultati di [PIE]
25
ing. Roberto Gallerani
26
ing. Roberto Gallerani
27
ing. Roberto Gallerani
Esame delle esigenze, valutazione e individuazione delle soluzioni hardware e software per l adaptive enterprise
e la business continuity:
Progetti speciali
Quaderni 17
Analisi e progettazione di sistemi di information extraction basati sullelaborazione del linguaggio naturale (NLP):
ontologie, glossari e grammatiche in ambito rule based, pattern e sequenze di apprendimento per il machine learning,
metodi e tecniche per la valutazione dei risultati
Gestione del progetto software di acquisizione e archiviazione dei dati di esercizio, l'analisi statistica ed il controllo di
macchine per il confezionamento di prodotti nel settore farmaceutico.
Gestione del progetto software di sistemi di supporto alla progettazione ed alla documentazione di componenti per
l'edilizia (dimensionamento strutturale dei componenti, generazione automatica dei disegni esecutivi 2D e della relazione
per il Genio Civile)
Analisi e progettazione del sistema di pianificazione della produzione di una primaria azienda manifatturiera del settore
tessile
17 DICEMBRE 2015
28
ing. Roberto Gallerani