2012-10-14 6 views
6

Devo implementare la markovizzazione orizzontale (concetto NLP) e sto avendo qualche problema a capire come saranno gli alberi. Ho letto lo Klein and Manning paper, ma non spiegano come saranno gli alberi con markovizzazione orizzontale dell'ordine 2 o dell'ordine 3. Qualcuno potrebbe far luce sull'algoritmo e su cosa supporranno gli alberi? Sono relativamente nuovo alla PNL.Markovizzazione orizzontale

risposta

10

Quindi, diciamo che hai un sacco di regole piatti come:

NP 
    NNP 
    NNP 
    NNP 
    NNP 

o

VP 
    V 
    Det 
    NP 

Quando si binarizzare questi si desidera mantenere il contesto (cioè non si tratta solo un Det ma specificamente un Det che segue un Verb come parte di un VP). Per farlo si utilizza normalmente le annotazioni come questa:

NP 
    NNP 
    NP->NNP 
     NNP 
     NP->NNP->NNP 
      NNP 
      NP->NNP->NNP->NNP 
       NNP 

o

VP 
    V 
    VP->V 
     Det 
     VP->V->Det 
      NP 

È necessità binarizzare l'albero, ma queste annotazioni non sono sempre molto significativo. Potrebbero essere un po 'significativi per l'esempio della frase verbale, ma tutto quello che ti interessa veramente dell'altro è che una frase nominale può essere una stringa abbastanza lunga di nomi propri (ad es. "Peter B. Lewis Building" o "Hope Memorial Bridge Project") Anniversario"). Quindi con Markovizzazione orizzontale, colliderai leggermente alcune annotazioni, eliminando parte del contesto. L'ordine di Markovization è la quantità di contesto che si intende conservare. Quindi con le normali annotazioni sei fondamentalmente in ordine infinito: scegliere di mantenere tutto il contesto e non comprimere nulla.

Ordinare 0 significa che stai andando a cadere tutto il contesto e si ottiene un albero senza le annotazioni di fantasia, in questo modo:

NP 
    NNP 
    NNP 
     NNP 
     NNP 
      NNP 
      NNP 
       NNP 

Ordine 1 significa che potrete conservare un solo termine di contesto e si ottiene un albero come questo:

NP 
    NNP 
    NP->...NNP **one term: NP->** 
     NNP 
     NP->...NNP **one term: NP->** 
      NNP 
      NP->...NNP **one term: NP->** 
       NNP 

Order 2 significa manterrai due termini di contesto e si ottiene un albero come questo:

NP 
    NNP 
    NP->NNP **two terms: NP->NNP** 
     NNP 
     NP->NNP->...NNP **two terms: NP->NNP->** 
      NNP 
      NP->NNP->...NNP **two terms: NP->NNP->** 
       NNP 
+1

Il tuo h = 0 non è corretto. – user3639557

+0

Sentiti libero di fornire una risposta diversa. – FoolishSeth

0

Credo che l'idea sia di prendere in considerazione i nodi padre per markovizzazione verticale e nodi fratelli per orizzontale quando si stimano le probabilità delle regole e l'ordine indica quanti di essi sono inclusi. C'è una bella immagine per l'annotazione principale here.

Inoltre, una citazione da http://www.timothytliu.com/files/NLPAssignment5.pdf:

di avvicinarci lessicalizzazione, ulteriori informazioni si aggiunge sulle genitore nodi di ogni albero. Questo distingue correttamente tra i diversi allegati e se deviare o meno a sinistra o ramo destro. Markovizzazione orizzontale si ottiene tenendo traccia dei fratelli mentre l'albero è binato. Markovizzazione verticale viene eseguita da tenendo traccia dei genitori del nodo nell'albero. Questi creano nuove dipendenze , poiché ora le regole sono una combinazione di entrambe le profondità e di larghezza .