import nltk
from nltk.parse import malt
# Specify the path to the MaltParser executable
malt_path = '/path/to/maltparser-1.9.2/maltparser-1.9.2.jar'
# Specify the path to the MaltParser model file
model_path = '/path/to/maltparser-1.9.2/engmalt.linear-1.7.mco'
# Create a MaltParser object
malt_parser = malt.MaltParser(malt_path, model_path)
# Example sentence for parsing
sentence = "The quick brown fox jumps over the lazy dog."
# Tokenize the sentence
tokens = nltk.word_tokenize(sentence)
# Perform dependency parsing
result = malt_parser.parse_one(tokens)
# Display the parsed result
print(result.to_conll(10)) # Print the result in CoNLL format
2条答案
按热度按时间lnlaulya1#
嘿,@michalstepniewski
看起来MaltParser的
__init__
函数需要参数parser-dirname
,该参数描述了maltparser jar文件的位置。你可以在这里看到:大约在
malt.py
的第117行附近。看起来
discourse.doctest
文档中大约第520行附近的内容需要更新以反映这一点。此外,
discourse.py
文件的演示也应该在大约第609行附近更新,以反映parser_dirname
参数是必需的。在更新此后,我遇到了一些关于
malt_train.conll
文件的其他错误,但请尝试将该参数放入其中并查看结果。b4qexyjb2#
MaltParser看起来也被移动到了nltk.parse.malt.MaltParser[source]。我不确定我们将如何进行,但如果我们要更新示例,那么maltparser必须涉及:
或者为了简单起见,完全删除maltparser。