Word2Vec per il riconoscimento dell'entità denominata


25

Sto cercando di utilizzare l'implementazione di word2vec di Google per creare un sistema di riconoscimento delle entità denominato. Ho sentito che le reti neurali ricorsive con propagazione posteriore attraverso la struttura sono adatte per compiti di riconoscimento di entità nominate, ma non sono stato in grado di trovare un'implementazione decente o un tutorial decente per quel tipo di modello. Poiché sto lavorando con un corpus atipico, gli strumenti NER standard in NLTK e simili hanno funzionato molto male e sembra che dovrò addestrare il mio sistema.

In breve, quali risorse sono disponibili per questo tipo di problema? È disponibile un'implementazione di rete neurale ricorsiva standard?


Hai provato ad allenare il NER di Stanford sul tuo corpus? C'è un tutorial qui .
Emre,

Non ho - dovrei provarlo per vedere come va.
Madison,

Vorrei utilizzare le funzionalità di word2vec o simili, tuttavia, poiché ho accesso a un set di dati con etichetta relativamente piccolo e ho bisogno di sfruttare al meglio i dati senza etichetta che ho a portata di mano.
Madison,

Risposte:



7

Due articoli recenti utilizzano un'architettura di apprendimento profondo chiamata CharWNN per risolvere questo problema. CharWNN è stato utilizzato per la prima volta per ottenere risultati allo stato dell'arte (senza funzionalità artigianali) su tag Part of Speech (POS) su un corpus inglese.

Il secondo documento dello stesso autore utilizza la stessa (o simile) architettura per prevedere se una parola appartiene a 10 classi di entità nominate, con risultati apparenti sullo stato dell'arte.


Interessante. Grazie per averlo condiviso. Mi chiedo perché non abbiano testato questo approccio sui corpora inglesi.
MaticDiba,

3

Prova http://deeplearning4j.org/word2vec.html . Questo ha un'implementazione di Word2Vec utilizzata al posto di Bag of Words per NER e altre attività di NLP.


1
Non ho avuto problemi a trovare le implementazioni di word2vec, ma non sono stato in grado di trovare una rete ricorsiva funzionante da utilizzare.
Madison,

Il link non è più attivo, se possibile condividi gentilmente il nuovo link funzionante
Amandeep,

1

Ecco alcune idee su come utilizzare i vettori di parole per NER, che adotta un approccio incentrato su word2vec centric.

  1. Dato un insieme di vettori di parole (o qualcosa che hai addestrato o qualcosa di pronto come GoogleNews-vectors-negative300.bin), scopri i cluster nello spazio vettoriale. Questi cluster sono fondamentalmente le tue definizioni per vari concetti senza nome.
  2. Con una supervisione minima, è possibile mappare / convertire i cluster senza nome per abbinare la conoscenza umana, creando così concetti denominati basati su vettori di parole conosciute e concetti senza nome. Ad esempio, un metodo findCluster(['joy', 'surprise', 'disgust', 'trust', 'fear', 'sadness', 'anger', 'anticipation'])potrebbe restituire un elenco contenente centinaia di parole principalmente legate all'emozione. Se nominate questa lista "emozione", allora avete un concetto denominato "emozione" definito in base allo spazio vettoriale.
  3. Puoi anche fare matematica vettoriale per trovare il concetto intermedio tra due dati. Ad esempio, la matematica vettoriale potrebbe dirti che quando vengono date due parole "sorpresa" e "disgusto", tra i due si trovano quanto segue: sgomento, stupore, delusione, stupore, stupore, esasperazione, incredulità, shock, ecc. Ciò consente per costruire relazioni tra concetti.
  4. Puoi ripetere quanto sopra per creare vari tipi di nomi, come: giorni feriali, tutte le emozioni, emozioni felici, veicoli, ecc.
  5. Dopo aver creato livelli di concetti denominati, è possibile quindi addestrare un RNN su un corpus di testo che è stato aumentato con i concetti denominati, quindi 'brown fox jumps' è anche '{color} {animal} {action}' ecc. In questo modo l'RNN dovrebbe essere in grado di apprendere un po 'di grammatica rudimentale in modo incustodito.
  6. Se hai sviluppato una grammatica sufficientemente potente da quanto sopra, allora dovresti essere in grado di applicarla ad alcune delle tue attività NER.
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.