Топ-100
Indietro

ⓘ Entity linking. Nellambito dellelaborazione del linguaggio naturale, l entity linking, noto anche come named entity linking, named entity disambiguation, named ..




Entity linking
                                     

ⓘ Entity linking

Nellambito dellelaborazione del linguaggio naturale, l entity linking, noto anche come named entity linking, named entity disambiguation, named entity recognition e disambiguation o named entity normalization è il compito di assegnare unidentità univoca a entità menzionate in un testo. Ad esempio, data la frase "Washington è la capitale degli Stati Uniti", lidea è di determinare che "Washington" si riferisce alla città di Washington e non a George Washington o qualsiasi altra entità che potrebbe essere indicata come "Washington". Lentity linking è diverso dal named entity recognition in quanto il NER identifica loccorrenza di unentità denominata nel testo, ma non identifica lentità specifica.

                                     

1. Introduzione

Nellentity linking, le parole di interesse nomi di persone, ubicazioni e aziende sono collegate da un testo di input a entità univoche contenute in una knowledge base di destinazione. Le parole di interesse sono chiamate named entity NE, menzioni o forme di superficie. La knowledge base di destinazione dipende dallapplicazione prevista, ma per gli algoritmi di entity linking pensati per funzionare su testo di contenuto generico è comune utilizzare knowledge base derivate da Wikipedia come Wikidata o DBpedia. In questo caso, ogni singola pagina di Wikipedia è considerata unentità separata. Le tecniche di entity linking che associano le named entity ad entità di Wikipedia prendono anche il nome di wikificazione.

Considerando nuovamente la frase "Washington è la capitale degli Stati Uniti", loutput atteso di un algoritmo di entity linking sarà Washington e Stati Uniti dAmerica. Questi URL Uniform Resource Locators possono essere utilizzati come URI Uniform Resource Identifier univoci per le entità nella knowledge base. Lutilizzo di una diversa knowledge base restituirà diversi URI, ma per gran parte delle knowledge base costruite a partire da Wikipedia esistono corrisponenze univoche tra gli URI delle singole knowledge base, in modo tale che siano interscambiabili.

Nella maggior parte dei casi, le knowledge base sono costruite manualmente, ma in applicazioni in cui sono disponibili corpus di testo di grandi dimensioni, la knowledge base può essere dedotta automaticamente a partire dal testo disponibile.

                                     

1.1. Introduzione Applicazioni

Lentity linking è fondamentale in molti ambiti, come lanalisi del testo, i sistemi di raccomandazione, la ricerca semantica e i chatbot. Tutti questi campi beneficiano di rappresentazioni di alto livello del testo, in cui i concetti rilevanti per lapplicazione sono separati dal testo grezzo e da altri dati non significativi.

Ad esempio, unattività comune eseguita dai motori di ricerca consiste nel trovare documenti simili a uno dato come input o per trovare ulteriori informazioni sulle persone menzionate in esso. Si consideri una frase contenente lespressione "la capitale della Francia": senza entity linking, il motore di ricerca che esamina il contenuto dei documenti non sarebbe in grado di recuperare direttamente i documenti contenenti la parola "Parigi", portando a cosiddetti falsi negativi FN. Ancor peggio, il motore di ricerca potrebbe produrre corrispondenze spurie o falsi positivi FP), come il recupero di documenti che si riferiscono a "Francia" nel senso di nazione.

Esistono molti approcci ortogonali allentity linking per recuperare documenti simili a un documento di input. Ad esempio, lutilizzo di latent semantic analysis LSA o il confronto di embedding di documenti ottenuti mediante doc2vec. Tuttavia, queste tecniche non consentono lo stesso controllo granulare che viene fornito da tecniche di entity linking, in quanto vengono restituiti altri documenti invece di creare rappresentazioni di alto livello del testo originale. Ad esempio, ottenere informazioni schematiche su "Parigi", come presentato dagli Infobox di Wikipedia, risulta meno semplice, o persino infattibile, a seconda della complessità della query.

Inoltre, lentity linking è stato utilizzato per migliorare le prestazioni dei sistemi di recupero delle informazioni e per migliorare le prestazioni di ricerca nelle biblioteche digitali. Lentity linking è anche un input chiave per la ricerca semantica.

                                     

1.2. Introduzione Difficoltà nellentity linking

Un sistema di entity linking deve poter gestire una serie di difficoltà per poter essere adeguato ad applicazioni reali. Alcune di queste problematiche sono intrinseche allentity linking stesso, come lambiguità del testo, mentre altre, come la scalabilità e il tempo di esecuzione, diventano rilevanti quando si considera lutilizzo di tali sistemi in applicazioni reali.

  • Variazioni dei nomi: la stessa entità potrebbe venire espressa in molti modi diversi. Le variazioni dei nomi possono essere causate da abbreviazioni New York, NY, alias New York, Big Apple, o varianti di spelling ed errori New yokr.
  • Ambiguità: la stessa menzione può spesso riferirsi a molte entità diverse, a seconda del contesto, poiché molti nomi tendono ad essere polisemici cioè hanno significati multipli. La parola Washington, tra le altre cose, potrebbe riferirsi alla capitale statunitense o a George Washington. In alcuni casi come nellespressione la capitale degli Stati Uniti, non vi è alcuna somiglianza testuale tra il testo di partenza e lentità che si desidera individuare Washington.
  • Assenza delle entità: a volte, alcune named entity potrebbero non avere una corrispondente entità nella knowledge base di destinazione. Ciò potrebbe accadere quando si ha a che fare con entità molto specifiche o insolite o quando si elaborano documenti su eventi recenti, in cui potrebbero esserci menzioni di persone o eventi che non hanno ancora unentità corrispondente nella knowledge base. Unaltra situazione comune in cui è comune avere entità mancanti è quando si utilizzano knowledge base facenti riferimento a un dominio specifico ad esempio, una knowledge base di biologia o un database di film. In tutti questi casi, lalgoritmo di entity linking dovrebbe restituire un collegamento nullo, cioè NIL. Capire quando restituire una previsione NIL non è semplice e sono stati proposti molti approcci diversi; ad esempio, limitando un qualche valore di confidenza nellalgoritmo di entity linking, o aggiungendo unentità NIL aggiuntiva alla knowledge base, che viene trattata allo stesso modo delle altre entità. Inoltre, in alcuni casi fornire una stima errata, ma correlata al valore esatto, potrebbe essere migliore di non fornire alcun risultato, dal punto di vista di un utente finale.
  • Scalabilità e velocità: è auspicabile che un algoritmo di entity linking fornisca risultati in tempi ragionevoli e spesso in tempo reale. Questo requisito è fondamentale per motori di ricerca e chatbot. Garantire tempi di esecuzione ridotti può essere difficile quando si utilizzano knowledge base o documenti di grandi dimensioni. Ad esempio, Wikipedia contiene circa 9 milioni di entità e oltre 170 milioni di relazioni tra loro.
  • Evoluzione dellinformazione: un algoritmo di entity linking dovrebbe anche occuparsi delle informazioni in evoluzione e integrare facilmente gli aggiornamenti che possono essere fatti nella corrisponente knowledge base. Il problema dellevoluzione delle informazioni è a volte collegato al problema delle entità mancanti, ad esempio quando si elaborano articoli di notizie recenti in cui ci sono menzioni di eventi che non hanno una voce corrispondente nella knowledge base a causa della loro novità.
  • Lingue multiple: un algoritmo di entity linking può supportare query eseguite in più lingue. Idealmente, laccuratezza del sistema non dovrebbe essere influenzata dalla lingua di input le entità nella knowledge base dovrebbero essere le stesse in ogni lingua supportata.


                                     

1.3. Introduzione Differenze da altre tecniche

Lentity linking è anche noto come named entity disambiguation NED ed è profondamente collegato a wikificazione e a record linkage. Le definizioni sono spesso sottili e variano leggermente tra i diversi autori: Alhelbawy et al. considerano lentity linking come una versione più ampia del NED, in quanto il NED assume che lentità che corrisponde a una named entity sia contenuta nella knowledge base. I sistemi di entity linking, invece, possono trattare casi in cui nessuna entità presente nella knowledge base di riferimento sia adatta a essere collegata con la named entity considerata. Altri autori non fanno tale distinzione e usano le due definizioni in modo equivalente.

  • La wikificazione è il compito di collegare le menzioni testuali alle entità di Wikipedia generalmente, limitando lambito alla Wikipedia in inglese in caso di wikificazione multilingue.
  • Il record linkage RL è considerato un campo più ampio rispetto allentity linking e consiste nel trovare i documenti, attraverso set di dati multipli e spesso eterogenei, che si riferiscono alla stessa entità. Il record linkage è un componente chiave per digitalizzare gli archivi e per unire più knowledge base.
  • Il named entity recognition NER individua e classifica le named entity contenute in un testo non strutturato in categorie predefinite come nomi, organizzazioni, luoghi geografici e altro. Ad esempio, la seguente frase
sarebbe elaborata da un sistema NER in modo tale da ottenere il seguente risultato: Il named entity recognition è solitamente una fase di pre-elaborazione negli algoritmi di entity linking, in quanto può essere utile sapere in anticipo quali parole debbano essere collegate alle entità della knowledge base.
  • La coreference resolution stabilisce se più parole in un testo si riferiscono alla stessa entità. Può essere utile, ad esempio, per capire la parola a cui si riferisce un pronome. Si consideri il seguente esempio
In questo esempio, un algoritmo di coreference resolution identificherebbe che la parola città si riferisce a Parigi, e non alla Francia o ad unaltra entità. Una distinzione notevole rispetto a entity linking è che coreference resolution non assegna nessuna identità univoca alle parole del testo, ma semplicemente stabilisce se si riferiscono alla stessa entità o meno.
                                     

2. Tecniche di entity linking

Lentity linking è stato oggetto di grandi studi sia nellindustria che nel mondo accademico per lultimo decennio. Tuttavia, ad oggi gran parte delle difficoltà esistenti sono ancora irrisolte, e sono stati proposti innumerevoli algoritmi di entity linking, con punti di forza e punti deboli molto diversi.

In generale, le moderne tecniche di entity linking possono essere suddivise in due categorie:

  • Approcci basati sullanalisi di testo, che si avvalgono di funzionalità testuali estratte da corpora di testo di grandi dimensioni ad esempio Term frequency - Inverse document frequency Tf-Idf, probabilità di co-occorrenza delle parole, ecc).
  • Approcci basati sullanalisi di grafi, che sfruttano la struttura dei knowledge graph per rappresentare il contesto e la relazioni tra entità.

Spesso i sistemi di entity linking non possono essere categorizzati esattamente in una di queste categorie, in quanto fanno uso di knowledge graph che sono stati arricchiti con informazioni aggiuntive estratte da un testo, ad esempio, dai corpus testuali impiegati per costruire i knowledge graph stessi.

                                     

2.1. Tecniche di entity linking Approcci basati sullanalisi di testo

Il fondamentale lavoro di Cucerzan nel 2007 propone uno delle prime tecniche di entity linking che sono comparse in letteratura. Nel suo lavoro, Cucerzan si è occpuato di wikificazione, il collegamento di menzioni testuali a pagine di Wikipedia. Questo algoritmo categorizza le pagine di Wikipedia in entità, pagine di disambiguazione o elenco di altre pagine, le utilizza per assegnare categorie a ciascuna entità. Linsieme di entità presenti in ogni pagina entità viene utilizzato per costruire il contesto di ciascuna entità. La fase finale di collegamento delle entità è una disambiguazione collettiva eseguita confrontando vettori binari ottenuti da caratteristiche estratte manualmente dai dati e dal contesto di ciascuna entità. Il sistema di entity linking di Cucerzan è ancora utilizzato come punti di partenza per molti lavori più recenti.

Il lavoro di Rao et al. è altamente consciuto nellambito dellentity linking. Gli autori propongono un algoritmo in due fasi per collegare named entities ad entità in una knowledge base di destinazione. Innanzitutto, viene scelto per ciascuna named entity un insieme di entità candidate utilizzando somiglianza testuale, acronimi e alias noti di ogni entità. In seguito, il miglior candidato viene scelto con una Support Vector Machine SVM che utilizza caratteristiche di tipo linguistico.

Algoritmi più recenti, come quello proposto da Tsai et al., impiegano embeddings testuali ottenuti con un modello skip-gram e possono essere applicati a qualsiasi lingua purché sia disponibile un corpus testuale di dimensioni sufficienti alla creazione embeddings di parole. Analogamente alla maggior parte delle tecniche di entity linking, questo algoritmo è diviso in due fasi, con una selezione iniziale delle entità candidate e un SVM con ranking lineare come secondo passo.

In letteratura sono stati tentati molteplici approcci per affrontare il problema dellambiguità dellentità. Nel lavoro di Milne e Witten, viene impiegato lapprendimento supervisionato utilizzando i testi di ancoraggio dei link interni a Wikipedia come dati di addestramento. Altri approcci hanno raccolto dati di addestramento basati su sinonimi non ambigui. Kulkarni et al. hanno sfruttato il fatto che i documenti con simile argomento si riferiscono a entità appartenenti a classi fortemente correlate.



                                     

2.2. Tecniche di entity linking Approcci basati sullanalisi di grafi

Le moderne tecniche di entity linking non si limitano ad analizzare informazioni ottenute da documenti di input o corpora di testi, ma impiegano knowledge graph creati da basi di conoscenza come Wikipedia. Questi algoritmi estraggono complesse informazioni a partire dalla topologia del knowledge graph o sfruttano connessioni multi-step tra entità, che sarebbero invisibili da una semplice analisi del testo. Inoltre, realizzare algoritmi di entity linking multilingue basati su natural language processing NLP è intrinsecamente difficile, in quanto richiede sia corpus di testo di grandi dimensioni, spesso assenti per molte lingue, sia regole grammaticali generate manualmente, che possono variare enormemente tra una lingua e laltra. Han et al. proporre la creazione di un grafo di disambiguazione un sottografo della knowledge base che contiene solamente le entità candidate. Questo grafo viene utilizzato per una procedura di classificazione puramente collettiva che trova il miglior link per ciascuna menzione testuale.

Un altro famoso algoritmo di entity linking è AIDA, che utilizza una serie di complessi algoritmi basati grafi e un algoritmo greedy che identifica le citazioni coerenti su un sottografo denso ottenuto da entità candidate, considerando anche le somiglianze del contesto di ciascuna entità e informazioni aggiuntive associate a ciascun vertice del grafo per eseguire la disambiguazione collettiva.

Il termine graph ranking o vertex ranking indica algoritmi come PageRank e HITS, il cui obiettivo è assegnare a ciascun vertice di un grafo un punteggio che rappresenti la sua importanza allinterno del grafo. Lalgoritmo di entity linking presentato in Alhelbawy et al. utilizza PageRank per eseguire il collegamento collettivo di entità su un grafo di disambiguazione, e capire quali entità hanno maggiore coerenza tra di loro e rappresentano un collegamento migliore.

                                     
  • utilizzato per la realizzazione di un sistema di disambiguazione ed entity linking Babelfy, che, grazie all integrazione tra sensi lessicografici ed entità
  • computazionale Sintesi vocale Lexxe Assistente virtuale Analisi del sentiment Entity linking EN Elaborazione del linguaggio naturale, su Enciclopedia Britannica
  • diretta nella comprensione e associazione da parte del motore di ricerca dell entity in quanto brand o prodotto rilevante per una determinata query. L utilizzo
  • coinvolta nella differenziazione terminale dell epidermide e nel cross - linking tra le cheratine, involucrina, loricrina e filaggrina. L exofilina 5 è