>  기사  >  기술 주변기기  >  YOLOv6의 빠르고 정확한 표적 탐지 프레임워크는 오픈 소스로 제공됩니다.

YOLOv6의 빠르고 정확한 표적 탐지 프레임워크는 오픈 소스로 제공됩니다.

王林
王林앞으로
2023-05-09 14:52:081018검색

저자: Chu Yi, Kai Heng 등

최근 Meituan의 시각 지능 부서는 감지 정확성과 추론 효율성 모두에 집중할 수 있는 산업용 애플리케이션 전용 타겟 감지 프레임워크인 YOLOv6를 개발했습니다. 연구 개발 과정에서 시각 지능 부서는 학계와 업계의 일부 최첨단 개발 및 과학 연구 결과를 활용하면서 계속해서 탐색하고 최적화했습니다. 권위 있는 표적 탐지 데이터 세트인 COCO에 대한 실험 결과에 따르면 YOLOv6는 탐지 정확도와 속도 측면에서 동일한 크기의 다른 알고리즘을 능가합니다. 또한 다양한 플랫폼의 배포를 지원하여 프로젝트 배포 중 적응 작업을 크게 단순화합니다. . 이것은 더 많은 학생들에게 도움이 되기를 바라는 오픈 소스입니다.

1. 개요

YOLOv6는 Meituan의 시각 지능 부서에서 개발한 표적 탐지 프레임워크이며 산업용 애플리케이션 전용입니다. 이 프레임워크는 감지 정확도와 추론 효율성 모두에 중점을 둡니다. 업계에서 일반적으로 사용되는 크기 모델 중 YOLOv6-nano는 COCO에서 최대 35.0% AP의 정확도와 최대 1242FPS의 추론 속도를 제공합니다. T4; YOLOv6- COCO의 s 정확도는 43.1% AP에 도달할 수 있으며 T4의 추론 속도는 520FPS에 도달할 수 있습니다. 배포 측면에서 YOLOv6는 GPU(TensorRT), CPU(OPENVINO), ARM(MNN, TNN, NCNN)과 같은 다양한 플랫폼의 배포를 지원하므로 프로젝트 배포 중 적응 작업이 크게 단순화됩니다. 현재 이 프로젝트는 Github 포털 YOLOv6에 오픈 소스로 제공되어 있습니다. 도움이 필요한 친구들은 스타에 오셔서 언제든지 수집하고 접근하실 수 있습니다.

YOLOv5 및 YOLOX를 훨씬 능가하는 정확도와 속도를 갖춘 새로운 프레임워크

컴퓨터 비전 분야의 기본 기술로 표적 탐지가 업계에서 널리 사용되고 있으며, 그중 YOLO 시리즈 알고리즘이 더 나은 종합 성능을 가지고 있습니다. 점차적으로 대부분의 산업 응용 분야에서 선호되는 프레임워크가 되고 있습니다. 지금까지 업계에서는 YOLOv5[1], YOLOX[2] 및 PP-YOLOE[3] 등 많은 YOLO 감지 프레임워크를 파생해 왔습니다. 그러나 실제 사용에서는 다음과 같은 사실을 발견했습니다. 위의 프레임워크는 속도와 정확성 측면에서 여전히 개선의 여지가 많습니다. 이를 기반으로 업계의 기존 첨단 기술을 연구하고 활용하여 새로운 표적 탐지 프레임워크인 YOLOv6를 개발했습니다. 이 프레임워크는 모델 교육, 추론 및 다중 플랫폼 배포와 같은 산업 애플리케이션 요구 사항의 전체 체인을 지원하고, COCO 데이터 세트인 YOLOv6에서 네트워크 구조 및 교육 전략과 같은 알고리즘 수준에서 여러 가지 개선 및 최적화를 수행했습니다. 동일한 크기의 다른 알고리즘을 능가하는 결과는 아래 그림 1과 같습니다.

YOLOv6의 빠르고 정확한 표적 탐지 프레임워크는 오픈 소스로 제공됩니다.

그림 1-1 다양한 크기의 YOLOv6 모델과 다른 모델의 성능 비교

YOLOv6의 빠르고 정확한 표적 탐지 프레임워크는 오픈 소스로 제공됩니다.

그림 1-2 YOLOv6 다른 해상도에서 다른 모델과의 성능 비교그림 1-1 은 서로 다른 크기의 네트워크에서 각 탐지 알고리즘의 성능 비교를 보여줍니다. 다양한 크기의 네트워크(s /tiny/nano)에서 탐지 알고리즘의 성능 모델 성능은 그림에서 볼 수 있듯이 YOLOv6는 정확성과 속도 측면에서 동일한 크기의 다른 YOLO 시리즈 알고리즘을 능가합니다. 그림 1-2는 입력 해상도가 변경될 때 각 감지 네트워크 모델의 성능 비교를 보여줍니다. 왼쪽에서 오른쪽으로 곡선의 점은 이미지 해상도가 순차적으로 증가하는 경우를 나타냅니다(384/448/512/576/640). 그림에서 볼 수 있듯이 이 모델의 성능은 YOLOv6이 다양한 해상도에서도 여전히 큰 성능 이점을 유지합니다.

2. YOLOv6 핵심 기술 소개

YOLOv6는 주로 척추, 목, 머리 및 훈련 전략에서 많은 개선을 이루었습니다.

  • 통일된 방식으로 보다 효율적인 백본과 넥을 설계했습니다. 하드웨어 인식 신경망의 설계 아이디어에서 영감을 받아 RepVGG 스타일을 기반으로 재매개변수화가 가능하고 보다 효율적인 백본 네트워크를 설계했습니다. EfficientRep Backbone 및 Rep-PAN[4 ] 목.
  • 보다 간결하고 효과적인 효율적인 디커플링 헤드를 최적화하고 설계하여 정확도를 유지하면서 일반적인 디커플링 헤드로 인해 발생하는 추가 지연 오버헤드를 더욱 줄입니다.
  • 훈련 전략 측면에서 우리는 SimOTA[2] 라벨 할당 전략과 SIoU[9] 경계 상자 회귀 손실로 보완된 앵커 없는 앵커 없는 패러다임을 사용하여 탐지 정확도를 더욱 향상시킵니다.

2.1 하드웨어 친화적인 백본 네트워크 설계

YOLOv5/YOLOX에서 사용하는 백본과 넥은 모두 다중 분기 접근 방식과 잔여 구조를 사용하여 CSPNet[5]을 기반으로 구축되었습니다. GPU와 같은 하드웨어의 경우 이 구조는 대기 시간을 어느 정도 늘리고 메모리 대역폭 사용률을 줄입니다. 아래 그림 2는 컴퓨터 아키텍처 분야의 Roofline Model[8]에 대한 소개로, 하드웨어의 컴퓨팅 성능과 메모리 대역폭 간의 관계를 보여줍니다.

YOLOv6의 빠르고 정확한 표적 탐지 프레임워크는 오픈 소스로 제공됩니다.

그림 2 Roofline 모델 소개 다이어그램

그래서 하드웨어 인식 신경망 설계 아이디어를 기반으로 Backbone과 Neck을 다시 설계하고 최적화했습니다. 이 아이디어는 하드웨어의 특성과 추론 프레임워크/컴파일 프레임워크의 특성을 기반으로 하며, 하드웨어 및 컴파일 친화적인 구조를 설계 원칙으로 삼아 네트워크 구축 시 하드웨어 컴퓨팅 성능, 메모리 대역폭을 종합적으로 고려합니다. , 컴파일 최적화 특성, 네트워크 표현 기능 등을 통해 빠르고 좋은 네트워크 구조를 얻을 수 있습니다. 위의 두 가지 재설계된 감지 구성 요소에 대해 YOLOv6에서는 각각 EfficientRep Backbone 및 Rep-PAN Neck이라고 합니다. 주요 기여는 다음과 같습니다.

  1. RepVGG 소개[4] 스타일 구조.
  2. 하드웨어 인식이라는 아이디어를 바탕으로 백본과 넥을 새롭게 디자인했습니다.

RepVGG[4] 스타일 구조는 훈련 중에 다중 분기 토폴로지를 가지며 실제 배포 중에 단일 3x3 컨볼루션으로 동일하게 융합될 수 있는 재매개변수화 가능한 구조입니다. 아래). 융합된 3x3 컨볼루션 구조를 통해 연산 집약적인 하드웨어(예: GPU)의 컴퓨팅 성능을 효과적으로 활용할 수 있으며, GPU/CPU에 고도로 최적화된 NVIDIA cuDNN 및 Intel MKL 컴파일 프레임워크의 도움도 얻을 수 있습니다. .

실험에 따르면 위 전략을 통해 YOLOv6는 하드웨어 지연을 줄이고 알고리즘의 정확도를 크게 향상시켜 탐지 네트워크를 더 빠르고 강력하게 만듭니다. 나노 크기 모델을 예로 들면, YOLOv5-nano에서 사용하는 네트워크 구조와 비교하여 이 방법은 속도를 21% 향상시키고 AP 정확도를 3.6% 높입니다.

YOLOv6의 빠르고 정확한 표적 탐지 프레임워크는 오픈 소스로 제공됩니다.

그림 3 Rep 연산자의 융합 프로세스 [4]

EfficientRep Backbone: Backbone 설계 측면에서는 위의 Rep 연산자를 기반으로 효율적인 Backbone을 설계했습니다. YOLOv5에서 사용되는 CSP-Backbone과 비교하여 이 Backbone은 하드웨어(예: GPU)의 컴퓨팅 성능을 효율적으로 활용할 수 있으며 강력한 표현 기능도 갖추고 있습니다.

아래 그림 4는 EfficientRep Backbone의 구체적인 디자인 구조 다이어그램입니다. Backbone의 일반 Conv 레이어를 stride=2의 RepConv 레이어로 대체했습니다. 동시에 원래 CSP-Block은 RepBlock으로 재설계되어 RepBlock의 첫 번째 RepConv가 채널 차원을 변환하고 정렬합니다. 또한 원래 SPPF를 보다 효율적인 SimSPPF로 최적화합니다.

YOLOv6의 빠르고 정확한 표적 탐지 프레임워크는 오픈 소스로 제공됩니다.

그림 4 EfficientRep 백본 구조 다이어그램

Rep-PAN: Neck 디자인 측면에서 하드웨어에 대한 추론을 보다 효율적으로 만들어 정확도와 속도 간의 더 나은 균형을 달성하기 위해, 우리는 하드웨어 인식 신경망 설계 아이디어를 기반으로 YOLOv6을 위해 보다 효과적인 기능 융합 네트워크 구조를 설계했습니다.

Rep-PAN은 PAN[6] 토폴로지를 기반으로 하며 RepBlock을 사용하여 YOLOv5에서 사용되는 CSP-Block을 대체하는 동시에 전체 Neck의 연산자를 조정하여 효율적인 추론을 달성합니다. 하드웨어는 우수한 다중 규모 기능 융합 기능을 유지합니다(Rep-PAN 구조 다이어그램은 아래 그림 5에 표시됨).

YOLOv6의 빠르고 정확한 표적 탐지 프레임워크는 오픈 소스로 제공됩니다.

그림 5 Rep-PAN 구조도

2.2 더욱 간결하고 효율적으로 Decoupled Head

YOLOv6에서는 디커플링 검출 헤드(Decoupled Head) 구조를 채택하여 Streamlined 설계를 수행합니다. 원본 YOLOv5의 감지 헤드는 분류 및 회귀 분기를 병합 및 공유하여 구현되는 반면, YOLOX의 감지 헤드는 분류 및 회귀 분기를 분리하고 2개의 추가 3x3 컨벌루션 레이어를 추가합니다. 감지 정확도는 향상되지만 네트워크 지연이 발생합니다. 어느 정도 증가됩니다.

따라서 관련 연산자 표현 기능과 하드웨어 컴퓨팅 오버헤드 간의 균형을 고려하여 디커플링 헤드의 설계를 간소화하고 하이브리드 채널 전략을 사용하여 보다 효율적인 디커플링 헤드를 재설계했습니다. 구조는 정확성을 유지하면서 지연을 줄입니다. , 디커플링 헤드의 3x3 컨볼루션으로 인해 발생하는 추가 지연 오버헤드를 완화합니다. 나노 크기의 모델을 대상으로 ablation 실험을 진행하고 동일한 채널 수의 디커플링 헤드 구조를 비교함으로써 정확도는 0.2% AP, 속도는 6.8% 향상되었습니다.

YOLOv6의 빠르고 정확한 표적 탐지 프레임워크는 오픈 소스로 제공됩니다.

그림 6 효율적인 분리 헤드 구조 다이어그램

2.3 보다 효과적인 훈련 전략

검출 정확도를 더욱 향상시키기 위해 우리는 학계와 다른 검출 프레임워크의 고급 연구 진행 상황을 흡수하고 배웠습니다. 산업: 앵커 없는 앵커 없는 패러다임, SimOTA 레이블 할당 전략 및 SIoU 경계 상자 회귀 손실.

Anchor-free Anchor-Free 패러다임

YOLOv6은 보다 간결한 Anchor-free 감지 방법을 채택합니다. 앵커 기반 탐지기는 최적의 앵커 세트를 결정하기 위해 훈련하기 전에 클러스터 분석을 수행해야 하기 때문에 동시에 일부 에지 엔드 애플리케이션에서는 탐지기의 복잡성이 어느 정도 증가합니다. 하드웨어 단계 간에 전송이 필요하므로 추가 지연이 발생합니다. Anchor-Free Anchor-Free 패러다임은 강력한 일반화 능력과 간단한 디코딩 논리로 인해 최근 몇 년 동안 널리 사용되었습니다. Anchor-free에 대한 실험적 연구 결과, Anchor-based detector의 복잡성으로 인한 추가 지연에 비해 Anchor-free detector의 속도가 51% 향상되는 것으로 나타났습니다.

SimOTA 라벨 할당 전략

보다 고품질의 양성 샘플을 얻기 위해 YOLOv6는 SimOTA [4] 알고리즘을 도입하여 양성 샘플을 동적으로 할당하여 탐지 정확도를 더욱 향상시켰습니다. YOLOv5의 레이블 할당 전략은 Shape 매칭을 기반으로 하며 Cross-Grid 매칭 전략을 통해 Positive 샘플 수를 늘려 네트워크가 빠르게 수렴되도록 합니다. 그러나 이 방법은 정적 할당 방법이므로 조정되지 않습니다. 네트워크 훈련 과정.

최근 몇 년 동안 동적 레이블 할당을 기반으로 하는 많은 방법이 등장했습니다. 이러한 방법은 훈련 과정에서 네트워크 출력에 따라 긍정적인 샘플을 할당하여 더 높은 품질의 긍정적인 샘플을 생성하고 결과적으로 네트워크의 전진을 촉진합니다. 최적화. 예를 들어 OTA[7]는 샘플 매칭을 최적의 전송 문제로 모델링하고 정확도를 높이기 위해 전역 정보에서 최상의 샘플 매칭 전략을 얻습니다. 그러나 OTA는 훈련 시간을 연장하는 Sinkhorn-Knopp 알고리즘을 사용합니다. [4] 알고리즘은 Top-K 근사 전략을 사용하여 가장 잘 일치하는 샘플을 얻으므로 훈련 속도가 크게 향상됩니다. 따라서 YOLOv6는 SimOTA 동적 할당 전략을 채택하고 이를 앵커 없는 패러다임과 결합하여 나노 크기 모델에서 평균 탐지 정확도를 1.3% AP만큼 높입니다.

SIoU 경계 상자 회귀 손실

회귀 정확도를 더욱 향상시키기 위해 YOLOv6는 SIoU[9]경계 상자 회귀 손실 기능을 사용하여 네트워크 학습을 감독합니다. 표적 탐지 네트워크를 훈련하려면 일반적으로 분류 손실과 경계 상자 회귀 손실이라는 두 가지 이상의 손실 함수 정의가 필요하며, 손실 함수 정의는 탐지 정확도와 훈련 속도에 더 큰 영향을 미치는 경우가 많습니다.

최근 몇 년 동안 일반적으로 사용되는 경계 상자 회귀 손실에는 IoU, GIOU, CIOU, DIOU 손실 등이 있습니다. 이러한 손실 함수는 중첩 정도, 중심점 거리 및 등의 요소를 고려하여 예측 상자와 대상 상자를 측정합니다. 종횡비 사이의 간격은 네트워크가 손실을 최소화하여 회귀 정확도를 향상하도록 안내할 수 있지만 이러한 방법은 예측 상자와 대상 상자 사이의 방향 일치를 고려하지 않습니다. SIoU 손실 함수는 필요한 회귀 사이에 벡터 각도를 도입하여 거리 손실을 재정의하고, 회귀의 자유도를 효과적으로 줄이고, 네트워크 수렴을 가속화하며, 회귀 정확도를 더욱 향상시킵니다. YOLOv6s 실험에 SIoU 손실을 사용하면 CIOU 손실과 비교하여 평균 탐지 정확도가 0.3% AP 증가합니다.

3. 실험 결과

위의 최적화 전략과 개선 이후 YOLOv6는 다양한 크기의 여러 모델에서 뛰어난 성능을 달성했습니다. 아래 표 1은 YOLOv6-nano의 절제 실험 결과를 보여줍니다. 실험 결과에서 우리가 자체 설계한 감지 네트워크가 정확성과 속도 모두에서 큰 이득을 가져왔음을 알 수 있습니다. YOLOv6의 빠르고 정확한 표적 탐지 프레임워크는 오픈 소스로 제공됩니다.

표 1 YOLOv6-nano 제거 실험 결과 아래 표 2는 현재 주류를 이루는 다른 YOLO 시리즈 알고리즘과 비교한 YOLOv6의 실험 결과를 보여줍니다. 표에서 볼 수 있듯이:

YOLOv6의 빠르고 정확한 표적 탐지 프레임워크는 오픈 소스로 제공됩니다.

표 2 다양한 크기의 YOLOv6 모델과 다른 모델의 성능 비교

  • YOLOv6-nano는 COCO val에서 35.0% AP의 정확도를 달성했으며, 동시에 T4에서 추론을 위해 TRT FP16 배치 크기=32를 사용하면 YOLOv5-nano와 비교하여 정확도가 7% AP 증가하고 속도가 85% 증가합니다.
  • YOLOv6-tiny는 COCO 값에서 41.3% AP의 정확도를 달성했습니다. 동시에 T4에서 추론을 위해 TRT FP16 배치 크기=32를 사용하면 YOLOv5-s와 비교하여 602FPS의 성능을 달성할 수 있습니다. AP가 3.9% 향상되고 속도가 29.4% 증가합니다.
  • YOLOv6-s는 COCO 값에서 43.1% AP의 정확도를 달성했습니다. 동시에 T4에서 추론을 위해 TRT FP16 배치 크기=32를 사용하면 YOLOX-s와 비교하여 520FPS의 성능을 달성할 수 있습니다. PP-YOLOE-s에 비해 속도는 2.6% 향상되고 정확도는 0.4% 향상되며 TRT FP16은 단일 배치 추론에 사용됩니다. 71.3% 증가했다.

4. 요약 및 전망

이 기사에서는 학습 전략, 백본 네트워크 및 측면에서 Meituan Visual Intelligence Department의 최적화 및 실제 경험을 소개합니다. 다중 스케일 기능 융합, 감지 우선 및 기타 측면을 고려하고 최적화했으며, 원래 의도는 산업 응용 프로그램을 구현할 때 직면하는 실제 문제를 해결하는 것에서 나왔습니다.

YOLOv6 프레임워크를 구축하는 동안 우리는 하드웨어 인식 신경망 설계 아이디어를 기반으로 자체 개발한 EfficientRep Backbone, Rep-Neck 및 Efficient Decoupled Head와 같은 몇 가지 새로운 방법을 탐색하고 최적화했으며 학계에서 흡수하고 배웠습니다. .Anchor-free, SimOTA 및 SIoU 회귀 손실과 같은 업계의 일부 최첨단 기술 및 결과를 제공합니다. COCO 데이터 세트에 대한 실험 결과는 YOLOv6가 감지 정확도와 속도 측면에서 최고임을 보여줍니다.

앞으로 우리는 YOLOv6 생태계를 지속적으로 구축하고 개선할 것입니다. 주요 작업에는 다음과 같은 측면이 포함됩니다.

  1. YOLOv6 모델의 전체 범위를 개선하고 감지 성능을 지속적으로 개선합니다.
  2. 다양한 하드웨어 플랫폼에서 하드웨어 친화적인 모델을 디자인하세요.
  3. ARM 플랫폼 배포, 정량 증류 등 풀체인 적응을 지원합니다.
  4. 준지도 학습, 자기 지도 학습 등 관련 기술을 수평적으로 확장하고 도입합니다.
  5. 알려지지 않은 비즈니스 시나리오에서 YOLOv6의 일반화 성능을 살펴보세요.

위 내용은 YOLOv6의 빠르고 정확한 표적 탐지 프레임워크는 오픈 소스로 제공됩니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 51cto.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제