



Studia grazie alle numerose risorse presenti su Docsity
Guadagna punti aiutando altri studenti oppure acquistali con un piano Premium
Prepara i tuoi esami
Studia grazie alle numerose risorse presenti su Docsity
Prepara i tuoi esami con i documenti condivisi da studenti come te su Docsity
Trova i documenti specifici per gli esami della tua università
Preparati con lezioni e prove svolte basate sui programmi universitari!
Rispondi a reali domande d’esame e scopri la tua preparazione
Riassumi i tuoi documenti, fagli domande, convertili in quiz e mappe concettuali
Studia con prove svolte, tesine e consigli utili
Togliti ogni dubbio leggendo le risposte alle domande fatte da altri studenti come te
Esplora i documenti più scaricati per gli argomenti di studio più popolari
Ottieni i punti per scaricare
Guadagna punti aiutando altri studenti oppure acquistali con un piano Premium
riassunto corso linguistica computazionale
Tipologia: Appunti
1 / 7
Questa pagina non è visibile nell’anteprima
Non perderti parti importanti!




Storia dell’elaborazione del linguaggio naturale
Nel 1939 durante la Seconda Guerra Mondiale un team di scienziati,matematici ed ingegneri si riunì fuori Londra per discutere dello sviluppo di macchine che decriptavano il codice segreto usato dalla macchina nazista Enigma per comunicare tra i vari reparti. Il matematico Turing affermò di voler inventare una macchina universale,la famosa “ Macchina di Turing ”. Secondo la sua idea questa macchina doveva avere una struttura fissa che usando istruzioni e dati codificati,inseriti nella sua memoria,potesse svolgere qualsiasi compito algoritmico ,dal cambiare da macchina dedicata ad un compito,ad esempio di calcolatrice,ad una macchina dedicata ad un compito di editor di testo.
Inizialmente per decifrare i codici delle macchine tedesche sempre più innovative,come la Fish,Turing,insieme a Newman e Wymm-Williams produsse la Heath Robinson che riusciva a leggere 2000 caratteri al secondo,dimostrando che i dispositivi elettronici ad alta velocità potevano svolgere con successo questo tipo di azioni. In poco tempo però la Heath Robinson diventò obsoleta e così ci fu l’esigenza di costruire una macchina ancora più grande,veloce e potente. Flowers ispirandosi ai lavori di Turing con la Heath Robinson costruì il Colossus :la prima versione leggeva 5000 caratteri al secondo,la seconda invece 25000 caratteri al secondo perché riusciva ad eseguire diverse operazioni in parallelo disponendo inoltre di una memoria a breve termine.
Successivamente Turing e Newman lavorarono per la costruzione del computer avanzato chiamato Pilot ACE (Pilot Automatic Computing Engine) proponendo il concetto di Programma Memorizzato che consisteva in un programma residente all’interno del computer che rendeva possibile l’utilizzo simultaneo di programmi e dati attraverso un unico dispositivo di input.
Durante la Guerra Fredda,la paura di una guerra nucleare e delle spie sovietiche scatenò l’esigenza dell’Elaborazione del Linguaggio Naturale(NLP),un processo di trattamento automatico delle informazioni attraverso un calcolatore elettronico ,iniziata con la traduzione della lingua russa,sia scritta che parlata,utilizzando un algoritmo capace di tradurre i testi molto velocemente e soprattutto con una bassa percentuale di errori ,senza ricorrere quindi ad operazioni di editing(correzione umana). La prima traduzione automatica avvenne nella dimostrazione di Georgetown nel 1954 in cui furono convertiti più di 60 dichiarazioni russe in inglese,utilizzando il computer matematico,poi trasformato in traduttore elettronico, IBM 701 ,che era composto da un nastro con i numeri di codice russi alimentato nella macchina a cui corrispondevano numeri di codice inglesi. Nel 1966 però l’ALPAC(Comitato consultivo per l’elaborazione del
linguaggio) fermò le ricerche sulla traduzione automatica perché il progresso era stato lento e la macchina di traduzione era molto costosa: l’errore fu quello di concentrarsi solo su traduzioni utili alle agenzie governative ignorando l’utilità che essa potesse avere in altri ambiti. Questa ristrettezza fu il motivo principale che portò al fallimento del primo tentativo della macchina di traduzione automatica.
Solo verso gli anni ’80 un gruppo di statistici guidati da Jelinek pensarono di utilizzare la statistica e la probabilità per elaborare il linguaggio,favoriti dalla diffusione di computer più potenti che permettevano la creazione di programmi come l’IA(Intelligenza Artificiale) che poteva simulare la conversazione naturale umana.
Problemi di comprensione del linguaggio naturale da parte del computer
Esistono diversi motivi per cui la ricerca con l’utilizzo del linguaggio naturale potrebbe non funzionare:
1 Molti provider di ricerca si basano su un tipo di ricerca incentrato su “espansione semantica” ,ovvero tramite parole chiave ,prendendo le parole che gli utenti digitano e facendo uso di un dizionario,o di un corpus linguistico,espandendo la query di ricerca dell’utente ad una query di ricerca più lunga ed avanzata. Ad esempio se viene digitato “assicurazione per un Doberman” l’espansione semantica invierebbe al motore di ricerca “Polizza o società di assicurazione” e “Doberman o Boxer o Bulldog” e si potrebbe facilmente ottenere come risultato “Senatore Boxer”.
2 Le società di informatica che rielaborano le informazioni come Autonomy, dichiarano che il loro motore di ricerca si basa sulla statistica secondo cui se due parole si trovano in determinati testi,le due parole sono collegate tra loro. Così nel momento in cui cerchiamo una delle due parole,troveremo anche l’altra,con la possibilità di ottenere come risultato di ricerca un’informazione che non ci interessa.
3 Quando si digita una frase che contiene una parola che si può riferire ad un contesto come ad un altro,la ricerca porterà i risultati di entrambi i riferimenti indipendentemente da quale risultato si vuole ottenere. Per evitare questo tipo di problema è consigliato inserire un “tag”,un identificatore,una parola chiave o un termine associato che descrive l’oggetto rendendo possibile la classificazione.
4 Molti produttori suggeriscono di utilizzare l’NLP per implementare le chatbots ,che sono dei software progettati per simulare conversazioni intelligenti con esseri umani tramite l'uso della voce o del testo,che attraverso sofisticati sistemi di elaborazione del linguaggio e scansione delle parole chiave formano la “ proprietà di conoscenza ”. Col tempo quindi la chatbot prende vita,il contenuto del sito cambia e gli utenti pongono altri tipi di domande.
staff collabora a stretto contatto col vecchio staff in modo da imparare passo per passo e in maniera più attiva il migliore approccio al lavoro.
Elaborazione linguaggio naturale e Linguistica
La comprensione del linguaggio naturale si basa sulla Linguistica Computazionale (collegata con Linguistica generale e Linguistica applicata).
La Linguistica Generale studia la struttura generale delle varie lingue naturali,scopre le leggi del loro funzionamento e si divide in: fonologia (i suoni del parlato); morfologia (struttura interna delle singole parole e leggi che regolano la formazione delle parole); sintassi (struttura frasi e leggi che regolano le connessioni tra le parole); semantica (significato parole e testi); pragmatica (ragioni per cui sono prodotte frasi e testi in determinati contesti).
La Linguistica Applicata studia l’utilizzo delle regole di linguistica generale per la diffusione pratica.
Linguistica Computazionale
La Linguistica Computazionale è la scienza che si concentra sullo sviluppo di programmi informatici per l’elaborazione automatica del linguaggio(parole e testi) naturale ,quindi i fenomeni presi in esame,riguardanti la linguistica generale,sono molto variabili essendo la lingua un oggetto variabile,il cui studio ha visto formarsi diversi tipi di approcci. Saussure considerava il linguaggio naturale come una struttura di elementi correlati ,per cui l’ordine delle parole in una frase era lo strumento per riconoscere gruppi di parole e le strutture di una frase. Il suo approccio fu definito Strutturalismo.
Chomsky
Un contributo importante per lo sviluppo di teorie che analizzavano meglio la struttura e le caratteristiche della lingua fu dato dal linguista americano Chomsky che sostiene che per poter comprendere il funzionamento di una lingua non è sufficiente descriverne la struttura,i componenti e i rapporti che intercorrono tra essi. Lo strutturalismo,secondo Chomsky non analizza come i parlanti sono in grado di produrre e di comprendere frasi che non hanno mai udito prima,ed egli afferma che esiste una creatività del linguaggio secondo cui si generano nuove frasi. Per cui la capacità linguistica che ciascun parlante possiede non è riducibile alla meccanicità delle regole grammaticali:la grammatica è solo una conoscenza innata che permette di generare infinite frasi a seconda di come combiniamo le parole. Questa teoria fu definita innatismo del linguaggio.
La grammatica generativa di Chomsky produce stringhe di simboli e gruppi di queste stringhe sono definite lingue formali. La derivazione di una frase da una Grammatica libera dal contesto può essere descritta da un albero sintattico dove la frase non è semplicemente una stringa di parole,ma un albero con rami subordinati e connessi a dei nodi. Nella frase “Il cane mangia l’osso” l’albero si sviluppa in:
Frase (Il cane mangia l’osso) >
Sintagma Nominale (Il cane) e Sintagma Verbale (mangia l’osso);
Sintagma Nominale >
Determinante (Il) e Sostantivo (cane);
Sintagma Verbale >
Verbo (mangia) e Sintagma Nominale2 (l’osso);
Sintagma Nominale2 >
Determinante2 (l’) e Sostantivo2 (osso).
Questa è una struttura nidificata di una frase che suddivide la frase in pezzi sempre più piccoli e così via dove simboli vengono definiti non-terminali perché nello sviluppo dell’albero vengono sostituiti con un’altra stringa di simboli non-terminali. Chomsky propose la Grammatica trasformazionale ,cioè un insieme di regole che danno vita a inserimenti,modifiche e cambiamenti grammaticali passando da una frase affermativa alla costruzione di una frase interrogativa o negativa,o da una frase in forma attiva ad una in forma passiva.
Classificazione sistemi linguistici applicati
Gli scopi per lo sviluppo della linguistica computazionale sono diversi e sono già state sviluppate diverse applicazioni relative alla preparazione o correzione del testo:
Sillabazione Automatica delle parole (Microsoft Word ha nel suo menù la voce Sillabazione),
Controllo Ortografico (errori di battitura e di sincronizzazione delle dita. Quando si digita una parola appartenente ad un’altra lingua naturale ed è identificata dal correttore,l’utente può correggere manualmente),
Controllo Grammaticale (Difficoltà quando le parole che devono accordarsi si trovano in punti distanti della frase. Il correttore grammaticale di Microsoft Word è utile ma ancora imperfetto),
Informazione per fornire accesso a pubblicazioni,libri ed altri documenti e anche noi attuiamo questo processo quando facciamo una ricerca sul web o quando controlliamo l’e-mail. Lo scopo dell'IR è garantire all’utente,in seguito ad una sua ricerca,i documenti e le informazioni che rispondono alla sua richiesta. I concetti fondamentali per analizzare un sistema di IR sono:
Le Query "interrogazioni" ,sono stringhe di parole-chiavi rappresentanti l'informazione richiesta ;vengono digitate dall’utente in un sistema IR(es. motore di ricerca) e sono la concretizzazione del reale bisogno informativo dell'utente.
Un Oggetto è un'entità che possiede informazioni le quali potrebbero essere risposta dell'interrogazione dell'utente. Un documento di testo,per esempio,è un oggetto di dati.
Nel momento in cui un utente intende usare un qualsiasi sistema di reperimento dell'informazione(per esempio,un motore di ricerca)per acquisire informazioni su un determinato argomento,questi deve tradurre tale necessità in una Query; il sistema di IR ha il compito di restituire,a partire da essa,tutti i documenti rilevanti alla richiesta effettuata.
Ci sono molti modi per misurare quanto l'informazione intesa si associa bene all'informazione recuperata:
Precisione (La precisione può essere vista come una misura di esattezza o fedeltà ).
Recupero/richiamo (mentre il recupero è una misura di completezza ).