Как использовать результаты модели Берта?

Модель bert дает нам два выхода: один дает нам [batch, maxlen, hiddenstates], а другой - [batch, hidden States of cls token]. Но я не понял, когда использовать конкретный вывод. Может ли кто-нибудь сказать мне, для какой задачи какой вывод следует использовать ??


person Naga Sai    schedule 31.08.2020    source источник


Ответы (1)


Результатом обычно является [batch, maxlen, hidden_state], его можно сузить до [batch, 1, hidden_state] для [CLS] токена, поскольку токен [CLS] является 1-м токеном в последовательности. Здесь [batch, 1, hidden_state] можно эквивалентно рассматривать как [batch, hidden_state].

Поскольку BERT - это контекстная модель на основе преобразователя, идея состоит в том, что [CLS] токен захватил бы весь контекст и был бы достаточен для простых последующих задач, таких как классификация. Следовательно, для таких задач, как классификация с использованием представлений предложений, вы можете использовать [batch, hidden_state]. Однако вы также можете рассмотреть [batch, maxlen, hidden_state], среднее значение по maxlen измерениям, чтобы получить усредненные вложения. Однако для некоторых последовательных задач, таких как классификация с использованием CNN или RNN, требуется последовательность представлений, во время которой вы должны полагаться на [batch, maxlen, hidden_state]. Кроме того, используются некоторые цели обучения, такие как предсказание замаскированных слов или для SQUAD 1.1 (как показано в документе BERT) вся последовательность вложений [batch, maxlen, hidden_state].

person Ashwin Geet D'Sa    schedule 02.09.2020