Identificazione di eventi relativi alle date in un paragrafo


13

Esiste un approccio algoritmico per identificare che le date indicate in un paragrafo sono correlate a particolari eventi (frasi) nel paragrafo?

Esempio, considera il seguente paragrafo:

Nel giugno 1970, il grande leader prestò giuramento. Ma fu solo dopo il maggio 1972, dopo la morte del ministro di Stato, che prese le redini del paese. Mentre godette del sostegno popolare fino alla metà del 1980, la sua influenza iniziò a diminuire da allora in poi.

Esiste un algoritmo (deterministico o stocastico) # che può generare una 2 tupla (data, evento), in cui l' evento è implicito, dal paragrafo, che si è verificato alla data ? Nel caso precedente:

  • (Giugno 1970, il grande leader prestò giuramento)
  • (Maggio 1972, ha assunto le redini)

    o meglio ancora

  • (Maggio 1972, il grande leader assunse le redini)
  • (1980, caduta in influenza)

#Inoltre aggiunta


2
Questo problema sembra contenere tre fasi: 1) estrarre le date, 2) estrarre gli eventi e 3) correlare entrambi i set di dati. 1) è certamente fattibile e posso immaginare euristiche decenti per 3), ma come pensi di risolverlo 2)?
Raffaello

1
@Raphael Nice riformulazione della mia domanda!
controlla il

Beh, fare avete qualche info riguardo 2), ad esempio, un insieme ristretto di eventi interessanti (cioè parole)? Vuoi estrarre tutte le coppie sostantivo / verbo purché abbiano una data?
Raffaello

Vuoi estrarre anche i tempi? Nel tuo esempio, considera (<= May 1972, death of the Minister of State)o (<= Mid-1980, [the great leader] enjoyed popular support).
Raffaello

@Raphael Ci scusiamo per la (molto) risposta tardiva. Riguardo a 2) No. Sto cercando un approccio generalizzato.
check123

Risposte:


4

In generale, il problema di identificare le date e altri marcatori temporali nel testo è chiamato il problema dell'estrazione di riferimenti temporali . La ricerca collegata ti porterà ai documenti relativi a questo.


Non sapevo che il problema avesse un nome. Cercherò di più su questo e vedrò se riesco a trovare qualcosa di utile. :)
check123

2

Dato che chiedi un approccio algoritmico, sarò testardo come un algoritmo. Mi dispiace trattare questa domanda in questo modo, ma poiché non sembra un problema teorico complesso, sintetizzerò i possibili approcci.

Domanda: puoi darmi una definizione algoritmica di una data e di un evento particolare?

Se puoi: poiché la tua definizione è algoritmica, probabilmente questa è una sorta di grammatica formale e il tuo problema sarà quello di ottimizzare quella grammatica per cogliere ogni caso che devi considerare. (Sono interessato se puoi darmi una definizione esatta che non è una grammatica formale)

Se non puoi: allora almeno puoi trovare degli esempi. Bene allora. L'approccio migliore - e solo io riesco a pensare - sono gli algoritmi di apprendimento automatico, che dovrai addestrare per riconoscere le tue date e quindi i tuoi eventi. (Usando un corpus di frasi annotate a mano) Tuttavia questo è abbastanza esagerato rispetto ad alcune grandi regexp fatte a mano che probabilmente faranno il lavoro. Se davvero, davvero vuoi farlo, penso che il più efficace sarà questo tipo di regexp dato come parametro all'algoritmo di apprendimento, ma è meglio chiedere agli esperti di machine learning.

Buona fortuna con questo, è molto più facile parlarne (in entrambi i casi).


1
Detto questo, penso che combinare date ed eventi avrà sicuramente bisogno di alcuni modelli stocastici.
Raffaello

Date nella maggior parte dei formati che posso catturare usando regexp. Con una certa logica di programmazione, posso estrarre le frasi attorno alle date. Il problema quindi è che ho bisogno di un modello o di una distribuzione di probabilità che quando un particolare modello di frase, es .: Il gatto ha mangiato il mouse il 25 agosto. [<artic>> <noun> <verb> <article> <noun> <preposizione> <data>], quindi appare un (sotto) set di pattern, Il gatto ha mangiato il mouse (nel nostro caso), correlato alla data y (25 agosto) con probabilità z.
check123

@jmad Se non ti dispiace potresti modificare la formattazione del tuo post? L'uso dello stile delle virgolette per un non-quote (o un auto-preventivo?) È piuttosto confuso.
uli
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.