У меня проблема с StanfordDependencyParser, предоставленным NLTK. Если я напишу что-то вроде этого:
import os
from nltk.parse import stanford
#path of the folder containing all the .jars (in particular stanford-parser.jar and stanford-parser-models.jar)
os.environ['STANFORD_PARSER'] = r'\path\to\stanford-corenlp-full'
os.environ['STANFORD_MODELS'] = r'\path\to\stanford-corenlp-full'
parser = stanford.StanfordDependencyParser(model_path=r"\path\to\model\englishPCFG.ser.gz")
sentences = parser.parse("Speaking of the browser, it too has 4 problems.")
print(sentences)
btup_words = []
btup_depwords = []
btup_deprels = []
#print of words in the dependency tree
for line in sentences:
nodes = sentence.nodes
for i in range(len(nodes)):
if nodes[i]['word']!=None:
print(nodes[i]['word'])
Вывод этого кода не учитывает цифры и знаки препинания. Я получаю в качестве вывода:
Speaking
of
the
browser
it
too
has
problems
Я заметил, что есть некоторые узлы, в которых поле "слово" имеет значение None. Как я могу заставить анализатор также учитывать числа и знаки препинания в конечном дереве зависимостей?