Стратегия улучшения YoloV10: свертка | Второе нововведение на основе PConv | Прикрепленная структурная схема | Значительно улучшены производительность и точность (эксклюзивный оригинал)
Стратегия улучшения YoloV10: свертка | Второе нововведение на основе PConv | Прикрепленная структурная схема | Значительно улучшены производительность и точность (эксклюзивный оригинал)

краткое содержание

Второе нововведение было сделано на основе PConv. Инновационная модель не только имеет качественное улучшение точности и скорости, но и поддерживает понижающую дискретизацию со Stride of 2. Метод улучшения прост и эффективен. Студенты, которым необходимо опубликовать статьи, не должны его пропустить!

Связь:

Язык кода:javascript
копировать
https://jingjing.blog.csdn.net/article/details/141876973?spm=1001.2014.3001.5502

Руководство по диссертации

Описание PConv в статье

Статья: Ниже мы покажем, что стоимость можно дополнительно оптимизировать, используя избыточность карт объектов. Как показано на рисунке 3, карты функций между разными каналами очень похожи. Эта избыточность также рассматривалась во многих других работах [17, 82], но немногие из них полностью использовали ее простым и эффективным способом.

В частности, мы предлагаем простой PConv для одновременного уменьшения вычислительной избыточности и доступа к памяти. Левый нижний угол рисунка 4 иллюстрирует, как работает наш PConv. Он просто применяет обычные преобразования к части входных каналов для извлечения пространственных признаков и оставляет остальные каналы неизменными. Для последовательного или регулярного доступа к памяти мы считаем, что первый или последний последовательный канал cp представляет всю карту объектов для вычислений. Не теряя общности, мы считаем, что карты входных и выходных признаков имеют одинаковое количество каналов. Таким образом, FLOP PConv — это просто

При типичном соотношении частей FLOP PConv такие же, как у обычного Conv, а PConv имеет меньший доступ к памяти, то есть:

Это просто регулярное выражение.

Поскольку для извлечения пространственных признаков используются только каналы, можно спросить, можем ли мы просто удалить оставшиеся каналы. Если да, то PConv будет понижен до обычного Conv с меньшим количеством каналов, что противоречит нашей цели по уменьшению избыточности. Обратите внимание, что мы оставляем остальные каналы без изменений, а не удаляем их из карты объектов. Это связано с тем, что они полезны для последующего слоя PWConv, который позволяет информации об объектах проходить по всем каналам.

Чтобы полностью и эффективно использовать информацию со всех каналов, в PConv дополнительно добавлена ​​поточечная свертка (PWConv). Их эффективные рецептивные поля на входной карте объектов вместе выглядят как Т-образный Conv, который больше фокусируется на центральном положении по сравнению с обычным Conv, который обрабатывает патчи равномерно, как показано на рисунке 5. Чтобы обосновать наличие Т-образного рецептивного поля, важность каждой позиции сначала оценивается путем расчета нормы Фробениуса для этой позиции. Мы предполагаем, что позиция имеет тенденцию быть более важной, если ее норма Фробениуса больше, чем у других позиций. Для обычного фильтра Conv норма Фробениуса в позиции i вычисляется по формуле, для . Мы считаем, что выступающим местом является место с наибольшей нормой Фробениуса. Затем каждый фильтр коллективно проверяется в предварительно обученном ResNet18, чтобы определить их важные позиции и построить гистограмму важных позиций. Из результатов на рисунке 6 видно, что центральное положение является наиболее частым заметным положением в фильтре. Другими словами, центральное расположение важнее окружающих соседей. Это согласуется с Т-образными расчетами с центром в центре.

Хотя свертку t-типа можно использовать непосредственно для эффективных вычислений, лучше разложить свертку t-типа на PConv и PWConv, поскольку при разложении используется избыточность между фильтрами и дополнительно экономятся вычислительные усилия. Для одних и тех же входных и выходных данных результат расчета Conv t-типа можно рассчитать следующим образом:

Это выше, чем FLOP PConv и PWConv, то есть:

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

Улучшить описание YoloV10

В этой статье мы предлагаем новый метод улучшения модуля «Узкое место» в сетевой структуре YoloV9. Чтобы еще больше улучшить возможности представления функций и эффективность сети, мы объединяем частичную свертку (PConv) с перетасовкой каналов (ShuffleChannel) и поточечную свертку (Pointwise Convolution), чтобы сформировать новый тип модуля свертки, и он заменяет обычную свертку. в модуле.

В частности, наш улучшенный метод сначала использует PConv для извлечения пространственных объектов из некоторых каналов входной карты объектов, чтобы получить важную локальную информацию и уменьшить избыточность вычислений. Затем, чтобы разорвать фиксированную связь между каналами и повысить нелинейность функций, мы ввели операцию ShuffleChannel, позволяющую изменить порядок каналов выходной карты функций PConv. Этот шаг помогает облегчить поток информации между различными каналами, тем самым расширяя возможности представления функций сети.

После ShuffleChannel мы применяем сверточный слой 1×1 (точечная свертка). Этот сверточный слой не только позволяет нам гибко регулировать количество каналов по мере необходимости для адаптации к входным требованиям последующих сетевых уровней, но также может независимо комбинировать информацию из разных каналов в каждой пространственной позиции, еще больше повышая нелинейность сети. Кроме того, в соответствии с потребностями проектирования сети мы также можем добавить нелинейную функцию активации (например, ReLU) после свертки 1 × 1, чтобы ввести больше нелинейности и повысить сложность модели.

Применяя этот улучшенный модуль свертки к модулю «Узкое место» в сетевой структуре YoloV10, мы ожидаем дальнейшего повышения производительности сети, сохраняя при этом компактность сетевой структуры. Этот улучшенный метод не только уменьшает объем вычислений и потребление памяти, но также помогает расширить возможности представления функций модели, тем самым повышая точность и эффективность обнаружения целей. В последующих экспериментах мы проверим эффективность этого улучшенного метода и изучим его производительность и возможности обобщения в различных сценариях применения.

Результаты испытаний

Язык кода:javascript
копировать
YOLOv10l summary (fused): 497 layers, 17534672 parameters, 0 gradients, 70.4 GFLOPs
                 Class     Images  Instances      Box(P          R      mAP50  mAP50-95): 100%|██████████| 15/15 [00:02<00:00,  5.20it/s]
                   all        230       1412      0.913      0.907      0.979      0.717
                   c17        230        131      0.966      0.954      0.989      0.793
                    c5        230         68      0.923      0.886      0.978      0.806
            helicopter        230         43      0.927       0.93      0.945      0.569
                  c130        230         85      0.959      0.953      0.985      0.638
                   f16        230         57          1      0.918      0.969      0.643
                    b2        230          2      0.726          1      0.995      0.714
                 other        230         86      0.908      0.942      0.965      0.499
                   b52        230         70      0.842      0.886      0.939      0.771
                  kc10        230         62      0.934      0.916      0.977      0.812
               command        230         40      0.925      0.925      0.983      0.747
                   f15        230        123      0.959      0.953      0.991      0.665
                 kc135        230         91       0.94      0.978      0.983      0.675
                   a10        230         27      0.903      0.815       0.91      0.502
                    b1        230         20      0.951      0.976       0.99      0.736
                   aew        230         25      0.924      0.977      0.986      0.783
                   f22        230         17      0.879          1      0.995      0.769
                    p3        230        105      0.952      0.962      0.992      0.792
                    p8        230          1      0.691          1      0.995      0.697
                   f35        230         32       0.96      0.744      0.945      0.537
                   f18        230        125      0.946      0.992      0.986      0.798
                   v22        230         41      0.976      0.979      0.994        0.7
                 su-27        230         31      0.961          1      0.995      0.833
                 il-38        230         27      0.839      0.963      0.968      0.739
                tu-134        230          1      0.709          1      0.995      0.895
                 su-33        230          2          1          0      0.995      0.697
                 an-70        230          2          1      0.883      0.995      0.746
                 tu-22        230         98      0.948      0.949      0.989      0.789

Подвести итог

Полный код связи:

boy illustration
Неразрушающее увеличение изображений одним щелчком мыши, чтобы сделать их более четкими артефактами искусственного интеллекта, включая руководства по установке и использованию.
boy illustration
Копикодер: этот инструмент отлично работает с Cursor, Bolt и V0! Предоставьте более качественные подсказки для разработки интерфейса (создание навигационного веб-сайта с использованием искусственного интеллекта).
boy illustration
Новый бесплатный RooCline превосходит Cline v3.1? ! Быстрее, умнее и лучше вилка Cline! (Независимое программирование AI, порог 0)
boy illustration
Разработав более 10 проектов с помощью Cursor, я собрал 10 примеров и 60 подсказок.
boy illustration
Я потратил 72 часа на изучение курсорных агентов, и вот неоспоримые факты, которыми я должен поделиться!
boy illustration
Идеальная интеграция Cursor и DeepSeek API
boy illustration
DeepSeek V3 снижает затраты на обучение больших моделей
boy illustration
Артефакт, увеличивающий количество очков: на основе улучшения характеристик препятствия малым целям Yolov8 (SEAM, MultiSEAM).
boy illustration
DeepSeek V3 раскручивался уже три дня. Сегодня я попробовал самопровозглашенную модель «ChatGPT».
boy illustration
Open Devin — инженер-программист искусственного интеллекта с открытым исходным кодом, который меньше программирует и больше создает.
boy illustration
Эксклюзивное оригинальное улучшение YOLOv8: собственная разработка SPPF | SPPF сочетается с воспринимаемой большой сверткой ядра UniRepLK, а свертка с большим ядром + без расширения улучшает восприимчивое поле
boy illustration
Популярное и подробное объяснение DeepSeek-V3: от его появления до преимуществ и сравнения с GPT-4o.
boy illustration
9 основных словесных инструкций по доработке академических работ с помощью ChatGPT, эффективных и практичных, которые стоит собрать
boy illustration
Вызовите deepseek в vscode для реализации программирования с помощью искусственного интеллекта.
boy illustration
Познакомьтесь с принципами сверточных нейронных сетей (CNN) в одной статье (суперподробно)
boy illustration
50,3 тыс. звезд! Immich: автономное решение для резервного копирования фотографий и видео, которое экономит деньги и избавляет от беспокойства.
boy illustration
Cloud Native|Практика: установка Dashbaord для K8s, графика неплохая
boy illustration
Краткий обзор статьи — использование синтетических данных при обучении больших моделей и оптимизации производительности
boy illustration
MiniPerplx: новая поисковая система искусственного интеллекта с открытым исходным кодом, спонсируемая xAI и Vercel.
boy illustration
Конструкция сервиса Synology Drive сочетает проникновение в интрасеть и синхронизацию папок заметок Obsidian в облаке.
boy illustration
Центр конфигурации————Накос
boy illustration
Начинаем с нуля при разработке в облаке Copilot: начать разработку с минимальным использованием кода стало проще
boy illustration
[Серия Docker] Docker создает мультиплатформенные образы: практика архитектуры Arm64
boy illustration
Обновление новых возможностей coze | Я использовал coze для создания апплета помощника по исправлению домашних заданий по математике
boy illustration
Советы по развертыванию Nginx: практическое создание статических веб-сайтов на облачных серверах
boy illustration
Feiniu fnos использует Docker для развертывания личного блокнота Notepad
boy illustration
Сверточная нейронная сеть VGG реализует классификацию изображений Cifar10 — практический опыт Pytorch
boy illustration
Начало работы с EdgeonePages — новым недорогим решением для хостинга веб-сайтов
boy illustration
[Зона легкого облачного игрового сервера] Управление игровыми архивами
boy illustration
Развертывание SpringCloud-проекта на базе Docker и Docker-Compose