Токенизация предложений в spacy - это плохо (?)

Почему разделитель / токенизатор предложений от Spacy плохо работает? nltk вроде работает нормально. Вот мой небольшой опыт:

import spacy
nlp = spacy.load('fr')
import nltk

text_fr = u"Je suis parti a la boulangerie. J'ai achete trois croissants. C'etait super bon."


nltk.sent_tokenize(text_fr)
# [u'Je suis parti a la boulangerie.',
# u"J'ai achete trois croissants.",
# u"C'etait super bon."


doc = nlp(text_fr)
for s in doc.sents: print s
# Je suis parti
# a la boulangerie. J'ai
# achete trois croissants. C'
# etait super bon.

Я замечаю такое же поведение для английского языка. Для этого фрагмента текста:

text = u"I went to the library. I did not know what book to buy, but then the lady working there helped me. It was cool. I discovered a lot of new things."

Я получаю с простором (после nlp=spacy.load('en')):

I
went to the library. I
did not know what book to buy, but
then the lady working there helped me. It was cool. I discovered a
lot of new things.

против этого с nltk, который выглядит хорошо:

[u'I went to the library.',
 u'I did not know what book to buy, but then the lady working there helped me.',
 u'It was cool.',
 u'I discovered a lot of new things.']

person dada    schedule 13.12.2017    source источник
comment
из spacy.io/usage/processing-pipelines: в настоящее время сегментация предложений основана на зависимости синтаксический анализ, который не всегда дает идеальные результаты   -  person dada    schedule 13.12.2017
comment
Моя версия spacy была слишком старой (0.100), с v2 spacy работает должным образом   -  person dada    schedule 13.12.2017
comment
Да обнови свою просторную версию.   -  person alvas    schedule 14.12.2017
comment
Имейте в виду, что вы можете определить собственный разделитель предложений: spacy.io/usage/processing- конвейеры # component-example1   -  person erickrf    schedule 21.03.2018


Ответы (1)


Не знаю как, но оказалось, что я использовал старую версию spacy (v 0.100). Я снова установил последнюю версию Spacy (v2.0.4), и теперь разделение предложений более связное.

person dada    schedule 16.01.2018
comment
Спасибо за обновление! Вы можете отметить это как официальный ответ (см. stackoverflow.com/help/accepted-answer) - person xenocyon; 24.05.2018