Подробный обзор архитектуры YOLOv1 и ее реализации на PyTorch с нуля
Делиться

Введение
Если говорить об обнаружении объектов, то, скорее всего, первой на ум приходит модель YOLO — по крайней мере, мне, благодаря ее популярности в области компьютерного зрения.
Самая первая версия этой модели, называемая YOLOv1, была выпущена ещё в 2015 году в исследовательской статье под названием «You Only Look Once: Unified, Real-Time Object Detection» [1]. До изобретения YOLOv1 одним из самых современных алгоритмов обнаружения объектов была R-CNN (Region-based Convolutional Neural Network), в которой для выполнения задачи используется многоступенчатый механизм. Сначала она использует алгоритм выборочного поиска для создания предложения по регионам, затем использует модель на основе CNN для извлечения признаков из всех этих регионов и, наконец, классифицирует обнаруженные объекты с помощью SVM [2]. Здесь вы можете наглядно представить, насколько длительным может быть процесс обнаружения объектов на одном изображении.
Изначально YOLO стремился к повышению скорости. Авторы не только добились низкой вычислительной сложности, но и доказали, что предложенная ими модель глубокого обучения способна достигать высокой точности. На момент написания статьи YOLOv13 был опубликован всего несколько дней назад [3]. Но пока давайте поговорим о её самом первом предшественнике, чтобы вы могли оценить всю красоту этой модели с момента её появления. В этой статье мы обсудим, как работает YOLOv1 и как построить эту архитектуру нейронной сети с нуля с помощью PyTorch.
Источник: towardsdatascience.com






















