Der nltk-Datenindex (https://raw.githubusercontent.com/nltk/nltk_data/gh-pages/index.xml) zeigt verbnet
auf Version 2.1. Die neueste Definition von verbnet
ist 3.2.
Die neueste Version enthält aktualisierte Rahmenbeschreibungen, die viel mehr Informationen über die Phrasenstruktur enthalten. Beispielsweise lautet die primäre Beschreibung eines Frames aus der Klasse future_having-13.3
in der neuesten Version NP V NP-Dative NP
und beschreibt die Struktur des Frames als (Nominalphrase, Verb, Nominalphrase (Dativ), Substantiv- Phrase) in Version 2.1 heißt es nur Dative
.
@agodbehere , danke, dass hast . Ich habe überprüft, dass der vorhandene Verbnet 2-Korpusleser die Verbnet 3-Daten beschädigt, sodass beide in der Korpus-Sammlung nebeneinander leben müssen.
Der nächste Schritt besteht darin, dass jemand einen entsprechenden Korpusleser nltk.corpus.verbnet3
beisteuert, der hoffentlich einen Teil des vorhandenen Codes gemeinsam nutzen kann.
Wir müssen beide für eine Weile unterstützen.
@stevenbird , welchen brechenden Fall haben Sie für die Verwendung des vorhandenen Korpuslesers mit Verbnet 2 gefunden? Ich habe die Testsuite nach dem Aktualisieren des Korpus nicht ausgeführt, aber für meinen Anwendungsfall (Anfordern von Klassen und Frames) funktioniert der vorhandene Korpusleser einwandfrei.
Das Problem besteht mit Verbnet 3. Wir benötigen einen anderen Korpusleser für
Das.
Am Mittwoch, 16. Mai 2018, 10:45 Uhr Andrew Godbehere [email protected]
schrieb:
@stevenbird https://github.com/stevenbird , was für ein Fall haben Sie gebrochen
Finden Sie für die Verwendung des vorhandenen Korpus-Readers mit Verbnet 2? Ich habe das nicht ausgeführt
Testsuite nach dem Aktualisieren des Korpus, aber für meinen Anwendungsfall (anfordern
Klassen und Frames) funktioniert der vorhandene Korpusleser einwandfrei.- -
Sie erhalten dies, weil Sie erwähnt wurden.
Antworte direkt auf diese E-Mail und sieh sie dir auf GitHub an
https://github.com/nltk/nltk/issues/2015#issuecomment-389363521 oder stumm schalten
der Faden
https://github.com/notifications/unsubscribe-auth/AADYbsgbjtFTKsyamRPG0OpJuWnF3UJ0ks5ty33DgaJpZM4Tzc0d
.
@stevenbird @agodbehere Hallo, ich arbeite am VerbNet-Projekt bei CU Boulder und würde gerne Code für einen Korpusleser für VerbNet 3+ beitragen und pflegen.
@amosleokim : danke, das wäre willkommen!
Sie können sehen, dass wir hier verbnet
(2) und verbnet3
Daten haben .
Ich schlage vor , wir einen Eintrag für hinzufügen verbnet3
hier
Und dann finden Sie heraus, wie Sie verbnet.py erweitern verbnet
als auch verbnet3
.
Wie klingt das? Wir müssen beide gleichzeitig unterstützen und das Verbnet 2 (letztendlich) verwerfen.
Wir haben einen NLTK-Slack-Kanal, in dem wir bei Bedarf Details besprechen können. Vielen Dank!
@stevenbird Das klingt gut für mich! Wenn Sie mir einen Einladungscode an den Slack-Kanal senden können, hüpfe ich, damit wir mit dem Nitty Gritty beginnen können.
Fortschritte in diesem Bereich? Ich versuche, Verbnet für eine Recherche zu verwenden, und die Ausgabe, die ich von den Methoden classids
erhalte, scheint seltsam .
Weitere Informationen finden Sie unter https://github.com/nltk/nltk/issues/2015#issuecomment -390826015
Danke @stevenbird , die ältere Version schien die Ursache des Problems zu sein. Ich konnte verbnet3.zip manuell herunterladen und mit dem Reader für verbnet 2.1 in nltk lesen.
@salompas Funktioniert die Verbnet-API in NLTK mit verbnet3?
@ Verbesserungen
Es funktioniert für das, wofür ich es benutze. Lassen Sie mich Ihnen meinen Code zeigen:
import nltk
v3 = nltk.corpus.util.LazyCorpusLoader(
'verbnet3', nltk.corpus.reader.verbnet.VerbnetCorpusReader,
r'(?!\.).*\.xml')
v3.classids('add') # returns ['mix-22.1-2', 'multiply-108', 'say-37.7-1']
Damit dies funktioniert, müssen Sie verbnet3 von hier herunterladen . Entpacken Sie diese Datei im Ordner ~/nltk_data/corpora~. When unzipped it should create a new folder
~ / nltk_data / corpora / verbnet3 which contains all the Verbnet3 definitions.
Then you should be able to run the code above.
Notice that for Verbnet 2 (the default) the code
v3.classids ('add') `gibt nur die erste Klasse zurück (mix-22.1-2).
Da das im Grunde alles ist, was ich mit Verbnet3 verwende, habe ich die anderen APIs nicht getestet, aber die classids
-Methode wurde an vielen verschiedenen Wörtern getestet und sie funktionieren alle. Ich hoffe das hilft!
@ Salompas Hallo, danke für deine Lösung! Welche Version von verbnet3 ist dein 'verbnet3'? Ist es Version 3.3 oder 3.2?
@ Salompas Hallo, danke für deine Lösung! Welche Version von verbnet3 ist dein 'verbnet3'? Ist es Version 3.3 oder 3.2?
Hey @ songhee-kim, es ist 2 Jahre her, seit ich daran gearbeitet habe, also weiß ich nicht genau, welche Version ich hatte.
Hilfreichster Kommentar
@ Verbesserungen
Es funktioniert für das, wofür ich es benutze. Lassen Sie mich Ihnen meinen Code zeigen:
Damit dies funktioniert, müssen Sie verbnet3 von hier herunterladen . Entpacken Sie diese Datei im Ordner
~/nltk_data/corpora~. When unzipped it should create a new folder
~ / nltk_data / corpora / verbnet3which contains all the Verbnet3 definitions. Then you should be able to run the code above. Notice that for Verbnet 2 (the default) the code
v3.classids ('add') `gibt nur die erste Klasse zurück (mix-22.1-2).Da das im Grunde alles ist, was ich mit Verbnet3 verwende, habe ich die anderen APIs nicht getestet, aber die
classids
-Methode wurde an vielen verschiedenen Wörtern getestet und sie funktionieren alle. Ich hoffe das hilft!