Elaborazione del linguaggio naturale - Analisi sintattica

L'analisi sintattica o parsing o l'analisi della sintassi è la terza fase della PNL. Lo scopo di questa fase è trarre il significato esatto, oppure puoi dire il significato del dizionario dal testo. L'analisi della sintassi verifica la significatività del testo rispetto alle regole della grammatica formale. Ad esempio, la frase come "gelato caldo" verrebbe rifiutata dall'analizzatore semantico.

In questo senso, l'analisi sintattica o l'analisi può essere definita come il processo di analisi delle stringhe di simboli in linguaggio naturale conforme alle regole della grammatica formale. L'origine della parola‘parsing’ è dalla parola latina ‘pars’ che significa ‘part’.

Concetto di parser

Viene utilizzato per implementare l'attività di analisi. Può essere definito come il componente software progettato per prendere dati di input (testo) e fornire una rappresentazione strutturale dell'input dopo aver verificato la sintassi corretta secondo la grammatica formale. Costruisce anche una struttura di dati generalmente sotto forma di albero di analisi o albero di sintassi astratto o altra struttura gerarchica.

I ruoli principali dell'analisi includono:

  • Per segnalare eventuali errori di sintassi.

  • Per recuperare da errori che si verificano comunemente in modo che l'elaborazione del resto del programma possa essere continuata.

  • Per creare un albero di analisi.

  • Per creare una tabella dei simboli.

  • Per produrre rappresentazioni intermedie (IR).

Tipi di analisi

La derivazione divide l'analisi nei seguenti due tipi:

  • Analisi dall'alto verso il basso

  • Analisi dal basso verso l'alto

Analisi dall'alto verso il basso

In questo tipo di analisi, il parser inizia a costruire l'albero di analisi dal simbolo di inizio e quindi prova a trasformare il simbolo di inizio nell'input. La forma più comune di analisi topdown utilizza una procedura ricorsiva per elaborare l'input. Il principale svantaggio dell'analisi discendente ricorsiva è il backtracking.

Analisi dal basso verso l'alto

In questo tipo di analisi, il parser inizia con il simbolo di input e cerca di costruire l'albero del parser fino al simbolo di inizio.

Concetto di derivazione

Per ottenere la stringa di input, abbiamo bisogno di una sequenza di regole di produzione. La derivazione è un insieme di regole di produzione. Durante l'analisi, dobbiamo decidere il non terminale, che deve essere sostituito insieme alla decisione della regola di produzione con l'aiuto del quale verrà sostituito il non terminale.

Tipi di derivazione

In questa sezione apprenderemo i due tipi di derivazioni, che possono essere utilizzate per decidere quale non terminale sostituire con la regola di produzione -

Derivazione più a sinistra

Nella derivazione più a sinistra, la forma sentenziale di un input viene scansionata e sostituita da sinistra a destra. La forma sentenziale in questo caso è chiamata la forma sentenziale sinistra.

Derivazione più a destra

Nella derivazione più a sinistra, la forma sentenziale di un input viene scansionata e sostituita da destra a sinistra. La forma sentenziale in questo caso è chiamata la forma sentenziale destra.

Concetto di Parse Tree

Può essere definita come la rappresentazione grafica di una derivazione. Il simbolo iniziale di derivazione funge da radice dell'albero di analisi. In ogni albero di analisi, i nodi foglia sono terminali e i nodi interni non sono terminali. Una proprietà dell'albero di analisi è che l'attraversamento in ordine produrrà la stringa di input originale.

Concetto di grammatica

La grammatica è molto essenziale e importante per descrivere la struttura sintattica di programmi ben formati. In senso letterario, denotano regole sintattiche per la conversazione nelle lingue naturali. La linguistica ha tentato di definire le grammatiche sin dall'inizio delle lingue naturali come l'inglese, l'hindi, ecc.

La teoria dei linguaggi formali è applicabile anche nei campi dell'Informatica principalmente nei linguaggi di programmazione e nella struttura dei dati. Ad esempio, nel linguaggio "C", le regole grammaticali precise stabiliscono come le funzioni vengono create da elenchi e istruzioni.

Un modello matematico di grammatica è stato fornito da Noam Chomsky nel 1956, efficace per la scrittura di linguaggi informatici.

Matematicamente, una grammatica G può essere formalmente scritta come una tupla di 4 (N, T, S, P) dove -

  • N o VN = insieme di simboli non terminali, cioè variabili.

  • T o = set di simboli terminali.

  • S = Simbolo iniziale dove S ∈ N

  • Pdenota le regole di produzione per i terminali e per i non terminali. Ha la forma α → β, dove α e β sono stringhe su V N ∪ ∑ e almeno un simbolo di α appartiene a V N

Struttura della frase o grammatica di circoscrizione

La grammatica della struttura delle frasi, introdotta da Noam Chomsky, si basa sulla relazione di circoscrizione. Ecco perché è anche chiamata grammatica del collegio elettorale. È l'opposto della grammatica delle dipendenze.

Esempio

Prima di dare un esempio di grammatica di collegio, dobbiamo conoscere i punti fondamentali sulla grammatica di collegio elettorale e sulla relazione di collegio.

  • Tutti i quadri correlati visualizzano la struttura della frase in termini di relazione di circoscrizione.

  • La relazione di circoscrizione deriva dalla divisione soggetto-predicato del latino e dalla grammatica greca.

  • La struttura della clausola di base è intesa in termini di noun phrase NP e verb phrase VP.

Possiamo scrivere la frase “This tree is illustrating the constituency relation” come segue -

Grammatica delle dipendenze

È opposto alla grammatica del collegio elettorale e basato sulla relazione di dipendenza. È stato introdotto da Lucien Tesniere. La grammatica delle dipendenze (DG) è opposta alla grammatica dei collegi perché manca di nodi frasali.

Esempio

Prima di fornire un esempio di grammatica delle dipendenze, è necessario conoscere i punti fondamentali sulla grammatica delle dipendenze e sulla relazione di dipendenza.

  • In DG, le unità linguistiche, cioè le parole, sono collegate tra loro da collegamenti diretti.

  • Il verbo diventa il centro della struttura della clausola.

  • Ogni altra unità sintattica è collegata al verbo in termini di collegamento diretto. Queste unità sintattiche sono chiamatedependencies.

Possiamo scrivere la frase “This tree is illustrating the dependency relation” come segue;

L'albero di analisi che utilizza la grammatica del collegio elettorale è chiamato albero di analisi basato sulla circoscrizione; e l'albero di analisi che utilizza la grammatica delle dipendenze è chiamato albero di analisi basato sulle dipendenze.

Grammatica libera dal contesto

La grammatica libera dal contesto, chiamata anche CFG, è una notazione per descrivere le lingue e un superset della grammatica regolare. Può essere visto nel diagramma seguente:

Definizione CFG

CFG consiste in un insieme finito di regole grammaticali con i seguenti quattro componenti:

Set di non terminali

È indicato con V. I non terminali sono variabili sintattiche che denotano gli insiemi di stringhe, che aiutano ulteriormente a definire il linguaggio, generato dalla grammatica.

Set di terminali

È anche chiamato token e definito da Σ. Le stringhe sono formate con i simboli di base dei terminali.

Set di produzioni

È indicato con P. L'insieme definisce come possono essere combinati i terminali e i non terminali. Ogni produzione (P) è composta da non terminali, una freccia e terminali (la sequenza di terminali). I non terminali sono chiamati il ​​lato sinistro della produzione ei terminali sono chiamati il ​​lato destro della produzione.

Simbolo di inizio

La produzione inizia dal simbolo di inizio. È indicato dal simbolo S. Il simbolo non terminale è sempre indicato come simbolo di inizio.