Sei sulla pagina 1di 7

L’elaborazione del linguaggio naturale

• fondamenti teorici dell’intelligenza artificiale:


la capacità di elaborare simboli è alla base del comportamento intelligente.
L’esempio di elaborazione simbolica che in misura maggiore caratterizza gli esseri
umani è senza dubbio il linguaggio verbale.
• comparsa del linguaggio: avvenuta tra 100 e 200 mila anni fa-> salto evolutivo
che ha differenziato l’homo sapiens, la nostra specie, da tutte le altre specie di
ominidi.
• Linguaggio e intelligenza sono fenomeni strettamente interconnessi.
Lo stesso test di Turing assume che un eventuale computer intelligente deve
sapere comunicare mediante il linguaggio naturale, come facciamo noi esseri
umani.
• Sin dalle origini uno degli obiettivi principali dell’intelligenza artificiale e’ stato lo
sviluppo di programmi in grado di produrre e comprendere discorsi in
linguaggio naturale. A dire il vero, i primi passi mossi in questa direzione furono
motivati più da interessi pratici che da stimoli teorici. Infatti, alcuni fra i primi
finanziamenti che arrivarono ai progetti di ricerca nell’allora nascente campo
dell’intelligenza artificiale furono attratti dalla prospettiva di sviluppare dei sistemi
di traduzione automatica tra varie lingue, la cui applicazione commerciale era (ed
è ) evidente.
• Le ricerche sulla elaborazione del linguaggio naturale (natural language
processing) costituiscono uno dei settori di punta dell’intelligenza artificiale ed, in
particolare, della linguistica computazionale.

Grammatiche di Chomsky e
analisi automatica del linguaggio naturale
L’elaborazione automatica del linguaggio naturale prende le
mosse dalla teoria linguistica di Noam Chomsky, una delle
personalità scientifiche più rilevanti del nostro secolo.
Secondo Chomsky la capacità che ogni essere umano ha di
capire e produrre frasi e discorsi nella sua lingua è dovuta ad
un insieme di conoscenze presenti nella sua mente:
definiamo questo insieme di conoscenze implicite
competenza linguistica.
Tale competenza è almeno in parte inconsapevole: infatti la
maggior parte delle persone sono in grado di produrre e
capire le frasi corrette, così come di individuare
immediatamente gli usi scorretti della loro lingua, pur senza
sapere il modo in cui questo avviene.
Inoltre, essa deve essere innata: non si spiegherebbe altrimenti
la velocità con cui un bambino in pochi anni riesca a parlare
una lingua in modo sostanzialmente corretto semplicemente
imitando chi lo circonda.

1
Grammatiche di Chomsky e
analisi automatica del linguaggio naturale
La competenza linguistica, a sua volta, si suddivide in tre componenti:
- competenza fonologica: capacità di un parlante di produrre e capire
i suoni della lingua parlata;
- competenza sintattica: capacità produrre o riconoscere frasi
grammaticalmente corrette;
- competenza semantica: capacità di assegnare o di estrarre
significato dalle frasi.

Tutte queste capacità derivano dalla presenza nelle mente di un insieme di


regole ben precise, che sono simili alle regole di un sistema formale.
Per vari motivi, nella loro teoria della lingua Chomsky e i suoi seguaci hanno
assegnato un ruolo prioritario alla competenza sintattica.
È grazie ad essa che ogni parlante è in grado di percepire immediatamente
che
(a) «il gatto mangia il topo»
è una frase grammaticalmente corretta, mentre
(b) «il gatto topo il mangia»
non lo è.

Grammatiche di Chomsky e
analisi automatica del linguaggio naturale

Questo riconoscimento è determinato dal fatto che nella


formazione di una frase (o nel processo simmetrico di
comprensione di una frase) vengono seguite delle regole
formali che complessivamente costituiscono la
grammatica di una lingua.
Tali regole, che si articolano in diversi gruppi (o componenti),
vengono applicate (non necessariamente in modo
sequenziale) per arrivare alla costruzione di frasi corrette, o
alla verifica di frasi pronunciate da altri parlanti.
Il gruppo principale di regole (o componenti di base) della
teoria chomskiana determina la struttura generale di una
frase e dà conto del fatto che ognuno è in grado di
raggruppare in modo intuitivo le parole che la compongono
in gruppi funzionali detti sintagmi.

2
Le Grammatiche di Chomsky
Def. Una grammatica formale e'
un sistema G = <VT,VN,P,S> caratterizzato da:

VT (Σ) alfabeto finito di simboli detti terminali,

VN alfabeto di simboli non terminali


(variabili, categorie sintattiche),

P, detto insieme di produzioni,


e' una relazione binaria finita su
(VT∪VN)*°VN°(VT∪VN)* × (VT∪VN)*
<α,β>∈P si indica con α→β

S∈VN e' detto assioma.

Le Grammatiche di Chomsky
Esempio. G=<{a,b,c},{S,B,C},P,S>
con P consistente delle seguenti
Def.
produzioni
Il linguaggio generato da
una grammatica e' S → aS
l'insieme delle stringhe S→B
di terminali ottenibili B → bB
con una sequenza
B → bC
finita di passi di
riscrittura consistenti C → cC
nell'applicazione delle C→c
regole di produzione genera
L(G) = {anbmch | n 0, m,h 1}

3
Grammatiche formali o grammatiche a struttura sintagmatica

Le grammatiche a struttura sintagmatica (Phrase Structure


Grammars o PSG's) vennero introdotte da Chomsky per fornire una
classificazione dei linguaggi, preliminarmente alla caratterizzazione
formale del linguaggio naturale.
Una PSG è costituita dalla quadrupla
G = (VT, VN, S, P)
dove
V=

α --> β con α ∈ V+ e β ∈ V*

Grammatiche di Chomsky e
analisi automatica del linguaggio naturale
raggruppare le parole dell’esempio (a) in questo modo:
«Il gatto» - « mangia il topo».

Ma vediamo, attraverso un esempio concreto, la forma che


possono assumere queste regole.

F SN – SV
SN DET – N
SV V – SN
DET il
N gatto, topo
V mangia

4
Grammatiche di Chomsky e
analisi automatica del linguaggio naturale
Così espresse, le regole possono sembrare un po’ oscure. Ma acquistano
subito il loro significato se le interpretiamo in questo modo:
una frase (F – nel nostro eempio, ‘il gatto mangia il topo’) consiste di:
- un sintagma nominale (SN – nel nostro esempio ‘il gatto’) seguito da
- un sintagma verbale (SV, nel nostro esempio ‘mangia il topo’)

un SN (nel nostro esempio ‘il gatto’ oppure ‘il topo’) è costituito da:
- un determinante (DET, nel nostro esempio ‘il’) e da
- un nome (N, nel nostro esempio ‘gatto’ o ‘topo’)

un SV (nel nostro esempio ‘mangia il topo’) è costituito da:


- un verbo (V – nel nostro esempio ‘mangia’) seguito da
- un SN (nel nostro esempio ‘il topo’)

un DET è un elemento del seguente insieme: (il)


un N è un elemento del seguente insieme: (gatto, topo)
un V è un elemento del seguente insieme: (mangia)

Grammatiche di Chomsky e
analisi automatica del linguaggio naturale
• le regole vengono applicate per passi successivi a partire
dalla prima
• alcune regole possono essere applicate più volte se
necessario
• fino ad arrivare a una regola che a destra contenga un
simbolo terminale
Simbolo terminale: un simbolo che non può essere
ulteriormente scomposto

Possiamo verificare senza troppi sforzi che queste regole ci


consentono di generare la frase (a) e non la frase (b).
Per rendercene conto usiamo la classica rappresentazione ad
albero con cui di norma i linguisti rappresentano la struttura
sintagmatica di una frase.

5
Albero di Derivazione
Data una grammatica formale, si dirà che una stringa appartiene al
linguaggio corrispondente se esiste una derivazione nella grammatica dal
simbolo iniziale a quella stringa.
L'ordine di applicazione delle produzioni è irrilevante, mentre è rilevante la
relazione che ogni produzione istituisce fra i simboli.
Per le grammatiche CF e quelle regolari tale relazione è esprimibile
mediante una struttura detta "ad albero".
Data la grammatica G = (V, T, S, P)
l'
albero di derivazione di una stringa si ottiene nel modo seguente:
ogni suo nodo ha un'
etichetta che è un simbolo di V
l'
etichetta della radice è S
ogni nodo non terminale ha un'
etichetta che è in (V -T)
ogni nodo terminale ha un'
etichetta che è in T
se un nodo con etichetta x ha come discendenti diretti, nell' ordine i
nodi con etichetta x 1, .........., xk allora x --> x1 ........xk è in P.

Albero Sintattico

6
Grammatiche formali o grammatiche a struttura sintagmatica

Si dirà, quindi, L (G) il linguaggio generato da G, l'


insieme delle
stringhe su T che possono essere derivate da S in G, cioè
L (G) = ! ∈ ∗, −∗−>

Così, ad esempio, se
VT = {il, cane, gatto, insegue, morde}
VN = {S, NP, VP, Det, N, V}
P = {S --> NP VP, NP --> Det N, VP --> V NP, Det --> il, N -->
cane, N --> gatto, V --> insegue, V --> morde}
Avremo:
L (G) = {il cane rincorre il gatto, il gatto rincorre il cane, il cane
morde il gatto, il gatto morde il cane, il cane rincorre il cane, il
gatto rincorre il gatto, il cane morde il cane, il gatto morde il
gatto}

Grammatiche di Chomsky e
analisi automatica del linguaggio naturale
Non si riesce a generare la frase «il gatto topo il mangia».
Neanche la frase «il gatto il topo mangia», che suona un po’ strana, ma è
comunque ammissibile in italiano.
Alle regole generative del componente di base nelle teoria di Chomsky si
affiancano altre regole che applicate alla frase standard la trasformano in
diversi modi corretti (ad esempio rendono la frase passiva: «Il topo è
mangiato dal gatto»).
Un programma non avrebbe difficoltà ad usare regole come queste per:
- generare frasi o,
- data una frase, analizzarla al fine di ricostruire la sua struttura e
verificare se essa è tra quelle ammesse dalla grammatica: questi
programmi si chiamano parser, o analizzatori sintattici, e sono alla base di
tutti i sistemi di elaborazione del linguaggio naturale.
Se dunque fosse possibile costruire grammatiche generative-
trasformazionali per una data lingua, avremmo un metodo efficiente ed
elegante per realizzare un programma in grado di elaborare almeno la
sintassi di quella lingua.
Tuttavia il compito di costruire queste grammatiche si è rivelato assai più
improbo di quanto Chomsky non ritenesse. Attualmente esistono porzioni
di grammatica abbastanza complete per varie lingue (soprattutto
l’inglese), ma si è lontani dall’obiettivo di una formalizzazione completa.

Potrebbero piacerti anche