Тройная потеря
Эта статья может быть слишком технической для понимания большинства читателей . ( Апрель 2019 г. ) |
Триплетная потеря — это функция потерь для алгоритмов машинного обучения , где эталонный входной сигнал (называемый привязкой) сравнивается с совпадающим входным сигналом (называемым положительным) и несовпадающим входным сигналом (называемым отрицательным). Расстояние от якоря до положительного входа минимизируется, а расстояние от якоря до отрицательного входа максимизируется. [1] [2] Ранняя формулировка, эквивалентная триплетной потере, была введена (без идеи использования якорей) для обучения метрике на основе относительных сравнений М. Шульце и Т. Иоахимсом в 2003 году. [3]
Обеспечивая порядок расстояний, триплетные модели потерь встраиваются таким образом, что пара выборок с одинаковыми метками находится на меньшем расстоянии, чем пары с разными метками. В отличие от t-SNE, который сохраняет порядок встраивания [ нужны дальнейшие объяснения ] через распределения вероятностей потеря триплета работает непосредственно на вложенных расстояниях. Следовательно, в его общей реализации требуется мягкая обработка полей с помощью слабой переменной. в формулировке в стиле потери шарнира . Он часто используется для изучения сходства с целью изучения вложений, таких как обучение ранжированию , встраиванию слов , векторам мышления и обучению метрике . [4]
Рассмотрим задачу обучения нейросети распознаванию лиц (например, для пропуска в зону строгого режима). Классификатор, обученный классифицировать экземпляр, придется переобучать каждый раз, когда в базу данных лиц добавляется новый человек. Этого можно избежать, представив проблему как задачу обучения по сходству, а не как задачу классификации. Здесь сеть обучается (с использованием контрастных потерь) выводить расстояние, которое является небольшим, если изображение принадлежит известному человеку, и большим, если изображение принадлежит неизвестному человеку. Однако, если мы хотим вывести изображения, наиболее близкие к данному изображению, нам нужно изучить рейтинг, а не просто сходство. В этом случае используется тройная потеря.
Функцию потерь можно описать с помощью евклидового расстояния функции .
- где является якорным входом , является положительным входом того же класса, что и , это отрицательный вход другого класса от , - это разница между положительными и отрицательными парами, и является вложением.
Затем это можно использовать в функции стоимости, то есть в сумме всех потерь, которую затем можно использовать для минимизации поставленной оптимизации задачи .
Индексы относятся к отдельным входным векторам, заданным в виде тройки. Триплет формируется путем рисования входных данных привязки, положительных входных данных, описывающих тот же объект, что и объект привязки, и отрицательных входных данных, которые не описывают тот же объект, что и объект привязки. Эти входные данные затем пропускаются через сеть, а выходные данные используются в функции потерь.
Сравнение и расширения
[ редактировать ]В задачах компьютерного зрения , таких как повторная идентификация, преобладало мнение, что триплетные потери уступают использованию суррогатных потерь (т. е. типичных потерь классификации), за которыми следуют отдельные этапы обучения метрике. Недавняя работа показала, что для моделей, обученных с нуля, а также для предварительно обученных моделей, специальная версия триплетной потери, выполняющая сквозное глубокое метрическое обучение, превосходит большинство других опубликованных методов по состоянию на 2017 год. [5]
Кроме того, триплетная потеря была расширена для одновременного поддержания ряда дистанционных порядков за счет оптимизации непрерывной степени релевантности с помощью цепочки (т. е. лестницы ) дистанционных неравенств. Это приводит к потере лестницы , которая, как было продемонстрировано, обеспечивает повышение производительности визуально-семантического внедрения при обучении ранжированию задач. [6]
В обработке естественного языка потеря триплета является одной из функций потерь, рассматриваемых для точной настройки BERT в архитектуре SBERT. [7]
Другие расширения включают указание множественных негативов (потеря рейтинга при множестве негативов).
См. также
[ редактировать ]- Сиамская нейронная сеть
- t-распределенное стохастическое встраивание соседей
- Учимся ранжировать
- Обучение по сходству
Ссылки
[ редактировать ]- ^ Чечик, Г.; Шарма, В.; Шалит, У.; Бенджио, С. (2010). «Масштабное онлайн-обучение сходству изображений посредством ранжирования» (PDF) . Журнал исследований машинного обучения . 11 : 1109–1135.
- ^ Шрофф, Ф.; Калениченко Д.; Филбин, Дж. (июнь 2015 г.). «FaceNet: унифицированное внедрение для распознавания лиц и кластеризации». Конференция IEEE 2015 по компьютерному зрению и распознаванию образов (CVPR) . стр. 815–823. arXiv : 1503.03832 . дои : 10.1109/CVPR.2015.7298682 . ISBN 978-1-4673-6964-0 . S2CID 206592766 .
- ^ Шульц, М.; Иоахимс, Т. (2004). «Изучение метрики расстояния на основе относительных сравнений» (PDF) . Достижения в области нейронных систем обработки информации . 16 : 41–48.
- ^ Эйлон, Нир; Хоффер, Элад (20 декабря 2014 г.). «Глубокое метрическое обучение с использованием сети Триплет» . arXiv : 1412.6622 . Бибкод : 2014arXiv1412.6622H .
{{cite journal}}
: Для цитирования журнала требуется|journal=
( помощь ) - ^ Германс, Александр; Бейер, Лукас; Лейбе, Бастиан (22 марта 2017 г.). «В защиту тройной потери при повторной идентификации личности». arXiv : 1703.07737 [ cs.CV ].
- ^ Чжоу, Мо; Ню, Чжэньсин; Ван, Ле; Гао, Чжаннин; Чжан, Цилинь; Хуа, Банда (03 апреля 2020 г.). «Потеря лестницы для последовательного визуально-семантического внедрения» (PDF) . Материалы конференции AAAI по искусственному интеллекту . 34 (7): 13050–13057. дои : 10.1609/aaai.v34i07.7006 . ISSN 2374-3468 . S2CID 208139521 .
- ^ Реймерс, Нильс; Гуревич, Ирина (27.08.2019). «Предложение-BERT: встраивание предложений с использованием сиамских BERT-сетей». arXiv : 1908.10084 [ cs.CL ].