Я намеревался обучить пользовательскому POS-Tagger и Dependency Parser в spaCy для шведского языка.Я следовал инструкциям на https://spacy.io/usage/training и обучил модели файлам конверу Швед-Тальбанкена.Эти шаги прошли хорошо, и в итоге я выбрал собственную модель.Затем я загрузил модель и попробовал небольшой пример:
nlp = spacy.load(name=os.path.join(spacy_path, 'models/model-best'))
doc = nlp(u'Jag heter Alex Nilsson. Hon heter Lina')
# My name is Alex Nilsson. Her name is Lina
for token in doc:
print(token.text, token.pos_, token.dep_)
# OUTPUT:
#Jag PRON nsubj
#heter VERB ROOT
#Alex PROPN obj
#Nilsson PROPN flat:name
#. PUNCT punct
#Hon PRON nsubj
#heter VERB parataxis
#Lina PROPN obj
Кажется, что POS-Tagger и Dependency Parser работают.Что не сработало, так это сегментация предложения и куски существительного
for sent in doc.sents:
print(sent.text)
# OUTPUT:
#Jag heter Alex. Hon heter Lina
for chunk in doc.noun_chunks:
print(chunk.text, chunk.root.text, chunk.root.dep_,
chunk.root.head.text)
# OUTPUT:
#
Таким образом, нет разделения на предложения и нет вывода для существительных кусков.Насколько я понимаю, spaCy использует анализатор зависимостей для обеих функций.Но, как показано выше, анализатор зависимостей должен работать просто отлично.Нужно ли что-то еще, чтобы эти два работали?Может быть, я упускаю что-то очевидное?
Я благодарен за любую помощь!