странное поведение spaCy при идентификации синтаксических c зависимых - PullRequest
1 голос
/ 05 августа 2020

Я пытаюсь использовать sapCy для определения синтаксических c зависимых. Я попробовал тот же пример, описанный здесь .

Вот полученные мной результаты:

import spacy

nlp = spacy.load("en_core_web_sm")
doc = nlp("Autonomous cars shift insurance liability toward manufacturers")
for token in doc:
    print(token.text, token.dep_, token.head.text, token.head.pos_,
            [child for child in token.children])

Autonomous amod cars NOUN []
cars nsubj shift VERB [Autonomous]
shift ROOT shift VERB [cars, liability]
insurance compound liability NOUN []
liability dobj shift VERB [insurance, toward]
toward prep liability NOUN [manufacturers]
manufacturers pobj toward ADP []

Почему мои результаты отличаются от документации? Например, синтаксисом c, зависимым от «shift», должно быть «автомобили, ответственность и навстречу». Также у детей от «ответственности» должна быть только «страховка».

1 Ответ

0 голосов
/ 06 августа 2020

Результаты отличаются из-за двух разных версий пакета Spacy. В своей документации они используют версию 2.3.0, которую вы можете увидеть в правом верхнем углу редактора кода.

Скриншот версии

Я получил тот же результат, что и ваш, когда использовал v2.2.4, возможно, вы используете ту же версию. Поэтому вам следует перейти на версию 2.3.0, если вы хотите получить те же результаты, что и в документации

...