La disambiguazione del senso della parola (WSD) è alla base dei programmi software progettati per interpretare il linguaggio. Le parole o le frasi ambigue possono essere intese in molti modi, anche se si intende un solo significato. La disambiguazione cerca di decifrare il significato inteso di parole e frasi. Quest’area è estremamente impegnativa per i programmatori incaricati di progettare interfacce accurate per colmare il divario tra la lingua parlata e scritta e le traduzioni generate al computer.
Il software progettato per convertire il parlato in testo può “ascoltare” un utente che parla in un microfono e tradurre le parole pronunciate in frasi digitate. L’utente detta la punteggiatura, inserendo parole come “virgola” e “punto” ove appropriato. Sembra abbastanza semplice, tranne per il fatto che molte parole suonano esattamente uguali.
Ad esempio, so e no o io e occhio sono foneticamente indistinguibili. La disambiguazione del senso delle parole aiuta a tradurre correttamente “Dovrei saperlo entro la prossima settimana”, utilizzando quello che è fondamentalmente un insieme di regole “se, allora” che prendono in considerazione il posizionamento delle parole e le parole adiacenti come indicatori della parola prevista. Questo tipo di disambiguazione del senso delle parole è noto come “approccio superficiale” ed è abbastanza accurato, ma non sempre si può fare affidamento su di esso.
Un altro approccio consiste nell’applicare la “conoscenza mondiale” o ciò che la linguistica informatica chiama “approccio profondo”. Questo approccio si basa su lessici come dizionari e thesaurus per aiutare a determinare il senso proprio di una parola. Sfortunatamente, progettare un database di approccio profondo che sia sufficientemente completo da fornire una migliore precisione rispetto all’approccio superficiale non è un compito facile.
Il software che legge il testo ad alta voce (text-to-speech) richiede anche la disambiguazione del senso delle parole. La parola basso, ad esempio, potrebbe significare uno strumento musicale, una nota o un pesce. In quest’ultimo caso si pronuncia diversamente, lasciando a WSD il compito di dedurre quale pronuncia usare. Se la frase digitata è “The bass is heavy”, solo una scansione delle frasi circostanti potrebbe rivelare indizi, come trovare le parole “fishing”, “boat”, “dock” o, al contrario, “band”, ” musica” o “canzone”. Se la disambiguazione del senso della parola del programma non è sufficientemente robusta o se mancano ulteriori indizi, il programma può commettere errori di traduzione.
Oltre alle regole del “se, allora” dell’approccio superficiale, vengono utilizzati anche algoritmi per determinare le interpretazioni corrette. Nell’esempio sopra, un algoritmo potrebbe trovare parole chiave in tutto il documento che indicano chiaramente un’interpretazione musicale, o viceversa. Nella WSD vengono utilizzati anche altri approcci che sono fondamentalmente perfezionamenti o estensioni di questi approcci di base.
La disambiguazione del senso delle parole è anche vitale nelle interfacce di comando verbali progettate per sostituire la tastiera, non solo per trasmettere semplici comandi del sistema operativo, ma in attività così complesse come la ricerca sul Web. Altre aree in cui il WSD svolge un ruolo includono lo sviluppo del Web semantico e modelli di intelligenza artificiale migliorati. In effetti, qualsiasi area della scienza che si basa su un ponte linguistico tra uomo e macchina utilizzerà la disambiguazione del senso delle parole.