Oggi parliamo di Natural Language Generation, la generazione di linguaggio naturale.
Ti sei mai chiesto come fa ChatGTP a risponderti? Il responsabile delle sue risposte è proprio lâNLG! Si tratta dellâestensione dellâAI che le permette di rispondere in modo esaustivo alle domande degli utenti.
La scorsa volta abbiamo accennato lâargomento mettendo in luce la sua funzione connessa alla comprensione del linguaggio naturale (NLU). Però, come possiamo definire lâNLG in modo piĂš approfondito? A che cosa serve e quali sono i suoi impieghi? Di seguito, rispondiamo a queste domande.
Che cosâè lâNLG?
Il Natural Language Generation è un sottoinsieme dellâNLP. Mentre lâNLP ha il focus sulla comprensione del linguaggio, lâNLG si concentra nella produzione di testo basandosi su alcuni input di dati. Il testo può essere successivamente convertito in un formato vocale attraverso servizi di sintesi vocale. Per esempio, possiamo pensare a un software che ha la capacitĂ di scrivere un articolo, comporre una canzone o di accogliere un utente in un sito tramite chatbot.
Un poâ di storia
Nella seconda metĂ degli anni â60, precisamente nel 1966, Joseph Weizenbaum, scienziato informatico che lavorava per il MIT (Massachusetts Institute of Technology) ha sviluppato ELIZA, un software che faceva la parodia di uno psicoterapeuta rogersiano e, pertanto, capace di comunicare con un essere umano.
Eliza è uno dei primi esemplari di chatbot, anche se senza la parte di intelligenza artificiale. Per rispondere alle domande si basava su pattern e regole prestabilite, senza però comprendere il testo. Eliza, infatti, sostituiva parole chiave in frasi già preparate, oppure modificava la frase di input in output sostituendo solo alcune parole e ripetendo il concetto.
Oggigiorno, invece, le nuove tecnologie, lâAI e le estensioni dellâNLP (NLU e NLG) in particolare, permettono di creare un software sofisticato che risponda in maniera pertinente ed esauriente alle richieste da parte dellâutente. In effetti, negli anni i progetti che utilizzano reti neurali profonde (deep learning) e in special modo le reti neurali ricorrenti (RNN) utilizzate nelle sequenze stanno aumentando esponenzialmente.
Come funziona lâNLG?
LâNLG rispetta delle regole linguistiche inerenti a morfologia, lessico, sintassi e semantica per fornire una risposta appropriata. Potremmo riassumere il suo processo in tre fasi: pianificazione del testo; pianificazione della frase e realizzazione.
Nella prima fase viene creato uno schema e stabilito lâordine delle informazioni del contenuto da formulare. Nella fase di pianificazione della frase vengono inseriti la punteggiatura, i pronomi e le congiunzioni appropriate. Il testo viene quindi suddiviso in paragrafi e frasi. Nella fase di realizzazione viene effettuato un controllo di accuratezza rispetto alle regole che riguardano la grammatica, la punteggiatura e le coniugazioni dei verbi.
In quali ambiti viene impiegato?
Per lo piĂš lâapplicazione dellâNLG riguarda la generazione di testi. Sempre piĂš testate giornalistiche (anche in Italia) stanno iniziando a utilizzare software di AI per creare articoli.
Unâaltra applicazione in forte espansione è lâAI for social good cioè la creazione di strumenti che hanno un risvolto sociale, come la generazione di descrizioni di immagini per ipovedenti.
Unâaltra applicazione molto comune e di cui abbiamo parlato è la chatbot, lâassistente virtuale che usa lâNLG per rispondere allâutente. La chatbot è usata nella traduzione simultanea di un discorso, il cui processo passa dallâascolto del messaggio, alla trasformazione in strutture dati, fino alla comprensione semantica e alla traduzione in unâaltra lingua per, finire con, la generazione del testo tradotto e la trasformazione da testo in lingua parlata.
LâNLG può essere di supporto nella stesura di testi, come nella posta elettronica, perchĂŠ propone frasi in base allo stile di scrittura appreso precedentemente, poichĂŠ apprende le caratteristiche del linguaggio della persona a ogni messaggio.
LâNLG viene utilizzato nellâanalisi e nella descrizione di codice sorgente che consiste nel âtradurreâ il linguaggio di programmazione in linguaggio naturale quindi renderlo comprensibile.
Esiste anche il Natural Language Generation persuasivo, ovvero NLG che genera testi da contenuti ottimizzati con lâobiettivo di persuadere lâutente su un determinato argomento. Per esempio, ChatGTP scrive in modo accattivante e convincente proprio come se lo facesse un essere umano.
Conclusione
Con questo articolo chiudiamo lâargomento NLP e le sue estensioni, NLU e NLG.
Tu cosa ne pensi? Speriamo di aver soddisfatto la tua curiositĂ dandoti informazioni base sullâargomento. Nei seguenti articoli tratteremo la parte della customer care specializzata che dipende da queste branche dellâAI. Al prossimo articolo!