Узнайте, как карты объектов используются в моделях Ultralytics YOLO, обеспечивая точное обнаружение объектов и передовые приложения ИИ, такие как автономное вождение.
Карты признаков - это основные выходные данные, генерируемые слоями конволюционной нейронной сети (CNN), в частности конволюционными слоями. Они представляют собой изученные характеристики или закономерности, обнаруженные во входных данных, например в изображении. Считайте их отфильтрованными версиями входных данных, где каждая карта подчеркивает наличие и пространственное расположение определенных особенностей - краев, углов, текстур или более сложных форм, - которые сеть считает важными для решения поставленной задачи, например обнаружения объектов, сегментации изображений или их классификации. Эти карты являются важнейшими компонентами того, как модели глубокого обучения (DL) интерпретируют визуальную информацию.
Карты признаков создаются с помощью математической операции, называемой сверткой. Во время этого процесса небольшая матрица, известная как фильтр (или ядро), скользит по входным данным (или карте признаков, полученной на предыдущем слое). В каждой позиции фильтр выполняет поэлементное умножение с перекрывающимся участком входных данных и суммирует результаты, чтобы получить единое значение в выходной карте признаков. Каждый фильтр разрабатывается или изучается в процессе обучения для обнаружения определенного паттерна. В конволюционном слое обычно используется несколько фильтров, каждый из которых создает свою карту признаков, тем самым захватывая разнообразный набор признаков из входного сигнала. Магистраль сети, часто построенная с помощью таких фреймворков, как PyTorch или TensorFlow, в основном отвечает за генерацию этих богатых карт признаков из входных данных, которые часто визуализируются с помощью таких инструментов, как OpenCV.
В типичной архитектуре CNN входное изображение проходит через ряд слоев. Ранние слои, расположенные ближе к входу, обычно создают карты признаков, которые отражают простые, низкоуровневые признаки (например, горизонтальные линии, простые цветовые контрасты, базовые текстуры). По мере того как данные проникают в нейронную сеть (НС), последующие слои объединяют эти простые признаки для создания более сложных и абстрактных представлений. Карты признаков в более глубоких слоях могут выделять части объекта (например, колеса на автомобиле или глаза на лице) или даже целые объекты. Такое иерархическое обучение признакам позволяет сети постепенно изучать сложные схемы, переходя от общих схем к конкретным деталям, относящимся к задаче. Вы можете изучить основные понятия в таких ресурсах, как заметки по курсу CS231n в Стэнфорде, посвященные CNN.
Карты признаков - это краеугольный камень того, как CNN выполняют автоматическое извлечение признаков, устраняя необходимость в ручном поиске признаков, что было характерно для традиционного компьютерного зрения (CV). Качество и релевантность признаков, занесенных в эти карты, напрямую влияют на производительность модели, измеряемую такими метриками, как точность и средняя точность (mAP). В моделях обнаружения объектов, подобных Ultralytics YOLO, в частности в таких версиях, как YOLOv8 и YOLO11, карты признаков, созданные основной системой, часто подвергаются дополнительной обработке с помощью "шейной" структуры (например, FPN или PAN) перед передачей в головку обнаружения. Затем головка обнаружения использует эти уточненные карты признаков для предсказания конечных результатов: ограничительных рамок, указывающих местоположение объектов, и вероятностей классов, идентифицирующих объекты, найденные в таких наборах данных, как COCO или ImageNet.
Карты характеристик являются неотъемлемой частью бесчисленных приложений искусственного интеллекта (AI) и машинного обучения (ML):
Визуализация карт признаков может дать представление о том, чему научилась CNN и как она принимает решения. Изучая, какие части изображения активируют определенные карты признаков, разработчики могут понять, фокусируется ли модель на соответствующих признаках. Это один из компонентов объяснимого ИИ (XAI), который может быть выполнен с помощью таких инструментов, как TensorBoard или других методов визуализации. Понимание карт признаков помогает в отладке моделей и повышении их прочности и надежности, что можно контролировать и отслеживать с помощью таких платформ, как Ultralytics HUB.