Перейти к основному содержимому

Свёрточная сеть для изображений

Свёрточная нейросеть (convolutional neural network) - нейросетевая архитектура, использующая свёртки для генерации промежуточных признаков.

Как мы видели, эта архитектура может применяться для обработки последовательностей, таких как текст на естественном языке. В этом разделе рассмотрим свёрточную нейросеть для классификации изображений. Типичная архитектура показана на рисунке [1]:

Вначале действуют свёрткинелинейностями) и пулинги, которые постепенно снижают пространственное разрешение промежуточного представления. Чтобы при этом частично компенсировать потерю информации, число каналов на более глубоких слоях увеличивается. Когда представление начинает содержать достаточно малое число элементов, его векторизуют (растягивают тензорное представление в вектор) и подают на вход многослойному персептрону.

Большая часть вычислений сосредоточена в свёрточных слоях. При этом большая часть настраиваемых параметров сосредоточена в многослойном персептроне, поэтому для снижения переобучения в нём часто используют отдельную регуляризацию, такую как дроп-аут.

Обработка звуков

Свёрточная архитектура применяется и для обработки звуков, например, человеческой речи. В этом случае в качестве "изображения" обрабатывается мел-спектрограмма (mel spectrogram), в которой по оси X располагается время, а по оси Y - сила представленности частот. Таким образом звук, как и изображение, имеет две размерности, и его тоже можно обрабатывать свёрточными сетями. Размер ядра свёртки в этом случае представляет прямоугольник, который выбирается таким образом, чтобы свёртка видела ограниченный промежуток во времени, но анализировала при этом все частоты (или их существенную часть).

Литература

  1. Abdel-Jaber H. et al. A review of deep learning algorithms and their applications in healthcare //Algorithms. – 2022. – Т. 15. – №. 2. – С. 71.