Толковый словарь по нейросетям и искусственному интеллекту
Плотный блок
Категория термина
Плотный блок (Dense Block) — это архитектурный элемент нейронных сетей, предложенный в модели DenseNet (Densely Connected Convolutional Networks). Он основан на идее плотных (dense) связей между слоями, где каждый слой получает на вход все выходы предыдущих слоёв, а его собственный выход передаётся всем последующим. Такой подход обеспечивает эффективное повторное использование признаков и улучшает распространение градиента в очень глубоких сетях.
🧩 Структура Dense Block
- Входные данные проходят через первый слой, результат сохраняется.
- Каждый следующий слой принимает на вход конкатенацию (объединение по каналам) всех предыдущих выходов.
- Каждый слой обычно включает:
- свёрточные операции,
- активации (ReLU/LeakyReLU),
- нормализацию (Batch Normalization или Layer Normalization).
Формально:
xl=Hl([x0,x1,...,xl−1])x_l = H_l([x_0, x_1, ..., x_{l-1}])где HlH_l — преобразование в слое ll, а [x0,...,xl−1][x_0, ..., x_{l-1}] — конкатенация признаков.
🔑 Принцип работы
- Вместо передачи только последнего выхода, сеть сохраняет и использует все промежуточные признаки.
- Благодаря этому низкоуровневые признаки (например, края, текстуры) доступны на более поздних стадиях и комбинируются с высокоуровневыми признаками (формы, объекты).
- Плотные связи улучшают обучение за счёт эффективного распространения градиентов и снижения проблемы затухающих градиентов.
📌 Применения
- DenseNet — классификация изображений (ImageNet, CIFAR).
- ESRGAN и RRDB — суперразрешение изображений.
- Сегментация (DenseASPP, U-Net модификации) — использование плотных связей для извлечения многоуровневых признаков.
- Генеративные модели — извлечение детализированных признаков для апскейлинга и восстановления.
⚖️ Преимущества
- Улучшает обучение очень глубоких сетей.
- Эффективно использует параметры за счёт повторного использования признаков.
- Снижает проблему переобучения благодаря регуляризации через связи.
- Обеспечивает более богатое представление данных.
🧠 Связанные понятия
- Residual Block — похожая идея, но с суммированием признаков вместо конкатенации.
- Skip Connection — основа для плотных связей.
- RRDB (Residual-in-Residual Dense Block) — комбинация Dense Block и Residual Block.
Таким образом, Dense Block — это блок в архитектуре нейросети, где каждый слой напрямую связан со всеми предыдущими, что обеспечивает максимальное повторное использование признаков и улучшает обучение глубоких моделей.