spacy: добавлен поиск лемматизатора для голландского (nl) языка - PullRequest
0 голосов
/ 25 апреля 2018

Я использую Spacy 2.0.11 с моделью голландского языка nl_core_news_sm (nl). Как я могу добавить поиск лемматизации, аналогичный реализации для немецкого (de)?

Я попробовал следующие шаги:

  • добавить поиск к init .py в языковой папке (nl)
  • добавить lemmatizer.py в языковую папку (nl)

Это привело к следующей ошибке после 'nlp = nl_core_news_sm.load ()' или 'из spacy.lang.nl import Dutch':

ModuleNotFoundError: нет модуля с именем 'spacy.lang.nl.lemmatizer' Ошибка импорта: [E048] Невозможно импортировать язык nl из spacy.lang

Ответы [ 2 ]

0 голосов
/ 07 мая 2018

Теоретически, ваш подход верен - если вы копируете точно, как это реализовано на немецком и других языках, которые реализуют поиск, он должен работать.

Я подозреваю, что ваша проблема на самом деле другая:к сообщению об ошибке он не может найти модуль spacy.lang.nl.lemmatizer, поэтому spaCy теперь не может импортировать языковой класс Dutch.Вы уверены, что файл lemmatizer.py существует в правильном месте и импортируется правильно?(Если вы этого еще не сделали, я бы также порекомендовал запустить вашу установку для разработки в отдельной среде и собрать spaCy из исходного кода, чтобы избежать странных конфликтов).

0 голосов
/ 25 апреля 2018

Боюсь, что это невозможно, английская модель включает в себя лемматизатор (см. здесь ), а голландская - нет ( здесь ).

это компонент, написанный от руки на основе морфологии языка, поэтому, хотя в Spacy есть модели для голландского языка, этой специфической функции здесь нет.

...