Как свёрточные слои воспринимают изображение
Архитектура классической свёрточной сети (CNN) построена на последовательном извлечении признаков от простых к сложным. Первые слои применяют небольшие матрицы свертки размером 3х3 или 5х5 пикселей, вычисляя градиенты яркости, границы объектов и цветовые переходы. Следующие слои комбинируют эти отрезки в текстуры шерсти, округлости глаз или углы ушей. К финальным полносвязным слоям сеть оперирует абстрактными паттернами, выдавая распределение вероятностей через функцию softmax.
Компьютерное зрение лишено врождённого механизма инвариантности к геометрическим трансформациям, которым обладает мозг млекопитающих. Свёрточный фильтр активируется там, где значения пикселей совпадают с весовыми коэффициентами ядра свертки. Если положить пушистого шпица на диван и сфотографировать его свернувшимся в клубок, распределение текстур шерсти и округлых линий совпадёт с активациями фильтров, характерных для британской короткошёрстной кошки. Модель видит не собаку в необычной позе, а плотную матрицу чисел, подозрительно похожую на среднее распределение кошачьих признаков из обучающей выборки.
Смещение в сторону текстуры вместо формы
Человеческий мозг идентифицирует объекты преимущественно по их силуэту и взаимному расположению ключевых анатомических точек. Нейросети ведут себя противоположным образом. В 2018 году группа исследователей под руководством Роберта Гайрхоса экспериментально доказала феномен текстурного смещения (texture bias) у моделей, обученных на датасете ImageNet. Исследователи создали изображения с переносом стиля: натянули текстуру слоновьей кожи на силуэт кошки. Человек безошибочно узнавал кошку, тогда как глубокие сети ResNet-50 и VGG с уверенностью более 80 процентов классифицировали изображение как слона.
В задаче различения кошек и собак этот эффект проявляется постоянно. Породы вроде сиба-ину, померанского шпица или чау-чау обладают структурой морды и шерсти, создающей для фильтров сети высокий отклик по классу кошачьих. Острые стоячие уши, короткая пасть, плотный подшёрсток и круглые глаза дают набор поверхностных паттернов, перевешивающий слабо выраженную общую форму тела.
Проблема окклюзии и неполноты данных
Окклюзия возникает в момент, когда часть ключевых признаков перекрыта посторонним объектом или обрезана краем кадра. Если собака высунула морду из-за угла коробки, алгоритм лишается информации о пропорциях туловища, длине хвоста и строении лап. Человек моментально достраивает скрытые части за счёт ментальной трёхмерной модели мира. Нейросеть вынуждена принимать решение исключительно по открытому фрагменту.
Размер рецептивного поля нейрона на глубоких слоях теоретически охватывает весь снимок, но эффективное рецептивное поле остаётся локализованным вокруг центра внимания фильтра. Если ключевая зона содержит только усатую морду и круглый глаз, весовые коэффициенты классов «кошка» и «собака мелкой породы» вступают в конкуренцию с минимальным численным перевесом. Ошибочный выбор в таких условиях обусловлен случайным шумом в значениях фоновых пикселей.
Состязательные атаки и чувствительность к шуму
Высокая размерность пространства входных данных делает компьютерное зрение уязвимым к направленным возмущениям. Алгоритм Fast Gradient Sign Method (FGSM) и его современные модификации находят такие минимальные изменения каждого пикселя, которые человеческий глаз воспринимает как едва заметную рябь или чистый шум. Для градиентного спуска эти микросдвиги складываются в мощный вектор, смещающий активацию выходного слоя в совершенно произвольный класс.
В естественных условиях роль состязательного шума выполняют блики солнца на объективе, неудачный угол падения искусственного света, артефакты сжатия JPEG или сетка забора перед объективом. Подобные помехи искажают высокочастотные компоненты изображения. Человеческий зрительный анализатор фильтрует высокочастотный шум благодаря механизму константности восприятия, а искусственная сеть воспринимает паразитные пиксели как значимые признаки другого биологического вида.
Как исследователи решают ограничения классификаторов
Для устранения описанных слепых зон архитектуру машинного зрения постепенно перестраивают на более комплексные принципы анализа данных.
- Переход к архитектурам Vision Transformer (ViT), где механизм глобального внимания позволяет сопоставлять удалённые фрагменты кадра и удерживать пространственную структуру вне зависимости от локальных текстур
- Применение аугментаций со смешиванием вроде CutMix и Stylized-ImageNet, заставляющих слои опираться на геометрический контур вместо текстурного наполнения
- Использование самообучения на неразмеченных данных методами контрастивного обучения, формирующими устойчивые кластеры признаков без опоры на случайные фоновые маркеры
- Интеграция явных трёхмерных проекций и карт ключевых точек скелета для валидации биологической правдоподобности позы животного
Частые вопросы
Почему Vision Transformer реже ошибается на силуэтах по сравнению с CNN?
В свёрточных сетях размер рецептивного поля ограничен ядром свертки, поэтому сеть начинает анализ с мелких локальных пятен. Трансформеры разбивают картинку на патчи и вычисляют механизм внимания между всеми частями кадра одновременно. Это позволяет модели с первых слоёв связывать передние лапы с хвостом и головой, отдавая приоритет глобальной форме тела.
Поможет ли простое увеличение обучающей выборки до сотен миллионов фото?
Простое наращивание однотипных картинок снижает ошибку лишь до определённого предела. Если обучающая база состоит из любительских снимков хорошего качества с животными по центру кадра, сеть всё равно останется слепа к редким ракурсам и оптическим аномалиям. Требуется менять разнообразие условий, освещения и типов искажений.
Что такое срезочное обучение простыми словами?
Это ситуация, когда алгоритм находит непредусмотренную человеком статистическую закономерность в данных, позволяющую минимизировать функцию потерь кратчайшим путём. Если на большинстве обучающих фотографий кошки лежат на домашнем пледе, а собаки бегают по траве, нейросеть запоминает свойства пледа и травы вместо анатомических признаков животных.
Зачем в машинном зрении используют аугментацию данных?
Аугментация искусственно модифицирует исходные снимки: переворачивает их, обрезает фрагменты, изменяет цветовую гамму или удаляет части изображения. Это разрушает жёсткую привязку признаков к конкретным пиксельным координатам и тренирует модель искать информативные признаки в условиях частичной видимости.