Wie finden Sie den kürzesten Abhängigkeit Pfad zwischen zwei Wörtern in Python?

Ich versuche zu finden, die die Abhängigkeit Pfad zwischen zwei Wörtern in Python gegebene Abhängigkeitsstruktur.

Für Satz

Robotern in der populären Kultur sind da, um zu erinnern uns an die awesomeness von
ungebundene menschliche Agentur.

Ich verwendet practnlptools ( https://github.com/biplab-iitb/practNLPTools ), um die dependency parsing-Ergebnis:

nsubj(are-5, Robots-1)
xsubj(remind-8, Robots-1)
amod(culture-4, popular-3)
prep_in(Robots-1, culture-4)
root(ROOT-0, are-5)
advmod(are-5, there-6)
aux(remind-8, to-7)
xcomp(are-5, remind-8)
dobj(remind-8, us-9)
det(awesomeness-12, the-11)
prep_of(remind-8, awesomeness-12)
amod(agency-16, unbound-14)
amod(agency-16, human-15)
prep_of(awesomeness-12, agency-16)

kann auch dargestellt werden als (Bild entnommen aus https://demos.explosion.ai/displacy/)
Wie finden Sie den kürzesten Abhängigkeit Pfad zwischen zwei Wörtern in Python?

Die Länge der Strecke zwischen dem "Roboter" und "sind" ist 1, die Länge der Strecke zwischen dem "Roboter" und "awesomeness" wäre 4.

Meine Frage ist oben angegeben Abhängigkeit parse-Ergebnis, wie bekomme ich die Abhängigkeit Weg oder Abhängigkeit von der Pfadlänge zwischen zwei Wörtern?

Aus meiner aktuellen such-Ergebnis, würde nltk ist ParentedTree helfen?

Dank!

  • Hi @Sean, Wie kann ich eine ähnliche Struktur für den Satz mit nltk? Ich derzeit haben keine Grammatik, und mit dem "baumbank" Grammatik, gibt mir Fehler, einige Worte nicht in Produktion Liste. Danke.
  • Acutally, mit NLTK bekommen, wie eine schöne Präsentation ist hart. Ich schlage vor, mit Spacig.
InformationsquelleAutor Sean | 2015-09-29
Schreibe einen Kommentar