Что такое skip connection (пропускное соединение) в архитектуре нейронных сетей?

«Что такое skip connection (пропускное соединение) в архитектуре нейронных сетей?» — вопрос из категории Нейронные сети и Deep Learning, который задают на 26% собеседований Data Scientist / ML Инженер. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

Skip connection (пропускное соединение) — это архитектурный паттерн, при котором входные данные блока слоев передаются вперед и складываются (или конкатенируются) с выходом этого блока. Это не изобретение ResNet, но именно в ResNet эта идея была применена систематически для решения проблемы деградации глубоких сетей.

Основные типы и применение:

  1. Аддитивные skip-connection (ResNet-style):

    output = F(x, {W_i}) + x

    Используются для сложения тензоров одинаковой размерности. Их главная цель — облегчить обучение, позволяя градиенту течь напрямую. Если блоку F(x) не нужно ничего менять, его веса могут стремиться к нулю, и блок становится почти тождественным.

  2. Конкатенирующие skip-connection (DenseNet-style):

    output = concat( x, F(x, {W_i}) )

    Используются для объединения по глубине (channel dimension). Они явно сохраняют все предыдущие представления, что улучшает поток градиентов и encourages feature reuse, но может быстро увеличивать потребление памяти.

Почему skip connections так эффективны:

  • Решение проблемы исчезающего градиента: Они создают "короткие пути" для обратного распространения ошибки. Градиент может течь напрямую через тождественное соединение без затухания нелинейными функциями активации и матрицами весов.
  • Обучение тождественной функции: Глубокая сеть должна как минимум не быть хуже shallower сети. Skip connections делают это тривиальным — shallower сеть является подмножеством более глубокой (когда дополнительные слои учатся нулевому отображению).
  • Улучшение потока информации: Сеть может выбирать, какую информацию обрабатывать в глубине, а какую передавать неизменной.

Где встречаются, помимо ResNet:

  • Трансформеры: Skip connection окружает каждый sub-layer (Multi-Head Attention и Feed-Forward Network) с последующей нормализацией.
  • U-Net: Конкатенирующие соединения между encoder и decoder для точной локализации в сегментации изображений.
  • Highway Networks: Более общая форма, где пропускное соединение управляется воротами.

По сути, skip connections стали стандартным компонентом для построения глубоких и стабильно обучаемых архитектур.