У меня есть анализатор постоянных участников со строковым выводом следующим образом:
'(SQ (VBZ Is) (NP (DT the) (JJ красный) (температура NN) (датчик NN)) (VP (Показ VBG) (NP (ошибка NN) (CD 7))) (.?)) '
Как извлечь второй слой дерева? т.е. если корень - это целое предложение («Красный датчик температуры показывает ошибку 7?»), тогда я хочу вернуть
(VBZ Is) - это
(NP (DT)the) (JJ красный) (температура NN) (датчик NN)) - красный датчик температуры
(VP (показывает VBG) (NP (ошибка NN) (CD 7))). - Отображение ошибки 7
Конечная цель состоит в том, чтобы автоматически извлечь NP и VP и объединить их в сущность, извлеченную из вопроса.
Я использую spacy и, в частности,Парсер избирательного округа Беркли