Заказ / контекстно-зависимый документ / предложение для векторов в Spacy - PullRequest
0 голосов
/ 06 мая 2020

Я хотел бы выполнять несколько контролируемых задач двоичной классификации с предложениями, и я использовал spaCy из-за его простоты использования. Я использовал spaCy для преобразования текста в векторы, а затем отправил векторы в модель машинного обучения (например, XGBoost) для выполнения классификации. Однако результаты не были очень удовлетворительными.

В spaCy легко загрузить модель (например, BERT / Roberta / X LNet) для преобразования слов / предложений в nlp объекты. Однако прямой вызов вектора объекта приведет к по умолчанию к среднему значению векторов токенов.

Вот два вопроса:

1) Можем ли мы сделать лучше, чем просто получить среднее значение векторов лексем, например, имея векторы предложений с учетом контекста / порядка с помощью spaCy? Например, можем ли мы извлечь вложение предложения из предыдущего уровня преобразователя BERT вместо конечных векторов токенов в spaCy?

2) Было бы лучше напрямую использовать spaCy для обучения последующей задачи двоичной классификации? Например, здесь обсуждает , как добавить текстовый классификатор в модель spaCy. Или вообще лучше применять более мощные модели машинного обучения, такие как XGBoost?

Заранее спасибо!

1 Ответ

0 голосов
/ 14 июля 2020

Я обнаружил, что это обсуждается на странице ниже. Может быть, это помогает.

"Большинство людей обычно принимают только скрытые состояния токена [CLS] последнего уровня - использование скрытых состояний для всех токенов или из нескольких уровней обычно не очень помогает. "

https://github.com/huggingface/transformers/issues/1950

...