Это 4-й день моего участия в ноябрьском испытании обновлений.Подробности о событии:Вызов последнего обновления 2021 г.
Кратко
BERT и RoBERTa достигли результатов SOTA в задачах регрессии пар предложений, таких как семантическое сходство текста. Однако всем им необходимо скормить в сеть два предложения одновременно, что приводит к огромным вычислительным затратам: требуется около 50 миллионов () вычисления логических выводов, которые заняли около 65 часов на графическом процессоре V100. Эта структура делает BERT непригодным для поиска семантического подобия и в равной степени непригодным для неконтролируемых задач, таких как кластеризация.
Обычный подход к решению проблемы кластеризации и семантического поиска состоит в том, чтобы отображать каждое предложение в векторное пространство таким образом, чтобы семантически схожие предложения находились близко друг к другу. Обычно существует два способа получения векторов предложений:
- Вычислить среднее значение всех выходных векторов токена
- использовать
[CLS]
вектор позиционных выходов
Однако исследователи из UKP обнаружили, что в задаче на сходство текста (STS) результаты, полученные с использованием двух вышеупомянутых методов, были не очень хорошими, и даже вектор перчатки был значительно лучше, чем простые вложения предложений BERT (см. рисунок ниже). Ряд)
Sentence-BERT(SBERT)Авторы предварительно обученного BERT вносят модификации: используют **Siamese and Triplet Network** для генерации векторов встраивания предложений с семантикой. Для предложений с похожей семантикой векторное расстояние вложения относительно близко, так что косинусное сходство, манхэттенское расстояние, евклидово расстояние и т. д. можно использовать для поиска предложений с похожей семантикой. При обеспечении точности SBERT может сократить вышеупомянутые 65 часов BERT/RoBERTa до 5 секунд (при вычислении косинусного сходства около 0,01 секунды). Таким образом, SBERT может выполнять некоторые новые конкретные задачи, такие как кластеризация, семантический поиск информации и т. д.
Введение модели
Стратегия объединения
SBERT добавляет операцию объединения к выходным данным BERT/RoBERTa для создания предложения Embedding с фиксированным размером. В эксперименте для сравнения использовались три стратегии Пулинга:
- CLS: напрямую используйте выходной вектор положения CLS как весь вектор предложения
- СРЕДНИЙ: вычислить среднее значение всех выходных векторов токена как всего вектора предложения.
- MAX: возьмите максимальное значение каждого измерения всех выходных векторов токена как весь вектор предложения.
Экспериментальное сравнение трех стратегий выглядит следующим образом.
Из результатов видно, что эффект MEAN наилучший, поэтому стратегия MEAN также принимается по умолчанию в последующих экспериментах.
Структура модели
Чтобы иметь возможность тонкой настройки BERT/RoBERTa, в статье используется двойная сеть и тройная сеть для обновления параметров, чтобы сгенерированные векторы предложений были более информативными семантически. Структура сети зависит от конкретных обучающих данных.В этой статье тестируются следующие механизмы и целевые функции.
Classification Objective Function
Для задач классификации автор использует векторТри вектора объединяются вместе, а затем умножаются на весовой параметр.,впредставляет размерность вектора,Указывает количество этикеток
Функция потерь CrossEntropyLoss
Примечание. Исходная формулаЯ лично предпочитаю использоватьУказывает значение векторного сплайсинга
Regression Objective Function
Два вектора встраивания предложенийСтруктура вычисления косинусного подобия выглядит следующим образом, а функция потерь — MAE (среднеквадратичная ошибка).
Triplet Objective Function
Для получения дополнительной информации о Triplet Network см. мою статьюSiamese Network & Triplet NetWork. с учетом главного предложения, положительное предложениеи отрицательное предложение, тройная потеря настраивает сеть таким образом, чтоиРасстояние между ними как можно меньше,иРасстояние между ними максимально большое. Математически мы ожидаем минимизировать следующую функцию потерь:
в,выразить приговорвложение,Указывает расстояние, параметр краявыражатьирасстояние должно быть не менееиЗакрыть. В экспериментах, используя евклидово расстояние в качестве метрики расстояния,установить на 1
Детали обучения модели
Автор объединяет наборы данных SNLI (Stanford Natural Language Inference) и Multi-Genre NLI для обучения. В SNLI имеется 570 000 пар предложений, аннотированных вручную с меткамипротиворечие, заключение, нейтральностьТри; MultiNLI — это обновленная версия SNLI с тем же форматом и метками, 430 000 пар предложений, в основном наборы устного и письменного текста.
Отношение импликации описывает отношение рассуждений между двумя текстами, один из которых является предпосылкой (Premise), а другой — гипотезой (Hypothesis). Эталонный образец выглядит следующим образом:
Sentence A (Premise) | Sentence B (Hypothesis) | Label |
---|---|---|
A soccer game with multiple males playing. | Some men are playing a sport. | entailment |
An older and younger man smiling. | Two men are smiling and laughing at the cats playing on the floor. | neutral |
A man inspects the uniform of a figure in some East Asian country. | The man is sleeping. | contradiction |
В ходе эксперимента автор использовал целевую функцию классификации Softmax категории 3 для тонкой настройки SBERT, batch_size=16, оптимизатор Adam, learning_rate=2e-5.
Абляционные исследования
Чтобы провести исследования абляции по различным аспектам SBERT, чтобы лучше понять их относительную важность, мы строим модели классификации на наборах данных SNLI и Multi-NLI и модели регрессии на наборе эталонных данных STS. В стратегии объединения сравниваются три стратегии MEAN, MAX и CLS, а в целевой функции классификации сравниваются различные методы комбинирования векторов. Результат выглядит следующим образом
Результаты показывают, что стратегия объединения оказывает меньшее влияние, стратегия комбинирования векторов оказывает большее влияние илучший эффект
Reference
- Чтение статьи | Предложение-BERT: вложения предложений с использованием сиамских сетей BERT
- Расширенные вложения предложений с использованием Sentence-BERT — Часть I
- Sentence-BERT: Sentence Embeddings using Siamese BERT-Networks (EMNLP 2019)
- Sentence-BERT: сиамская сеть для быстрого вычисления предложений