BERT и RoBERTa требуют, чтобы оба предложения передавались в сеть, что приводит к огромным вычислительным затратам: поиск наиболее похожей пары в наборе из 10 000 предложений требует около 50 миллионов вычислений логического вывода (~ 65 часов) с помощью BERT. Конструкция BERT делает его непригодным для поиска семантического сходства, а также для неконтролируемых задач, таких как кластеризация.
Sentence-BERT (SBERT) представляет собой модификацию предварительно обученной сети BERT, в которой используются сиамские и тройные сетевые структуры для получения семантически значимых вложений предложений, которые можно сравнивать с использованием косинусного сходства. Это сокращает усилия по поиску наиболее похожей пары с 65 часов с помощью BERT/RoBERTa до примерно 5 секунд с помощью SBERT, сохраняя при этом точность BERT.
Архитектура
SBERT добавляет операцию объединения к выходным данным BERT/RoBERTa для получения встраивания предложения фиксированного размера. Мы экспериментируем с тремя стратегиями объединения:
- Использование вывода CLS-токена
- Вычисление среднего значения всех выходных векторов (стратегия MEAN)
- Вычисление максимального времени выходных векторов (MAX-стратегия).
Конфигурация по умолчанию СРЕДНЯЯ
Для точной настройки BERT/RoBERTa мы создаем сиамские и триплетные сети для обновления весов таким образом, чтобы полученные вложения предложений были семантически значимыми и их можно было сравнить с косинусным сходством.
Целевая функция классификации
Вложения предложений u и v объединяются с поэлементной разностью |u−v| и умножается на обучаемый вес Wt и оптимизируется кросс-энтропийная потеря:
Целевая функция регрессии
Вычисляется косинусное сходство между двумя вложениями предложений u и v, и в качестве целевой функции используется потеря среднего квадрата ошибки.
Целевая функция тройки
Учитывая якорное предложение a, положительное предложение p и отрицательное предложение n, потеря триплетов настраивает сеть таким образом, чтобы расстояние между a и p было меньше, чем расстояние между a и n.
Математически мы минимизируем следующую функцию потерь:
Обучение и оценка
SBERT обучен сочетанию SNLI и набора данных Multi-Genre NLI. SNLI представляет собой набор из 570 000 пар предложений, аннотированных ярлыками противоречие, недоразумение и нейтральность. MultiNLI содержит 430 000 пар предложений и охватывает целый ряд жанров устного и письменного текста.
Производительность SBERT оценивается для общих задач семантического текстового подобия (STS).
Косинусное сходство используется для сравнения сходства двух вложений предложений.
Бумага
Предложение-BERT: встраивание предложений с использованием сиамских сетей BERT 1908.10084
Просмотреть все темы этой серии здесь