Я хочу использовать анализатор зависимостей spaCy, чтобы определить область отрицания в моем документе.
У меня есть следующий код:
import spacy
nlp = spacy.load("en_core_web_sm")
doc = nlp(u'Hi alll, some dividend is omnipresent even if not paid')
negation_tokens = [tok for tok in doc if tok.dep_ == 'neg']
negation_head_tokens = [token.head for token in negation_tokens]
print(negation_tokens) # not
print(negation_head_tokens) # paid
for token in negation_head_tokens:
# print(token.text, token.dep_, token.head.text, token.head.pos_, [child for child in token.children])
start = token.i # 5
end = token.head.i # 10
negated_tokens = doc(start, end) # this an gives error
Желаемый результат должен быть:
is omnipresent even if not paid
Есть предложения?