"Colorless green ideas sleep furiously." - Dall'Intelligenza Artificiale al Natural Language Processing

Pagina creata da Valerio Grasso
 
CONTINUA A LEGGERE
"Colorless green ideas sleep furiously." - Dall'Intelligenza Artificiale al Natural Language Processing
“Colorless green ideas sleep furiously.”
  Dall’Intelligenza Artificiale al Natural Language Processing

                                       Matteo Conci
                                       Clara Craffonara
                                       Martina Delladio

           www.pinobruno.it
"Colorless green ideas sleep furiously." - Dall'Intelligenza Artificiale al Natural Language Processing
Talk to ELIZA
I'm unhappy.
Do you believe it is normal to be unhappy?
Yes, sometimes, but not always. I am always unhappy.
Did you come to me because you are always unhappy?
Yes. I want to be happy again.
What would it mean to you if you got to be happy again?
It would be great. I would live my life with a new motivation.
Can you elaborate on that?
I would go out with my friends and I maybe find a boyfriend.
You don't seem quite certain.
My father doesn't believe that I find a boyfriend.
I'm not sure I understand you fully.
"Colorless green ideas sleep furiously." - Dall'Intelligenza Artificiale al Natural Language Processing
ELIZA
è una macchina o
 una persona?
"Colorless green ideas sleep furiously." - Dall'Intelligenza Artificiale al Natural Language Processing
   ELIZA è un chatterbot, cioè un programma che
    simula una conversazione con una persona
   programma creato nel 1966 da J. Weizenbaum
   simula una seduta da una psicoterapeuta, dove
    l’utente è il paziente

                  http://www.planet-source-code.com
"Colorless green ideas sleep furiously." - Dall'Intelligenza Artificiale al Natural Language Processing
Test di Turing

   test di intelligenza per
    macchine
   ideato da Alan Turing e
    pubblicato la prima volta
    nel 1950
   l’elaborazione del
    linguaggio naturale non è
    condizione sufficiente e
    nemmeno necessaria per
    l’intelligenza

                                       http://en.wikipedia.org/
"Colorless green ideas sleep furiously." - Dall'Intelligenza Artificiale al Natural Language Processing
Natural Language Processing (NLP)

 settore  di ricerca integrato all'Intelligenza
  Artificiale e alla linguistica computazionale
 si occupa del trattamento automatico del
  linguaggio naturale
 scopo: implementare strumenti informatici
  per analizzare, comprendere e generare
  testi nel linguaggio naturale
"Colorless green ideas sleep furiously." - Dall'Intelligenza Artificiale al Natural Language Processing
Natural Language Understanding
                 (NLU)

 problema   dell’Intelligenza Artificiale
  completo
 richiede conoscenza estesa del mondo e
  una grande capacità di manipolarlo
 differenza profonda tra linguaggio formale di
  programmazione e linguaggio naturale
"Colorless green ideas sleep furiously." - Dall'Intelligenza Artificiale al Natural Language Processing
Un po’ di Linguistica
   Morfologia: parte della Grammatica che studia le forme
    linguistiche, le norme che regolano la struttura, la
    flessione, la composizione e la derivazione delle parole

   Sintassi: studia l'insieme delle relazioni grammaticali tra
    le parole che costituiscono una frase o, in generale,
    un'espressione linguistica di più elementi
   Semantica: studia il linguaggio dal punto di vista del
    significato

   Pragmatica: studia il linguaggio in rapporto all’uso che ne
    fa il parlante
    Esempio: “Sai che ore sono?”
Trasformazione dell’input
  scritto e orale in una
   rappresentazione
    macchina interna
Analisi lessicale
   Nome: DELIMITATORE DI FRASE
   Compito: suddividere un testo in singole frasi
   Osservazioni: non sempre i segni d’interpunzione indicano
    la fine di una frase
    Esempio: “Geom. Rossi”

   Nome: TOKENIZER
   Compito: segmentare un flusso di caratteri in unità minime
    lessicali significative (=parole)
   Osservazioni: una parola non può essere sempre vista
    come la sequenza di caratteri fra due spazi bianchi
    Esempi: “Città del Vaticano”
Analisi grammaticale
   Nome: STEMMER
   Compito: ridurre la forma flessa di una parola al suo
    lemma (=parola scelta per convenzione per rappresentare
    tutte le forme di una flessione)
    Esempio: riduzione di “dormirò” a “dormire”
   Osservazioni: spesso vengono usati dei cosiddetti
    stemmer euristici che eliminano gli elementi lessicali di
    superficie (prefissi e suffissi) al fine di scoprire il tema della
    parola (=parte della parola composta di radice del tema
    più vocale tematica, a esclusione dei suffissi)
    Esempio: riduzione di “addormentato” a “dorm”
Analisi grammaticale

   Nome: PART OF SPEECH TAGGER
   Compito: etichettare ogni parola con la corretta parte del
    discorso
   Osservazioni: frequenti problemi di ambiguità
    Esempio: “Visiting aunts can be a nuisance.”
    “Visiting” deve essere etichettato come verbo o come
    aggettivo?
    Risoluzione dell’ambiguità con regole sintattiche o facendo
    riferimento ad un corpus (=collezione di testi) taggato
    manualmente
Analisi sintattica
   Nome: PARSER
   Compito: costruire la struttura sintattica di una frase per
    verificarne la correttezza;
    indicare quali combinazioni di parti del discorso generano
    strutture sintatticamente corrette

      “Colorless green ideas sleep furiously.”
   usata nel 1957 dal linguista statunitense Noam Chomsky,
    fondatore della grammatica generativo-trasformazionale
   evidenzia la necessità di distinguere sintassi e semantica
   frase sintatticamente corretta, ma priva di significato
Rappresentazioni di strutture sintattiche
 Struttura inscatolata
      (S: (NP: (ADJ: Colorless) (ADJ: green) (N: ideas))
         (VP: (V: sleep) (ADV: furiously))

 Parse tree
SHRDLU
   programma sviluppato da T. Winograd alla fine degli anni ’60
   il nome deriva dalla sequenza ETAOIN SHRDLU, la
    disposizione dei tasti su una macchina Linotype
   l’utente interagisce con un braccio robot all’interno del piccolo
    “blocks world” scrivendo dei comandi
   la comprensione del
    linguaggio naturale da
    parte del programma
    risulta credibile grazie
    alla semplicità del
    mondo in cui opera

                                         http://www.uv.es
Il correttore ortografico
    L’utente inserisce una parola
                Vindiamo
     Il software verifica se essa è Si Il software non
         presente nel dizionario         segnala errori
                          No
  Il software esegue lo stemming
                  (Vind)
   Il software verifica se il tema è
         presente nel dizionario      Si
                      No
 Il software cerca nel dizionario le
          parole con distanza di
        Levenshtein minore e le
           suggerisce all’utente
Il correttore ortografico

La distanza di Levenshtein misura il numero di caratteri
che devo modificare per trasformare una stringa in
un’altra.

     Dist. Levenshtein (CANE, PANE) = 1

     Dist. Levenshtein (CANE, GATTO) = 4
Limiti e problematiche
            dei correttori ortografici

 Quante e quali parole devo inserire nel dizionario?

 In che ordine presentare i suggerimenti?

 Come riconoscere errori ortografici di parole
  singolarmente corrette? (Es. I’m going too sleep.)
La semantica
È la branca della linguistica che si occupa di studiare il
significato delle frasi.

Ad esempio
               Mangio una pesca e una pera

                La pesca del tonno è in crisi

Si riferiscono a due ambiti semantici differenti.

Come facciamo a far capire automaticamente il campo
semantico ad un PC?
La classificazione semantica delle parole

Ad ogni parola viene associato un certo numero di etichette
che ne identificano la semantica.
Es: Espresso {Colazione, Treno, Caffè, Pasto, ... }
Il software analizza le parole contenute in un documento e
cerca l’area semantica d’appartenenza per intersezione.

                Colazione              Trasporti

                                       Treno
            Cappuccino

                            Espresso

                                           Ritardo
              Brioches
Problemi legati a questo tipo di trattazione

È sufficiente un approccio meramente statistico, che non tenga in
considerazione la grammatica?
(Es: Dopo una sana ed abbondante colazione ho preso
l’espresso delle 8. Semantica dell’espresso: colazione)

È possibile catalogare tutte le parole?

Come possiamo trovare una classificazione universale?

Ogni termine usato come “etichetta” è a sua volta
classificabile?
Il filtro web: DansGuardian
        L’
         ’utente chiede una
          pagina al server
        (www.repubblica.it)

       Il proxy la carica al suo
                interno

                                      Se non trova troppe
                                   parole sospette, la pagina
       DansGuardian la legge           viene trasmessa
                                           all’
                                              ’utente

      Se al suo interno ci sono
      troppe parole vietate, la
          pagina non viene
              mostrata
Dimmi chi? e ti rispondo
Servizio della Provincia Autonoma di Trento.
Esegue l’analisi delle domande allo stesso modo di un
chatterbots e fornisce informazioni sull’anagrafe della
pubblica amministrazione trentina (indirizzi, numeri di
telefono, orari).
Basta inviare un sms al 338 8888 188 con la domanda e
il sistema invia la risposta.

Es:
DOMANDA: “A che ora parte un Bus da Trento per Arco
domani?”
RISPOSTA: PART Trento (autostaz.)Ore 6.23 ARR Arco
(autostaz.) ore: 7.25 Tipo: Bus Extraurbano – INFO TEL
0461 821000
Il web semantico

Attraverso dei formati standard l’utente etichetta tutte le
informazioni contenute nel suo sito manualmente e crea
un’ONTOLOGIA, ovvero una serie di regole che leggano
queste etichette e le possano tradurre in testo completo,
secondo una gramamtica semplice e strutturata.

E’ in questo modo possibile che da frasi come:
Giorgio Napolitano, Presidente della Repubblica, vive a Roma

Si estraggano informazioni in linguaggio naturale:
Giorgio Napolitano è il Presidente della Repubblica
Il presidente della repubblica vive a Roma
Talk to ELIZA
asdjas maybe djskal djsakd
Can't you be more positive?

no. thfd dfladf dark and negative
You are being a bit negative.

dnaskd you djaksdj djaskfjhvd

You're not really talking about me, are you?

the color of dkas is green

That is quite interesting.

I want to be fdskafa again
What if you never got to be fdskafa again?

all the adhfakdf are dkfsfe

What does that suggest to you?
Conclusioni

   ELIZA non capisce il linguaggio naturale
   anche i chatterbots di ultima generazione non
    sono in grado di capire il linguaggio naturale
   non esistono per il momento applicazioni che
    riescano a trattare in modo completo un testo
    qualsiasi
   sono stati fatti grandi passi avanti nel
    delineare i vari problemi che ci sono nel
    trattamento automatico del linguaggio naturale
Conclusioni

   la ricerca nel settore del NLP diventa sempre
    più importante
     –   traduzione automatica di testi di vario genere
     –   riassunto di articoli e altri testi
     –   ricerca più veloce ed efficace di informazioni nel
         web
   sono stati finanziati grandi progetti
   “We can only see a short distance ahead, but
    we can see plenty there that needs to be
    done." A. Turing
Riferimenti bibliografici

   Jackson P., I. Moulinier, Natural Language Processing
    for Online Applications, John Benjamins Publishing
    Company, Amsterdam/Philadelphia, 2002
   http://www.mondodigitale.net
   http://en.wikipedia.org/wiki/
   http://dizionari.corriere.it/dizionario_italiano
   http://www.manifestation.com/neurotoys/eliza.php3
Puoi anche leggere