Обзор современных методов компьютерного зрения: от детектирования до визуализации 🚀 0:05
Лекция курса CS231n в Стэнфордском университете (весна 2025 года) была посвящена фундаментальным задачам компьютерного зрения: детектированию объектов, семантической сегментации и методам интерпретации нейросетей. Ведущий лекции подчеркнул, что хотя классические подходы к объектному детектированию уступают место более современным архитектурам, понимание их принципов необходимо для проектирования эффективных систем в медицине, робототехнике и промышленности.
🖼️ Семантическая сегментация: классификация каждого пикселя 17:37
Семантическая сегментация требует присвоения метки класса каждому отдельному пикселю изображения.
- Проблема контекста: Одиночный пиксель не несет информации об объекте, поэтому необходимо учитывать окружающие области.
- Решение: Использование сверточных нейронных сетей (CNN) для обработки патчей или архитектур, принимающих изображение целиком.
Методы и архитектуры
По словам ведущего, наиболее эффективным подходом является использование полностью сверточных сетей (FCN), которые на выходе генерируют карту меток того же размера, что и вход. Процесс обучения включает:
- Downsampling (свертка/пулинг): Уменьшение пространственного разрешения с увеличением глубины каналов.
- Upsampling: Восстановление разрешения до исходного размера изображения.
Для этапа upsampling применяются операции «разворачивания» (unpooling), такие как «ближайший сосед» (nearest neighbor) или «bed of nails», а также обучаемые транспонированные свертки (transposed convolution),. Особое внимание было уделено архитектуре U-Net. Ее ключевое отличие — копирование карт признаков из энкодера в декодер, что позволяет сохранить структурную информацию и делать границы объектов на сегментационных картах более четкими.
🔍 Объектное детектирование: от R-CNN до YOLO 33:07
Задача детектирования сложнее сегментации, так как требует не только классификации, но и определения координат ограничивающей рамки (bounding box) для каждого экземпляра объекта.
Эволюция подходов
- R-CNN (2014): Использование «предложений регионов» (region proposals) для выделения областей с высокой вероятностью наличия объекта, которые затем классифицируются отдельной CNN. Метод критикуется за низкую скорость из-за необходимости прогонять через нейросеть каждый предложенный регион.
- YOLO (You Only Look Once): Однопроходный детектор, который разбивает изображение на сетку и для каждой ячейки предсказывает вероятности классов и координаты рамок. Этот метод широко применяется в индустрии благодаря высокой скорости.
- DETR (Detection Transformer): Современный подход, использующий трансформеры. Система использует «обучаемые запросы» (queries) — параметры, которые сеть оптимизирует для поиска объектов в изображении, обходясь без сложной процедуры ручного формирования предложений регионов,.
По утверждению лектора, DETR является отличным примером адаптации трансформеров для задач зрения, хотя в индустрии он сейчас постепенно замещается более новыми архитектурами.
👁️ Визуализация и интерпретация моделей 16:49
Понимание того, «почему» нейросеть приняла конкретное решение, критически важно для медицины и высокорисковых областей.
- Saliency (Карты значимости): Вычисление градиента предсказанного класса относительно значений пикселей. Это позволяет выделить зоны, которые максимально влияют на решение модели.
- Grad-CAM: Позволяет визуализировать тепловые карты активаций для каждого класса, основываясь на взвешенной сумме градиентов.
- Трансформеры (ViT): В отличие от CNN, трансформеры обладают встроенным механизмом внимания, что значительно упрощает визуализацию областей, на которых «фокусируется» сеть при принятии решения.