Я новичок в Spacy и НЛП. Столкнувшись с проблемой ниже при выполнении сегментации предложений с использованием Spacy.
Текст, который я пытаюсь разбить на предложения, содержит нумерованные списки (с пробелом между нумерацией и реальным текстом). Как ниже.
import spacy
nlp = spacy.load('en_core_web_sm')
text = "This is first sentence.\nNext is numbered list.\n1. Hello World!\n2. Hello World2!\n3. Hello World!"
text_sentences = nlp(text)
for sentence in text_sentences.sents:
print(sentence.text)
Вывод (1., 2., 3. Рассматриваются как отдельные строки):
This is first sentence.
Next is numbered list.
1.
Hello World!
2.
Hello World2!
3.
Hello World!
Но если между нумерацией и реальным текстом нет пробела, то токенизация предложения - это хорошо. Как ниже
import spacy
nlp = spacy.load('en_core_web_sm')
text = "This is first sentence.\nNext is numbered list.\n1.Hello World!\n2.Hello World2!\n3.Hello World!"
text_sentences = nlp(text)
for sentence in text_sentences.sents:
print(sentence.text)
Выход (желательно):
This is first sentence.
Next is numbered list.
1.Hello World!
2.Hello World2!
3.Hello World!
пожалуйста, предложите, можем ли мы настроить детектор предложений для этого.