Самый эффективный парсер в NLTK? - PullRequest
0 голосов
/ 01 марта 2019

Я не могу найти алгоритм синтаксического анализа в NLTK, который анализирует предложение в течение разумного промежутка времени при создании экземпляра с большой грамматикой (при обучении более чем 20 или более файловым файлам в Penn Treebank анализы занимают несколько минут или дольше, в зависимости отпо алгоритму синтаксического анализа).Я использую весь банк деревьев для обучения - все ~ 2400 файловых файлов - поэтому такое количество времени на каждое предложение неосуществимо, поскольку я пытаюсь проанализировать весь набор тестов этого дерева (файловые файлы 2 300 - 2 399).

Алгоритмы, которые я до сих пор пробовал:

  • ViterbiParser

  • Все алгоритмы ChartParser

  • RecursiveDescentParser (фактически завершается с RecursionError сразу после запуска)

Если есть какой-либо алгоритм, который может быстро анализировать при обучении большой грамматике (даже если он не содержитсяв библиотеке НЛТК), я был бы признателен за указание в этом направлении.

Мне известен модуль CoreNLPParser, однако, насколько я знаю, его можно вызывать только с уже загруженной грамматикой, что не соответствует моему требованию, так как я ищу алгоритм для оценки по отношению к Penn Treebank.набор тестов, и, следовательно, нужна способность определять грамматику, которая будет использоваться алгоритмом.

...