Сиамская нейронная сеть (иногда называемый твин нейронной сетью ) является искусственной нейронной сетью , которая использует одни и те же веса, работая в тандеме на два различных входных векторах для вычисления сопоставимых выходных векторов. [1] [2] [3] [4] Часто один из выходных векторов предварительно вычисляется, таким образом формируя базовую линию, с которой сравнивается другой выходной вектор. Это похоже на сравнение отпечатков пальцев, но может быть описано более технически как функция расстояния для хеширования с учетом местоположения . [ необходима цитата ]
Можно построить архитектуру, которая функционально похожа на сиамскую сеть, но реализует несколько иную функцию. Обычно это используется для сравнения похожих экземпляров в разных наборах типов. [ необходима цитата ]
В тех случаях, когда может использоваться двойная сеть, меры сходства включают такие вещи, как распознавание рукописных чеков, автоматическое обнаружение лиц на изображениях с камеры и сопоставление запросов с проиндексированными документами. Возможно, наиболее известным применением двойных сетей является распознавание лиц , когда известные изображения людей предварительно вычисляются и сравниваются с изображением с турникета или аналогичного. Сначала это не очевидно, но есть две несколько разные проблемы. Один из них - это распознавание человека среди большого количества других людей, то есть проблема распознавания лиц. DeepFace - пример такой системы. [4] В наиболее экстремальной форме это узнавание одного человека на вокзале или в аэропорту. Другой - проверка лица , то есть проверка того, совпадает ли фотография в пропуске с лицом, утверждающим, что он или она - это одно и то же лицо. Двойная сеть может быть одинаковой, но реализация может быть совершенно другой.
Обучение
Обучение в двойных сетях может быть выполнено с тройной потерей или контрастной потерей . Для обучения по триплетной потере базовый вектор (изображение привязки) сравнивается с положительным вектором (истинное изображение) и отрицательным вектором (ложное изображение). Отрицательный вектор вызовет обучение в сети, а положительный вектор будет действовать как регуляризатор. Для обучения по контрастной потере должно быть уменьшение веса, чтобы упорядочить веса, или некоторая аналогичная операция, такая как нормализация.
Метрика расстояния для функции потерь может иметь следующие свойства [5]
- Неотрицательность:
- Идентичность различимого:
- Симметрия:
- Неравенство треугольника:
В частности, алгоритм триплетных потерь часто определяется квадратом евклидова (который, в отличие от евклидова, не имеет неравенства треугольника) в своей основе.
Предопределенные метрики, метрика евклидова расстояния
Общая цель обучения - минимизировать метрику расстояния для похожих объектов и максимизировать для разных. Это дает функцию потерь вроде
- индексы в набор векторов
- функция, реализуемая двойной сетью
Наиболее распространенной метрикой расстояния является евклидово расстояние , в случае которого функцию потерь можно переписать в матричной форме как
Изученные метрики, нелинейная метрика расстояния
В более общем случае выходной вектор из двойной сети проходит через дополнительные сетевые уровни, реализующие нелинейные метрики расстояния.
- индексы в набор векторов
- функция, реализуемая двойной сетью
- функция, реализуемая сетью, объединяющей выходы из двойной сети
В матричной форме предыдущее часто аппроксимируется как расстояние Махаланобиса для линейного пространства как [6]
В дальнейшем это можно разделить, по крайней мере, на обучение без учителя и обучение с учителем .
Изученные метрики, сети полудвятников
Эта форма также позволяет двойной сети быть более полудвойной, выполняя несколько иные функции.
- индексы в набор векторов
- функция, реализуемая полудвойной сетью
- функция, реализуемая сетью, объединяющей выходы из двойной сети
Двойные сети для отслеживания объектов
Двойные сети использовались в отслеживании объектов из-за их уникальных двух тандемных входов и измерения сходства. При отслеживании объектов один вход двойной сети - это предварительно выбранный пользователем образец изображения, другой вход - это более крупное поисковое изображение, задача которой состоит в том, чтобы найти образец внутри поискового изображения. Путем измерения сходства между образцом и каждой частью поискового изображения двойная сеть может дать карту оценки сходства. Кроме того, при использовании полностью сверточной сети процесс вычисления показателя сходства каждого сектора может быть заменен только одним слоем взаимной корреляции. [7]
Полностью сверточная сеть Twin была впервые представлена в 2016 году и использовалась во многих высокопроизводительных нейронных сетях отслеживания объектов в реальном времени. Подобно CFnet, [8] StructSiam, [9] SiamFC-tri, [10] DSiam, [11] SA-Siam, [12] SiamRPN, [13] DaSiamRPN, [14] Каскадный SiamRPN, [15] SiamMask, [16] ] SiamRPN ++, [17] Более глубокий и широкий SiamRPN. [18]
Смотрите также
дальнейшее чтение
- Chicco, Davide (2020), «Сиамские нейронные сети: обзор» , Искусственные нейронные сети , Методы в молекулярной биологии, 2190 (3-е изд.), Нью-Йорк, Нью-Йорк, США: Протоколы Springer , Humana Press, стр. 73 -94, DOI : 10.1007 / 978-1-0716-0826-5_3 , ISBN 978-1-0716-0826-5, PMID 32804361
Рекомендации
- ^ Chicco, Davide (2020), «Сиамские нейронные сети: обзор» , Искусственные нейронные сети , Методы в молекулярной биологии, 2190 (3-е изд.), Нью-Йорк, Нью-Йорк, США: Протоколы Springer , Humana Press, стр. 73 -94, DOI : 10.1007 / 978-1-0716-0826-5_3 , ISBN 978-1-0716-0826-5, PMID 32804361
- ^ Бромли, Джейн; Гийон, Изабель; ЛеКун, Янн; Сэкингер, Эдуард; Шах, Роопак (1994). «Проверка подписи с использованием« сиамской »нейронной сети с временной задержкой» (PDF) . Достижения в системах обработки нейронной информации 6 : 737–744.
- ^ Chopra, S .; Hadsell, R .; ЛеКун, Ю. (июнь 2005 г.). «Дискриминационное изучение метрики сходства с применением проверки лицом к лицу». Конференция компьютерного общества IEEE 2005 года по компьютерному зрению и распознаванию образов (CVPR'05) . 1 : 539–546 т. 1. дои : 10,1109 / CVPR.2005.202 . ISBN 0-7695-2372-2. S2CID 5555257 .
- ^ а б Taigman, Y .; Ян, М .; Ранзато, М .; Вольф, Л. (июнь 2014 г.). «DeepFace: устранение пробелов в человеческом уровне при проверке лиц». Конференция IEEE 2014 года по компьютерному зрению и распознаванию образов : 1701–1708. DOI : 10.1109 / CVPR.2014.220 . ISBN 978-1-4799-5118-5. S2CID 2814088 .
- ^ Чаттерджи, Майтрейя; Ло, Юнань. «Изучение подобия с (или без) сверточной нейронной сетью» (PDF) . Проверено 7 декабря 2018 .
- ^ Чандра, член парламента (1936). «Об обобщенном расстоянии в статистике» (PDF) . Труды Национального института наук Индии . 1. 2 : 49–55.
- ^ Полностью сверточные сиамские сети для отслеживания объектов arXiv : 1606.09549
- ^ «Сквозное обучение представлению для отслеживания на основе фильтра корреляции» .
- ^ «Структурированная сиамская сеть для визуального отслеживания в реальном времени» (PDF) .
- ^ «Тройная потеря в сиамской сети для отслеживания объектов» (PDF) .
- ^ «Изучение динамической сиамской сети для визуального отслеживания объектов» (PDF) .
- ^ «Двойная сиамская сеть для отслеживания объектов в реальном времени» (PDF) .
- ^ «Высокоэффективное визуальное отслеживание с помощью сети предложений сиамского региона» (PDF) .
- ^ Чжу, Чжэн; Ван, Цян; Ли, Бо; Ву, Вэй; Ян, Цзюньцзе; Ху, Вейминг (2018). "Сиамские сети с учетом отвлекающих факторов для визуального отслеживания объектов". arXiv : 1808.06048 [ cs.CV ].
- ^ Fan, Heng; Линг, Хайбин (2018). «Сиамские каскадные региональные сети предложений для визуального отслеживания в реальном времени». arXiv : 1812.06148 [ cs.CV ].
- ^ Ван, Цян; Чжан, Ли; Бертинетто, Лука; Ху, Вейминг; Торр, Филип Х.С. (2018). «Быстрое отслеживание и сегментация объектов в Интернете: объединяющий подход». arXiv : 1812.05050 [ cs.CV ].
- ^ Ли, Бо; Ву, Вэй; Ван, Цян; Чжан, Фанъи; Син, Цзюньлянь; Ян, Цзюньцзе (2018). «SiamRPN ++: эволюция сиамского визуального отслеживания с очень глубокими сетями». arXiv : 1812.11703 [ cs.CV ].
- ^ Чжан, Чжипэн; Пэн, Хауэн (2019). «Более глубокие и широкие сиамские сети для визуального отслеживания в реальном времени». arXiv : 1901.01660 [ cs.CV ].