Если вы хотите использовать синтаксический анализатор Стэнфорда, используйте это:
import os
from nltk.parse import stanford
os.environ['STANFORD_PARSER'] = '/folder/with/standford/jars'
os.environ['STANFORD_MODELS'] = '/folder/with/standford/jars'
parser = stanford.StanfordParser(model_path="/location/of/the/englishPCFG.ser.gz")
print parser.raw_batch_parse(("Hello, My name is Melroy.", "What is your name?"))
Выход:
[Tree ('ROOT', [Tree ('S', [Tree ('INTJ', [Tree ('UH', ['Hello'])]),
Tree (',', [',']), Tree ('NP', [Tree ('PRP $', ['My'])), Tree ('NN',
['name'])]), Tree ('VP', [Tree ('VBZ', ['is']), Tree ('ADJP', [Tree ('JJ',
['Melroy'])])]), Tree ('.', ['.'])])]), Tree ('ROOT', [Tree ('SBARQ',
[Дерево («WHNP», [Дерево («WP», [«Что»])]), Дерево («SQ», [Дерево («VBZ»,
['is']), Tree ('NP', [Tree ('PRP $', ['your']), Tree ('NN', ['name'])])]),
Дерево ('.', ['?'])])])]
Примечание 1:
В этом примере файлы jar парсера и модели находятся в одной папке.
Примечание 2:
- Имя файла анализатора Стэнфорда: stanford-parser.jar
- Имя файла моделей Стэнфорда: stanford-parser-x.x.x-models.jar
Примечание 3:
Файл englishPCFG.ser.gz находится внутри файла models.jar (/edu/stanford/nlp/models/lexparser/englishPCFG.ser.gz). Пожалуйста, используйте менеджер архивов для распаковки файла models.jar.