Архитектурный мотив в нейронных сетях для агрегации информации.
В нейронных сетях слой пула — это своего рода сетевой слой , который понижает и агрегирует информацию, распределенную по многим векторам, в меньшее количество векторов. [1] Он имеет несколько применений. Он удаляет избыточную информацию, уменьшая объем требуемых вычислений и памяти, делает модель более устойчивой к небольшим изменениям во входных данных и увеличивает рецептивное поле нейронов в более поздних слоях сети.
Объединение сверточных нейронных сетей
Подбор наиболее часто используется в сверточных нейронных сетях (CNN). Ниже приведено описание подбора в 2-мерных CNN. Обобщение на n-мерности происходит немедленно.
В качестве обозначения мы рассматриваем тензор , где — высота, — ширина, — количество каналов. Слой объединения выводит тензор .
Мы определяем две переменные, называемые «размер фильтра» (он же «размер ядра») и «шаг». Иногда необходимо использовать разные размер фильтра и шаг для горизонтальных и вертикальных направлений. В таких случаях мы определяем 4 переменные .
Рецептивное поле записи в выходном тензоре — это все записи , которые могут повлиять на эту запись.
Максимальное объединение
Метод максимального пула (MaxPool) обычно используется в сверточных нейронных сетях для уменьшения пространственных измерений карт признаков.
Определим, где означает диапазон . Обратите внимание, что нам нужно избежать ошибки «на единицу» . Следующий вход — и так далее. Рецептивное поле — , поэтому в общем случае, Если горизонтальный и вертикальный размер фильтра и шаги различаются, то в общем случае, Более кратко, мы можем записать .
Если не выражается как , где — целое число, то для вычисления записей выходного тензора на границах, max pooling попытается взять в качестве входных переменных из тензора. В этом случае то, как обрабатываются эти несуществующие переменные, зависит от условий заполнения , проиллюстрированных справа.
Глобальный максимальный пул (GMP) — это особый вид максимального пулинга, где выходной тензор имеет форму , а рецептивное поле — это все . То есть, он берет максимум по каждому полному каналу. Он часто используется непосредственно перед окончательными полностью связанными слоями в голове классификации CNN.
Средний пул
Среднее объединение (AvgPool) определяется аналогично. Глобальное среднее объединение (GAP) определяется аналогично GMP. Впервые оно было предложено в Network-in-Network. [2] Подобно GMP, оно часто используется непосредственно перед окончательными полностью связанными слоями в заголовке классификации CNN.
Интерполяции
Существуют некоторые интерполяции максимального и среднего пула.
Смешанное пулинговое объединение представляет собой линейную сумму максимального пулингового объединения и среднего пулингового объединения. [3] То есть,
где — это либо гиперпараметр, либо обучаемый параметр, либо он каждый раз выбирается заново случайным образом.
Lp Pooling похож на усредненный pooling, но использует Lp norm average вместо average: где — размер рецептивного поля, а — гиперпараметр. Если все активации неотрицательны, то усредненный pooling — случай , а maxpooling — случай . Square-root pooling — случай . [4]
Стохастическое объединение выбирает случайную активацию из рецептивного поля с вероятностью . Это то же самое, что и среднее объединение в ожидании . [5]
Softmax pooling похож на maxpooling, но использует softmax , т.е. где . Average pooling — случай , а maxpooling — случай [4]
Локальное пулинговое объединение на основе важности обобщает softmax-пулинг, где — обучаемая функция. [6]
Другие объединения
Пространственное пирамидальное объединение применяет максимальное объединение (или любую другую форму объединения) в пирамидальной структуре . То есть, оно применяет глобальное максимальное объединение, затем применяет максимальное объединение к изображению, разделенному на 4 равные части, затем 16 и т. д. Затем результаты объединяются. Это иерархическая форма глобального объединения, и подобно глобальному объединению, оно часто используется непосредственно перед заголовком классификации. [7]
Объединение областей интереса (также известное как объединение RoI) — это вариант максимального объединения, используемый в R-CNN для обнаружения объектов . [8] Он предназначен для приема входной матрицы произвольного размера и вывода выходной матрицы фиксированного размера.
Ковариационное объединение вычисляет ковариационную матрицу векторов , которая затем сглаживается до -мерного вектора . Глобальное ковариационное объединение используется аналогично глобальному максимальному объединению. Поскольку среднее объединение вычисляет среднее, которое является статистикой первой степени , а ковариация является статистикой второй степени, ковариационное объединение также называется «объединением второго порядка». Его можно обобщить до объединений более высокого порядка. [9] [10]
Blur Pooling означает применение метода размытия перед понижением частоты дискретизации. Например, размытие Rect-2 означает взятие среднего пула при , а затем взятие каждого второго пикселя (тождественность с ). [11]
Объединение, подобное BERT, использует фиктивный[CLS]токен («классификация»). Для классификации выходными данными[CLS]является токен классификации, который затем обрабатывается модулем LayerNorm -feedforward-softmax в распределение вероятностей, которое является предсказанием сети распределения вероятностей классов. Это то, что используется в оригинальном ViT [12] и Masked Autoencoder . [13]
Глобальное среднее объединение (GAP) не использует фиктивный токен, а просто берет среднее значение всех выходных токенов в качестве токена классификации. Это было упомянуто в оригинальном ViT как одинаково хорошее. [12]
Многоголовое объединение внимания (MAP) применяет многоголовый блок внимания к объединению. В частности, он принимает в качестве входных данных список векторов , которые можно рассматривать как выходные векторы слоя ViT. Затем он применяет слой прямой связи к каждому вектору, что приводит к матрице . Затем это отправляется в многоголовое внимание, что приводит к , где — матрица обучаемых параметров. [14] Впервые это было предложено в архитектуре Set Transformer. [15]
Более поздние работы продемонстрировали, что GAP и MAP работают лучше, чем объединение по типу BERT. [14] [16]
Графическое нейронное сетевое объединение
В графовых нейронных сетях (GNN) также существуют две формы пулинга: глобальный и локальный. Глобальный пул может быть сведен к локальному пулингу, где рецептивное поле представляет собой весь выход.
Локальное объединение : локальный слой объединения огрубляет граф посредством понижения частоты дискретизации . Локальное объединение используется для увеличения рецептивного поля GNN, аналогично объединению слоев в сверточных нейронных сетях . Примерами являются объединение k-ближайших соседей , объединение top-k [17] и объединение собственного внимания. [18]
Глобальное объединение : глобальный слой объединения, также известный как слой считывания , обеспечивает представление всего графа фиксированного размера. Глобальный слой объединения должен быть инвариантным к перестановкам, так что перестановки в порядке узлов и ребер графа не изменяют конечный вывод. [19] Примеры включают поэлементную сумму, среднее или максимум.
Локальные слои пула огрубляют граф посредством понижения частоты дискретизации. Мы представляем здесь несколько обучаемых стратегий локального пула, которые были предложены. [19] Для каждого случая входными данными является исходный граф, представленный матрицей признаков узлов и матрицей смежности графа . Выходными данными является новая матрица признаков узлов и новая матрица смежности графа .
Объединение топ-k
Сначала мы устанавливаем
где — изучаемый вектор проекции . Вектор проекции вычисляет скалярное значение проекции для каждого узла графа.
Слой объединения top-k [17] можно формализовать следующим образом:
где — подмножество узлов с наивысшими оценками проекции top-k, обозначает поэлементное умножение матриц , а — сигмоидальная функция . Другими словами, узлы с наивысшими оценками проекции top-k сохраняются в новой матрице смежности . Операция делает вектор проекции обучаемым с помощью обратного распространения , которое в противном случае давало бы дискретные выходные данные. [17]
Объединение собственного внимания
Сначала мы устанавливаем
где — это общий перестановочно-эквивариантный слой GNN (например, GCN, GAT, MPNN).
Слой объединения собственного внимания [18] можно формализовать следующим образом:
где — подмножество узлов с наивысшими оценками проекций top-k, обозначает поэлементное умножение матриц .
Слой пула собственного внимания можно рассматривать как расширение слоя пула top-k. В отличие от пула top-k, оценки собственного внимания, вычисляемые в пуле собственного внимания, учитывают как особенности графа, так и топологию графа.
История
В начале 20 века нейроанатомы заметили определенный мотив, где несколько нейронов образуют синапсы с одним и тем же нейроном. Этому было дано функциональное объяснение как «локальное объединение», которое делает зрение инвариантным к трансляции. (Hartline, 1940) [20] предоставили подтверждающие доказательства теории с помощью электрофизиологических экспериментов на рецептивных полях ганглиозных клеток сетчатки. Эксперименты Хьюбела и Визеля показали, что система зрения у кошек похожа на сверточную нейронную сеть, в которой некоторые клетки суммируют входы с нижнего слоя. [21] : Рис. 19, 20 См. (Westheimer, 1965) [22] для ссылок на эту раннюю литературу.
В 1970-х годах для объяснения эффектов восприятия глубины некоторые, такие как ( Julesz and Chang, 1976) [23], предположили, что зрительная система реализует механизм селективности по диспаратности путем глобального объединения, где выходные данные от соответствующих пар ретинальных областей двух глаз объединяются в клетки более высокого порядка. См. [24] для ссылок на эту раннюю литературу.
В искусственных нейронных сетях метод максимального пула использовался в 1990 году для обработки речи (одномерная свертка). [25]
^ Чжан, Астон; Липтон, Закари; Ли, Му; Смола, Александр Дж. (2024). "7.5. Объединение". Погружение в глубокое обучение . Кембридж, Нью-Йорк, Порт Мельбурн, Нью-Дели, Сингапур: Cambridge University Press. ISBN 978-1-009-38943-3.
^ Юй, Динцзюнь; Ван, Ханьли; Чэнь, Пэйцю; Вэй, Чжихуа (2014). «Смешанное объединение для сверточных нейронных сетей». В Мяо, Дуоцянь; Педриц, Витольд; Шлцзак, Доминик; Питерс, Георг; Ху, Цинхуа; Ван, Руйчжи (ред.). Грубые множества и технология знаний . Конспект лекций по информатике. Том 8818. Чам: Springer International Publishing. стр. 364–375. doi :10.1007/978-3-319-11740-9_34. ISBN978-3-319-11740-9.
^ ab Boureau, Y-Lan; Ponce, Jean; LeCun, Yann (2010-06-21). "Теоретический анализ объединения признаков в визуальном распознавании". Труды 27-й Международной конференции по машинному обучению . ICML'10. Мэдисон, Висконсин, США: Omnipress: 111–118. ISBN978-1-60558-907-7.
^ Зейлер, Мэтью Д.; Фергус, Роб (15.01.2013). «Стохастическое объединение для регуляризации глубоких сверточных нейронных сетей». arXiv : 1301.3557 [cs.LG].
^ Гао, Зитенг; Ван, Лимин; Ву, Ганшань (2019). «LIP: объединение на основе локальной важности»: 3355–3364. arXiv : 1908.04156 .{{cite journal}}: Цитировать журнал требует |journal=( помощь )
^ He, Kaiming; Zhang, Xiangyu; Ren, Shaoqing; Sun, Jian (2015-09-01). «Пространственное пирамидальное объединение в глубоких сверточных сетях для визуального распознавания». Труды IEEE по анализу образов и машинному интеллекту . 37 (9): 1904–1916. arXiv : 1406.4729 . doi : 10.1109/TPAMI.2015.2389824. ISSN 0162-8828. PMID 26353135.
^ Чжан, Астон; Липтон, Закари; Ли, Му; Смола, Александр Дж. (2024). "14.8. Региональные CNN (R-CNN)". Погружение в глубокое обучение . Кембридж, Нью-Йорк, Порт Мельбурн, Нью-Дели, Сингапур: Cambridge University Press. ISBN978-1-009-38943-3.
^ Тузел, Онцель; Порикли, Фатих; Меер, Питер (2006). «Ковариация регионов: быстрый дескриптор для обнаружения и классификации». В Леонардис, Алеш; Бишоф, Хорст; Пинц, Аксель (ред.). Компьютерное зрение – ECCV 2006. Том 3952. Берлин, Гейдельберг: Springer Berlin Heidelberg. стр. 589–600. doi :10.1007/11744047_45. ISBN978-3-540-33834-5. Получено 2024-09-09 .
^ Ван, Цилун; Се, Цзянтао; Цзо, Ванменг; Чжан, Лэй; Ли, Пэйхуа (2020). «Глубокие сверточные нейронные сети встречают глобальное ковариационное объединение: лучшее представление и обобщение». Труды IEEE по анализу шаблонов и машинному интеллекту . 43 (8): 2582–2597. arXiv : 1904.06836 . doi : 10.1109/TPAMI.2020.2974833. ISSN 0162-8828. PMID 32086198.
^ Чжан, Ричард (27.09.2018). «Снова делаем сверточные сети инвариантными к сдвигу». arXiv : 1904.11486 .{{cite journal}}: Цитировать журнал требует |journal=( помощь )
^ аб Досовицкий, Алексей; Бейер, Лукас; Колесников, Александр; Вайссенборн, Дирк; Чжай, Сяохуа; Унтертинер, Томас; Дегани, Мостафа; Миндерер, Матиас; Хейгольд, Георг; Гелли, Сильвен; Ушкорейт, Якоб (3 июня 2021 г.). «Изображение стоит 16x16 слов: преобразователи для распознавания изображений в масштабе». arXiv : 2010.11929 [cs.CV].
^ He, Kaiming; Chen, Xinlei; Xie, Saining; Li, Yanghao; Dollar, Piotr; Girshick, Ross (июнь 2022 г.). «Masked Autoencoders Are Scalable Vision Learners». Конференция IEEE/CVF 2022 года по компьютерному зрению и распознаванию образов (CVPR) . IEEE. стр. 15979–15988. arXiv : 2111.06377 . doi : 10.1109/cvpr52688.2022.01553. ISBN978-1-6654-6946-3.
^ ab Zhai, Xiaohua; Kolesnikov, Alexander; Houlsby, Neil; Beyer, Lucas (июнь 2022 г.). «Масштабирование трансформеров зрения». Конференция IEEE/CVF по компьютерному зрению и распознаванию образов (CVPR) 2022 г. IEEE. стр. 1204–1213. arXiv : 2106.04560 . doi :10.1109/cvpr52688.2022.01179. ISBN978-1-6654-6946-3.
^ Ли, Джухо; Ли, Юнхо; Ким, Чонгтек; Косиорек, Адам; Чой, Сынджин; Тех, Йи Уай (24.05.2019). «Трансформатор множеств: структура для нейронных сетей, инвариантных к перестановкам, основанных на внимании». Труды 36-й Международной конференции по машинному обучению . PMLR: 3744–3753. arXiv : 1810.00825 .
^ Карамчети, Сиддхарт; Наир, Сурадж; Чен, Энни С.; Коллар, Томас; Финн, Челси; Садиг, Дорса; Лян, Перси (2023-02-24). «Обучение представлению на основе языка для робототехники». arXiv : 2302.12766 [cs.RO].
^ Вестхаймер, Г. (декабрь 1965 г.). «Пространственное взаимодействие в сетчатке человека во время скотопического зрения». Журнал физиологии . 181 (4): 881–894. doi :10.1113/jphysiol.1965.sp007803. ISSN 0022-3751. PMC 1357689. PMID 5881260 .
^ Julesz, Bela; Chang, Jih Jie (март 1976). «Взаимодействие между пулами детекторов бинокулярной диспаратности, настроенных на разные диспаратности». Biological Cybernetics . 22 (2): 107–119. doi :10.1007/BF00320135. ISSN 0340-1200. PMID 1276243.
^ Шумер, Роберт; Ганц, Лео (1979-01-01). «Независимые стереоскопические каналы для различных степеней пространственного объединения». Vision Research . 19 (12): 1303–1314. doi :10.1016/0042-6989(79)90202-5. ISSN 0042-6989. PMID 532098.
^ Ямагучи, Коити; Сакамото, Кэндзи; Акабане, Тосио; Фудзимото, Ёсидзи (ноябрь 1990 г.). Нейронная сеть для распознавания изолированных слов, не зависящих от говорящего. Первая международная конференция по обработке устной речи (ICSLP 90). Кобе, Япония. Архивировано из оригинала 2021-03-07 . Получено 2019-09-04 .