NLP

  • Home
  • Applicativi adottati
  • NLP

NLP

Maturità tecnologica NLP

L'elaborazione del linguaggio naturale (in inglese: natural language processing, in acronimo: NLP) è il processo di trattamento automatico mediante un calcolatore elettronico delle informazioni scritte o parlate in una specifica lingua.

Questo processo è reso particolarmente difficile e complesso a causa delle caratteristiche intrinseche di ambiguità del linguaggio umano. Per questo motivo il processo di elaborazione viene suddiviso in fasi diverse, tuttavia simili a quelle che si possono incontrare nel processo di elaborazione di un linguaggio di programmazione:

  • analisi lessicale (scomposizione di un'espressione linguistica in parole),
  • analisi grammaticale (associazione delle parti del discorso a ciascuna parola nel testo),
  • analisi sintattica (arrangiamento delle parole in una struttura sintattica, tipicamente strutturata ad albero),
  • analisi semantica (assegnazione di un significato alla struttura sintattica e, di conseguenza, all'espressione linguistica).

L’assessment delle tecnologie NLP si può formulare con riferimento al documento del JRC (Joint Research Council) dell’Unione Europea dal titolo “AI Watch Assessing Technology Readiness Levels for Artificial Intelligence”. In generale dal documento si trae la conclusione che le tecnologie di intelligenza artificiale presentano una maturità tecnologica tanto più elevata quanto più ristretto e specializzato è il dominio applicativo. L’ideale dunque è quello di avere domini applicativi ben definiti, esattamente come nel caso dell’applicazione che si propone.
Nel caso specifico la tecnologia da impiegate è quella di estrazione di entità e relazioni da testo libero. Per questa tipologia di problemi che possono essere risolti impiegando tecnologie software open source per il machine learning, l’aspetto di customizzazione più rilevante è quello della creazione di un “corpus”, cioè del training set per sistemi supervisionati di intelligenza artificiale (AI, Artificial Intelligence) per NLP, costituito un insieme di documenti in linguaggio naturale dotati delle delle rispettive etichette, o annotazioni, la cui estensione sia sufficiente per addestrare un sistema di AI con il necessario livello di precisione. Qualora la disponibilità documentale che si riesca ad ottenere nel corso del progetto non sia statisticamente rilevante, e in ogni caso allo scopo di includere conoscenza generale pregressa sullo specifico dominio applicativo, sarà sviluppato anche un approccio rule based (dunque di tipo “deduttivo” e non “induttivo”).

La maturità tecnologica necessaria all’applicazione dunque sarà raggiunta attraverso le attività di raccolta di un corpus documentale e di definizione di un’ontologia per il dominio applicativo. Le tecnologie di machine learning e classificazione impiegate nel progetto saranno invece quelle disponibili in librerie open source. In particolare come database semantico lessicale si intende utilizzare ItaWordNet (frutto di un progetto del CNR). Come corpus linguistici annotati si prenderanno in considerazione, tra gli altri, MorphIt!, La Repubblica, itWaC (Italian Web-as-Corpus), I-CAB (Italian Content Annotation Bank), ISST (Italian Sintactic-Semantic Treebank). Come tecnologie NPL si prenderanno in considerazione le librerie Python Natural Language Toolkit (NLTK), SpaCy, PyTorch-NLP e i tool Java OpenNLP, StanfordNLP, CogCompNLP. Queste librerie sono ad oggi ampiamente utilizzate anche in molte applicazioni industriali. L’obiettivo di progetto per questa funzionalità è raggiungere almeno un TRL pari a 6 partendo da un TRL pari a 3.
Awesome Image

About Us

We must explain to you how all seds this mistakens idea off denouncing pleasures and praising pain was born and I will give you a completed accounts off the system and

Get Consultation

Contact Us