Usare la Google Cloud Platform per l'elaborazione del Linguaggio Naturale

Usare la Google Cloud Platform per l'elaborazione del Linguaggio Naturale

GDG DevFest Bari 2016

6abf1a7b548d98baf44724ae50c84bc7?s=128

Francesco Marchitelli

November 29, 2016
Tweet

Transcript

  1. 2.

    Natural Language Processing Natural Language Processing (NLP) è il trattamento

    informatico (computer processing) del linguaggio naturale, per qualsiasi scopo, indipendentemente dal livello di approfondimento dell’analisi. Per linguaggio naturale si intende la lingua che usiamo nella vita di tutti i giorni, come l’Inglese, l’Italiano, ed è sinonimo di linguaggio umano, principalmente per poterlo distinguere da altri linguaggi, come ad esempio il linguaggio dei computer.
  2. 3.

    Fasi di NLP L'approccio classico all'analisi del testo scritto è

    quello di dividere il processo in tre fasi distinte che comunichino tra loro in maniera pipelinizzata: ➢ analisi lessicale ➢ analisi sintattica ➢ analisi semantica L’analisi semantica include il named entity recognition (NER) e il named entity linking (NEL)
  3. 4.

    L'analisi lessicale prevede: • Sentence Splitting: la divisione di un

    testo in frasi; • Tokenization: la divisione di una frase in token; • Part of Speech (PoS) tagging: l'identificazione del ruolo lessicale che i token ricoprono nella frase (nomi, verbi, avverbi, aggettivi, etc.); • Morph splitting: l'identificazione della radice o stemma da cui ogni token deriva e il suo lemma. Analisi lessicale: le fasi
  4. 5.

    Information Extraction Il sistema di Information Extraction, data una selezione

    di documenti e dato un formato di risposta, cerca di estrarre in modo strutturato l’informazione rilevante secondo le esigenze fornite in input.
  5. 6.

    Information Retrieval L’enfasi di un sistema di IR è trovare

    documenti che già contengono la risposta alla domanda formulata dell'utente: data una collezione di documenti, il sistema di Information Retrieval che riceve in input una query (set di parole chiave) seleziona un sottoinsieme di documenti che ritiene rilevanti per la query. L’utente poi navigherà la lista di documenti e cercherà l’informazione che più gli interessa.
  6. 7.

    Stato dell’arte Approcci per l’estrazione della conoscenza ➢ Regole Simboliche

    ◦ Cyc (Lenat, 2001) ➢ Crowdsourcing ◦ Open Mind (Singh, 2002) ◦ GWAP: Game with a Purpose (Ahn, 2006) ➢ Machine Learning ◦ Stanford NER (McCallum and Pereira, 2001) (Sutton and McCallum, 2006) (Sutton and McCallum 2010) ◦ Polyglot NER (Al-Rfou , 2015)
  7. 8.

    Machine Learning Studio, Costruzione e Combinazione di algoritmi per automatizzare

    lo svolgimento di compiti e la risoluzione di problemi. Ha forti legami teorici con la statistica computazionale; spesso in ambito industriale è noto come predictive analytics o predictive modelling. La distinzione più importante all'interno dei metodi di Machine Learning è fra algoritmi di apprendimento supervisionati e non supervisionati.
  8. 9.

    Apprendimento Supervisionato Tecnica di apprendimento automatico che mira a istruire

    un sistema informatico in modo da consentirgli di risolvere dei compiti in maniera autonoma sulla base di una serie di esempi ideali, costituiti da coppie di input e di output desiderati, che gli vengono inizialmente forniti.
  9. 10.

    Esempi Apprendimento Supervisionato ➢ Classificazione Automatica: assegnare in modo automatico

    ai documenti in input le categorie definite dall'utente, in base alle somiglianza con gli esempi di documenti classificati a mano precedentemente; ➢ NER, con particolare attenzione alla disambiguazione di un’entità; ➢ Text to Speech Translation; ➢ Modelli di regressione e di causalità: rappresentano legami fra testo e altre variabili.
  10. 11.

    Apprendimento non Supervisionato Tecnica di apprendimento automatico che consiste nel

    fornire al sistema informatico una serie di input (esperienza del sistema) che egli riclassificherà ed organizzerà sulla base di caratteristiche comuni per cercare di effettuare ragionamenti e previsioni sugli input successivi. Al contrario dell'apprendimento supervisionato, vengono forniti all'apprendista solo esempi non annotati, in quanto le classi non sono note a priori ma devono essere apprese automaticamente.
  11. 12.

    Cluster Analysis • L'obiettivo è fornire una classificazione informativa di

    un insieme di elementi (documenti o clienti di un'azienda) senza che le informazioni su questa classificazione siano già note. • Affronta il problema di estrarre pattern o schemi ricorrenti nei dati. • I risultati di una procedura non supervisionata possono essere definitivi oppure fornire un punto di partenza (pre-elaborazione) per analisi più sofisticate.
  12. 13.

    ➢ Maggiore efficacia della ricerca, grazie a tecniche NLP che

    consentono di cercare parole chiave per forme varianti (forme non standard, singolari/plurali, sinonimie, ecc.); ➢ Aumento della trovabilità attraverso un sistematico utilizzo di suggerimenti e auto-completamenti basati sul vocabolari di dominio; ➢ Discovery dei contenuti per far emergere contenuti altrimenti nascosti nella mole dei dati non strutturati; ➢ Linking tra testo, concetti e entità, per arricchire i documenti con informazioni enciclopediche e relazioni tra i concetti coinvolti; ➢ Navigazione tra i contenuti in una forma comprensibile e accattivante per l’utente. I vantaggi dell’approccio semantico