Riassunto del testo nell'elaborazione del linguaggio naturale: algoritmi, tecniche e sfide
Pubblicato: 2020-08-07La creazione di un riepilogo da un determinato contenuto è un processo molto astratto a cui tutti partecipano. L'automazione di un tale processo può aiutare ad analizzare molti dati e aiutare gli esseri umani a utilizzare meglio il loro tempo per prendere decisioni cruciali. Con l'enorme volume di media là fuori, si può essere molto efficienti riducendo la confusione attorno alle informazioni più critiche. Abbiamo già iniziato a vedere riepiloghi di testo sul Web che vengono generati automaticamente.
Se frequenti Reddit, potresti aver visto che il "bot Autotldr" aiuta regolarmente i Reddit riassumendo gli articoli collegati in un determinato post. È stato creato solo nel 2011 e ha già risparmiato migliaia di ore-persona. Esiste un mercato per riepiloghi testuali affidabili, come dimostrato da una tendenza di applicazioni che fanno proprio questo, come Inshorts (riassunto delle notizie in 60 parole o meno) e Blinkist (riassunto dei libri).
La sintesi automatica del testo , quindi, è una frontiera entusiasmante ma impegnativa nell'elaborazione del linguaggio naturale (NLP) e nell'apprendimento automatico (ML). Gli attuali sviluppi della sintesi automatica del testo sono dovuti alla ricerca in questo campo sin dagli anni '50, quando fu pubblicato l'articolo di Hans Peter Luhn intitolato "La creazione automatica di abstract di letteratura".
Questo documento ha delineato l'uso di funzioni come la frequenza delle parole e delle frasi per estrarre frasi essenziali da un documento. Questa è stata seguita da un'altra ricerca critica condotta da Harold P Edmundson alla fine degli anni '60, che ha evidenziato la presenza di parole chiave, parole usate nel titolo che appaiono nel testo e la posizione delle frasi per estrarre frasi significative da un documento.
Ora che il mondo ha fatto passi da gigante nell'apprendimento automatico e nella pubblicazione di nuovi studi sul campo, il riepilogo automatico del testo è sul punto di diventare uno strumento onnipresente per interagire con le informazioni nell'era digitale.
Da leggere: Stipendio dell'ingegnere NLP in India

Esistono principalmente due approcci principali alla sintesi del testo nella PNL
Sommario
Riassunto del testo in PNL
1. Riepilogo basato sull'estrazione
Come suggerisce il nome, questa tecnica si basa semplicemente sull'estrazione o sull'estrazione di frasi chiave da un documento. Viene quindi seguita dalla combinazione di queste frasi chiave per formare un riassunto coerente.
2. Riassunto basato sull'astrattismo
Questa tecnica, a differenza dell'estrazione, si basa sulla capacità di parafrasare e accorciare parti di un documento. Quando tale astrazione viene eseguita correttamente nei problemi di apprendimento profondo, si può essere sicuri di avere una grammatica coerente. Ma questo ulteriore livello di complessità ha il costo di essere più difficile da sviluppare rispetto all'estrazione.
C'è un altro modo per creare riepiloghi di qualità superiore. Questo approccio è chiamato sintesi assistita, che comporta uno sforzo umano e software combinato. Anche questo è disponibile in 2 gusti diversi
- Riepilogo umano assistito da macchine : le tecniche estrattive evidenziano i passaggi candidati da includere, che l'umano può aggiungere o rimuovere del testo.
- Riepilogo macchina assistita dall'uomo: l'essere umano modifica semplicemente l'output del software.
Oltre ai principali approcci per riassumere il testo, ci sono altre basi su cui sono classificati i riassunti del testo. Le seguenti sono quelle teste di categoria:
3. Riepilogo singolo e multi-documento
I singoli documenti si basano sulla coesione e sulla rara ripetizione dei fatti per generare sintesi. I riepiloghi multi-documento, d'altra parte, aumentano la possibilità di informazioni e ricorrenze ridondanti.
4. Indicativo vs. informativo
La tassonomia dei riepiloghi si basa sull'obiettivo finale dell'utente. Ad esempio, nei riepiloghi di tipo indicativo, ci si aspetterebbe punti di alto livello di un articolo. Considerando che, in una panoramica informativa, ci si può aspettare un maggiore filtraggio degli argomenti per consentire al lettore di approfondire il riepilogo.
5. Lunghezza e tipo del documento
La lunghezza del testo di input influenza pesantemente il tipo di approccio alla sintesi.
I più grandi set di dati di riepilogo, come la redazione di Cornell, si sono concentrati su articoli di notizie, che sono in media di circa 300-1000 parole. I riassuntivi estrattivi trattano relativamente bene tali lunghezze. Un documento di più pagine o un capitolo di un libro può essere riassunto adeguatamente solo con approcci più avanzati come il raggruppamento gerarchico o l'analisi del discorso.
Inoltre, il genere del testo influenza anche il riassunto. I metodi che riassumerebbero un white paper tecnico sarebbero radicalmente diversi dalle tecniche che potrebbero essere meglio attrezzate per riassumere un rendiconto finanziario.
In questo articolo, ci concentreremo su ulteriori dettagli della tecnica di riepilogo dell'estrazione.
Algoritmo di PageRank
Questo algoritmo aiuta i motori di ricerca come Google a classificare le pagine web. Comprendiamo l'algoritmo con un esempio. Supponiamo di avere quattro pagine Web con diversi livelli di connettività tra di loro. Uno potrebbe non avere collegamenti con gli altri tre; uno può essere connesso all'altro 2, uno può essere correlato ad uno solo, e così via.
Possiamo quindi modellare le probabilità di navigare da una pagina all'altra utilizzando una matrice con n righe e colonne, dove n è il numero di pagine web. Ogni elemento all'interno della matrice rappresenterà la probabilità di transizione da una pagina web all'altra. Assegnando le giuste probabilità, è possibile aggiornare iterativamente tale matrice per arrivare a una classifica di una pagina web.
Leggi anche: Progetto e argomenti NLP
Algoritmo TextRank
Il motivo per cui abbiamo esplorato l'algoritmo PageRank è mostrare come lo stesso algoritmo può essere utilizzato per classificare il testo anziché le pagine web. Questo può essere fatto cambiando prospettiva sostituendo i collegamenti tra le pagine con la somiglianza tra le frasi e usando la matrice di stile PageRank come punteggio di somiglianza.
Implementazione dell'algoritmo TextRank
Biblioteche richieste
- Numby
- Panda
- Ntlk
- Rif
Di seguito è riportata una spiegazione del codice alla base della tecnica di riepilogo dell'estrazione:
Passo 1
Concatena tutto il testo che hai nel documento di origine come un blocco di testo solido. Il motivo per farlo è fornire condizioni in modo da poter eseguire il passaggio 2 più facilmente.
Passo 2
Forniamo condizioni che definiscono una frase come la ricerca di segni di punteggiatura come punto (.), punto interrogativo (?) e un punto esclamativo (!). Una volta ottenuta questa definizione, dividiamo semplicemente il documento di testo in frasi.
Passaggio 3
Ora che abbiamo accesso a frasi separate, troviamo le rappresentazioni vettoriali (incorporamenti di parole) di ciascuna di queste frasi. È ora che dobbiamo capire cosa sono le rappresentazioni vettoriali. Gli incorporamenti di parole sono un tipo di rappresentazione di parole che fornisce una descrizione matematica di parole con significati simili. In realtà, questa è un'intera classe di tecniche che rappresentano le parole come vettori con valori reali in uno spazio vettoriale predefinito.

Ogni parola è rappresentata da un vettore a valori reali che ha molte dimensioni (oltre 100 a volte). La rappresentazione della distribuzione si basa sull'uso delle parole e, quindi, consente alle parole usate in modi simili di avere descrizioni simili. Questo ci permette di catturare naturalmente i significati delle parole come per la loro vicinanza ad altre parole rappresentate come vettori esse stesse.
Per questa guida utilizzeremo i vettori globali di rappresentazione delle parole (GloVe). Il gloVe è l'algoritmo di rappresentazione di parole distribuite open source sviluppato da Pennington a Stanford. Combina le caratteristiche di 2 famiglie di modelli, vale a dire la fattorizzazione della matrice globale e i metodi della finestra del contesto locale.
Passaggio 4
Una volta che abbiamo la rappresentazione vettoriale per le nostre parole, dobbiamo estendere il processo per rappresentare intere frasi come vettori. Per fare ciò, possiamo recuperare le rappresentazioni vettoriali dei termini che costituiscono le parole in una frase e quindi la media/media di quei vettori per arrivare a un vettore consolidato per la frase.
Passaggio 5
A questo punto, abbiamo una rappresentazione vettoriale per ogni singola frase. È ora utile quantificare le somiglianze tra le frasi usando l'approccio della somiglianza del coseno. Possiamo quindi popolare una matrice vuota con le somiglianze del coseno delle frasi.
Passaggio 6
Ora che abbiamo una matrice popolata con le somiglianze del coseno tra le frasi. Possiamo convertire questa matrice in un grafico in cui i nodi rappresentano le frasi e i bordi rappresentano la somiglianza tra le frasi. È su questo grafico che utilizzeremo il pratico algoritmo PageRank per arrivare alla classifica delle frasi.
Passaggio 7
Ora abbiamo classificato tutte le frasi nell'articolo in ordine di importanza. Ora possiamo estrarre le prime N (diciamo 10) frasi per creare un riepilogo.
Per trovare il codice per un tale metodo, ci sono molti di questi progetti su Github; questo articolo, d'altra parte, aiuta a sviluppare una comprensione dello stesso.
Scopri: Evoluzione della modellazione linguistica nella vita moderna
Tecniche di valutazione
Un fattore importante nella messa a punto di tali modelli è disporre di un metodo affidabile per giudicare la qualità dei riepiloghi prodotti. Ciò richiede buone tecniche di valutazione, che possono essere ampiamente classificate come segue:
- Valutazione intrinseca ed estrinseca :
Intrinseco: tale valutazione mette alla prova il sistema di riepilogo in sé e per sé. Valutano principalmente la coerenza e l'informatività della sintesi.
Estrinseco: tale valutazione verifica il riepilogo in base a come influisce su qualche altro compito. Può testare l'impatto del riepilogo su attività come la valutazione della pertinenza, la comprensione della lettura, ecc.
- Intertestuale e Intratestuale :
Intertestuale: tali valutazioni si concentrano su un'analisi contrastiva di diversi sistemi di sintesi.
Intratestuale: tali valutazioni valutano l'output di uno specifico sistema di sintesi.
- Dominio specifico e indipendente dal dominio :
Indipendente dal dominio: queste tecniche generalmente applicano insiemi di caratteristiche generali che possono essere focalizzate sull'identificazione di segmenti di testo ricco di informazioni.
Specifico del dominio: queste tecniche utilizzano la conoscenza disponibile specifica per un dominio su un testo. Ad esempio, la sintesi testuale della letteratura medica richiede l'uso di fonti di conoscenza medica e ontologie.
- Valutazione qualitativa dei riassunti :
Il principale svantaggio di altre tecniche di valutazione è che richiedono riepiloghi di riferimento per poter confrontare l'output dei riepiloghi automatici con il modello. Questo rende il compito di valutazione difficile e costoso. È in corso il lavoro per costruire un corpus di articoli/documenti e le relative sintesi per risolvere questo problema.
Sfide alla sintesi del testo
Nonostante gli strumenti altamente sviluppati per generare e valutare i riepiloghi, rimangono le sfide per trovare un modo affidabile per i riassunti del testo per capire cosa è importante e rilevante.
Come discusso, le matrici di rappresentazione vettoriale e somiglianza tentano di trovare associazioni di parole, ma non hanno ancora un metodo affidabile per identificare le frasi più importanti.
Un'altra sfida nella sintesi del testo è la complessità del linguaggio umano e il modo in cui le persone si esprimono, specialmente nel testo scritto. Il linguaggio non è composto solo da frasi lunghe con aggettivi e avverbi per descrivere qualcosa, ma anche frasi relative, apposizioni, ecc. tali approfondimenti possono aggiungere informazioni preziose che non aiutano a stabilire il nodo principale delle informazioni da includere nel riassunto.

Il "problema dell'anafora" è un'altra barriera nella sintesi del testo. Nella lingua, sostituiamo spesso il soggetto nella conversazione con i suoi sinonimi o pronomi. La comprensione di quale pronome sostituisce quale termine è il "problema dell'anafora".
Il "problema della catafora" è il problema opposto del problema dell'anafora. In queste parole e spiegazioni ambigue, nel testo viene utilizzato un termine particolare prima di introdurre il termine stesso.
Conclusione
Il campo della sintesi del testo sta vivendo una rapida crescita e sono in fase di sviluppo strumenti specializzati per affrontare compiti di sintesi più mirati. Con il software open source e i pacchetti di incorporamento di parole che stanno diventando ampiamente disponibili, gli utenti stanno ampliando il caso d'uso di questa tecnologia.
La sintesi automatica del testo è uno strumento che consente un salto di qualità nella produttività umana semplificando l'enorme volume di informazioni con cui gli esseri umani interagiscono quotidianamente. Ciò non solo consente alle persone di ridurre la lettura necessaria, ma libera anche tempo per leggere e comprendere opere scritte altrimenti trascurate. È solo questione di tempo che tali riassunti si integrino così bene da creare riassunti indistinguibili da quelli scritti dagli umani.
Se desideri migliorare le tue capacità di PNL, devi mettere le mani su questi progetti di PNL. Se sei interessato a saperne di più sull'apprendimento automatico, dai un'occhiata al Diploma PG di IIIT-B e upGrad in Machine Learning e AI, progettato per i professionisti che lavorano e offre oltre 450 ore di formazione rigorosa, oltre 30 casi di studio e incarichi, IIIT- B Status di Alumni, oltre 5 progetti pratici pratici e assistenza sul lavoro con le migliori aziende.
Quali sono gli usi della PNL?
NLP o Natural Language Processing, una delle tecnologie moderne più sofisticate e interessanti, viene utilizzata in diversi modi. Le sue principali applicazioni includono: correzione automatica delle parole, previsione automatica, chatbot e assistenti vocali, riconoscimento vocale negli assistenti virtuali, analisi del sentiment del parlato umano, filtraggio di e-mail e spam, traduzione, analisi dei social media, pubblicità mirata, riepilogo del testo e scansione per riprendere reclutamento, tra gli altri. Ulteriori progressi nella NLP che danno origine a concetti come la comprensione del linguaggio naturale (NLU) stanno aiutando a ottenere una maggiore precisione e risultati di gran lunga superiori da compiti complessi.
Devo studiare matematica per imparare la PNL?
Con l'abbondanza di risorse disponibili sia offline che online, ora è più facile accedere al materiale di studio progettato per l'apprendimento della PNL. Queste risorse di studio riguardano concetti specifici di questo vasto campo chiamato PNL piuttosto che il quadro più ampio. Ma se ti chiedi se la matematica fa parte di uno qualsiasi dei concetti della PNL, allora devi sapere che la matematica è una parte essenziale della PNL. La matematica, in particolare la teoria della probabilità, la statistica, l'algebra lineare e il calcolo, sono i pilastri fondamentali degli algoritmi che guidano la PNL. Avere una conoscenza di base delle statistiche è utile in modo che tu possa basarti su di essa come richiesto. Tuttavia, non c'è modo di imparare l'elaborazione del linguaggio naturale senza entrare in matematica.
Quali sono alcune tecniche di PNL utilizzate per estrarre informazioni?
In questa era digitale, c'è stato un enorme aumento nella generazione di dati non strutturati, principalmente sotto forma di audio, immagini, video e testi da vari canali come piattaforme di social media, reclami dei clienti e sondaggi. La PNL aiuta a estrarre informazioni utili da volumi di dati non strutturati, che possono aiutare le aziende. Esistono cinque tecniche comuni di NLP che vengono utilizzate per estrarre dati approfonditi, vale a dire: riconoscimento di entità denominate, riepilogo del testo, analisi del sentimento, mining di aspetti e modellazione di argomenti. Ci sono molti altri metodi di estrazione dei dati in NLP, ma questi sono i più comunemente usati.