YOLO11 모델에서 PaddlePaddle 형식으로 내보내는 방법
다양한 조건에서 실제 시나리오에서 컴퓨터 비전 모델을 개발하고 배포하는 것 사이의 간극을 해소하는 것은 어려울 수 있습니다. PaddlePaddle은 유연성, 성능 및 분산 환경에서의 병렬 처리 기능에 중점을 두어 이 프로세스를 더 쉽게 만듭니다. 즉, 스마트폰에서 클라우드 기반 서버에 이르기까지 광범위한 장치 및 플랫폼에서 YOLO11 컴퓨터 비전 모델을 사용할 수 있습니다.
참고: Ultralytics YOLO11 모델을 PaddlePaddle 형식으로 내보내는 방법 | PaddlePaddle 형식의 주요 기능
PaddlePaddle 모델 형식으로 내보내는 기능을 통해 PaddlePaddle 프레임워크 내에서 사용할 수 있도록 Ultralytics YOLO11 모델을 최적화할 수 있습니다. PaddlePaddle은 산업 배포를 용이하게 하는 것으로 알려져 있으며 다양한 영역에서 실제 환경에 컴퓨터 비전 애플리케이션을 배포하는 데 적합합니다.
PaddlePaddle로 내보내야 하는 이유는 무엇입니까?
Baidu에서 개발한 PaddlePaddle (PArallel Distributed Deep LEarning)은 중국 최초의 오픈 소스 딥 러닝 플랫폼입니다. 주로 연구용으로 구축된 일부 프레임워크와 달리 PaddlePaddle은 사용 편의성과 산업 전반에 걸친 원활한 통합을 우선시합니다.
인기 있는 프레임워크인 TensorFlow 및 PyTorch와 유사한 도구와 리소스를 제공하여 모든 경험 수준의 개발자가 액세스할 수 있도록 합니다. 농업 및 공장에서부터 서비스 사업에 이르기까지 477만 명이 넘는 PaddlePaddle의 대규모 개발자 커뮤니티는 AI 애플리케이션을 만들고 배포하는 데 도움을 주고 있습니다.
Ultralytics YOLO11 모델을 PaddlePaddle 형식으로 내보내면 성능 최적화에서 PaddlePaddle의 강점을 활용할 수 있습니다. PaddlePaddle은 효율적인 모델 실행과 메모리 사용량 감소를 우선시합니다. 결과적으로 YOLO11 모델은 잠재적으로 훨씬 더 나은 성능을 달성하여 실제 시나리오에서 최고의 결과를 제공할 수 있습니다.
PaddlePaddle 모델의 주요 기능
PaddlePaddle 모델은 다양한 배포 시나리오에서 유연성, 성능 및 확장성에 기여하는 다양한 주요 기능을 제공합니다:
-
동적-정적 그래프: PaddlePaddle은 동적-정적 컴파일을 지원하며, 모델을 정적 계산 그래프로 변환할 수 있습니다. 이를 통해 런타임 오버헤드를 줄이고 추론 성능을 향상시키는 최적화가 가능합니다.
-
Operator Fusion: TensorRT와 마찬가지로 PaddlePaddle은 operator fusion을 사용하여 계산을 간소화하고 오버헤드를 줄입니다. 이 프레임워크는 호환되는 연산을 병합하여 메모리 전송 및 계산 단계를 최소화하므로 추론 속도가 빨라집니다.
-
양자화: PaddlePaddle은 훈련 후 양자화 및 양자화 인식 훈련을 포함한 양자화 기술을 지원합니다. 이러한 기술을 통해 더 낮은 정밀도의 데이터 표현을 사용할 수 있어 성능을 효과적으로 향상시키고 모델 크기를 줄일 수 있습니다.
PaddlePaddle의 배포 옵션
YOLO11 모델을 PaddlePaddle로 내보내는 코드에 대해 자세히 알아보기 전에 PaddlePaddle 모델이 뛰어난 다양한 배포 시나리오를 살펴보겠습니다.
PaddlePaddle은 사용 편의성, 유연성 및 성능의 균형을 제공하는 다양한 옵션을 제공합니다:
-
Paddle Serving: 이 프레임워크는 PaddlePaddle 모델을 고성능 RESTful API로 배포하는 것을 간소화합니다. Paddle Serving은 모델 버전 관리, 온라인 A/B 테스트, 대량 요청 처리를 위한 확장성과 같은 기능을 제공하여 프로덕션 환경에 이상적입니다.
-
Paddle Inference API: Paddle Inference API는 모델 실행에 대한 로우 레벨 제어를 제공합니다. 이 옵션은 사용자 지정 애플리케이션 내에서 모델을 긴밀하게 통합하거나 특정 하드웨어에 대한 성능을 최적화해야 하는 시나리오에 적합합니다.
-
Paddle Lite: Paddle Lite는 리소스가 제한된 모바일 및 임베디드 장치에 배포하도록 설계되었습니다. ARM CPU, GPU 및 기타 특수 하드웨어에서 더 작은 크기와 더 빠른 추론을 위해 모델을 최적화합니다.
-
Paddle.js: Paddle.js를 사용하면 웹 브라우저 내에서 직접 PaddlePaddle 모델을 배포할 수 있습니다. Paddle.js는 미리 학습된 모델을 로드하거나 Paddle.js에서 제공하는 모델 변환 도구를 사용하여 paddle-hub에서 모델을 변환할 수 있습니다. WebGL/WebGPU/WebAssembly를 지원하는 브라우저에서 실행할 수 있습니다.
PaddlePaddle로 내보내기: YOLO11 모델 변환
YOLO11 모델을 PaddlePaddle 형식으로 변환하면 실행 유연성을 높이고 다양한 배포 시나리오에 맞게 성능을 최적화할 수 있습니다.
설치
필수 패키지를 설치하려면 다음을 실행합니다.
설치
# Install the required package for YOLO11
pip install ultralytics
설치 프로세스와 관련된 자세한 지침 및 모범 사례는 Ultralytics 설치 가이드를 확인하십시오. YOLO11에 필요한 패키지를 설치하는 동안 어려움이 발생하면 일반적인 문제 가이드에서 해결 방법과 팁을 참조하십시오.
사용법
모든 Ultralytics YOLO11 모델은 내보내기를 지원하며 전체 내보내기 형식 및 옵션 목록을 찾아보고 배포 요구 사항에 가장 적합한 것을 찾을 수 있습니다.
사용법
from ultralytics import YOLO
# Load the YOLO11 model
model = YOLO("yolo11n.pt")
# Export the model to PaddlePaddle format
model.export(format="paddle") # creates '/yolo11n_paddle_model'
# Load the exported PaddlePaddle model
paddle_model = YOLO("./yolo11n_paddle_model")
# Run inference
results = paddle_model("https://ultralytics.com/images/bus.jpg")
# Export a YOLO11n PyTorch model to PaddlePaddle format
yolo export model=yolo11n.pt format=paddle # creates '/yolo11n_paddle_model'
# Run inference with the exported model
yolo predict model='./yolo11n_paddle_model' source='https://ultralytics.com/images/bus.jpg'
인수 내보내기
인수 | 유형 | 기본값 | 설명 |
---|---|---|---|
format |
str |
'paddle' |
다양한 배포 환경과의 호환성을 정의하는 내보낸 모델의 대상 형식입니다. |
imgsz |
int 또는 tuple |
640 |
모델 입력에 대한 원하는 이미지 크기입니다. 정사각형 이미지의 경우 정수이거나 튜플일 수 있습니다. (height, width) 특정 크기의 경우. |
batch |
int |
1 |
내보내기 모델 배치 추론 크기 또는 내보내기 모델이 동시에 처리할 이미지의 최대 수를 지정합니다. predict mode. |
device |
str |
None |
내보내기 장치를 지정합니다: CPU (device=cpu ), Apple Silicon용 MPS (device=mps )입니다. |
내보내기 프로세스에 대한 자세한 내용은 내보내기에 대한 Ultralytics 문서 페이지를 참조하십시오.
내보낸 YOLO11 PaddlePaddle 모델 배포
Ultralytics YOLO11 모델을 PaddlePaddle 형식으로 성공적으로 내보낸 후 배포할 수 있습니다. PaddlePaddle 모델을 실행하는 기본적이며 권장되는 첫 번째 단계는 이전 사용 코드 스니펫에 설명된 대로 YOLO("yolo11n_paddle_model/") 메서드를 사용하는 것입니다.
그러나 다양한 다른 설정에서 PaddlePaddle 모델을 배포하는 방법에 대한 자세한 지침은 다음 리소스를 참조하십시오.
-
Paddle Serving: Paddle Serving을 사용하여 PaddlePaddle 모델을 고성능 서비스로 배포하는 방법을 알아봅니다.
-
Paddle Lite: Paddle Lite를 사용하여 모바일 및 임베디드 장치에서 모델을 최적화하고 배포하는 방법을 살펴봅니다.
-
Paddle.js: Paddle.js를 사용하여 클라이언트 측 AI를 위해 웹 브라우저에서 PaddlePaddle 모델을 실행하는 방법을 알아봅니다.
요약
이 가이드에서는 Ultralytics YOLO11 모델을 PaddlePaddle 형식으로 내보내는 프로세스를 살펴보았습니다. 이러한 단계를 따르면 다양한 배포 시나리오에서 PaddlePaddle의 강점을 활용하여 다양한 하드웨어 및 소프트웨어 환경에 맞게 모델을 최적화할 수 있습니다.
사용법에 대한 자세한 내용은 PaddlePaddle 공식 문서를 참조하십시오.
Ultralytics YOLO11 모델을 통합하는 더 많은 방법을 찾고 싶으십니까? 통합 가이드 페이지에서 다양한 옵션을 살펴보고 유용한 리소스와 통찰력을 얻으십시오.
FAQ
Ultralytics YOLO11 모델을 PaddlePaddle 형식으로 어떻게 내보냅니까?
Ultralytics YOLO11 모델을 PaddlePaddle 형식으로 내보내는 것은 간단합니다. 다음을 사용할 수 있습니다. export
이 내보내기를 수행하는 YOLO 클래스의 메서드입니다. 다음은 Python을 사용한 예제입니다.
사용법
from ultralytics import YOLO
# Load the YOLO11 model
model = YOLO("yolo11n.pt")
# Export the model to PaddlePaddle format
model.export(format="paddle") # creates '/yolo11n_paddle_model'
# Load the exported PaddlePaddle model
paddle_model = YOLO("./yolo11n_paddle_model")
# Run inference
results = paddle_model("https://ultralytics.com/images/bus.jpg")
# Export a YOLO11n PyTorch model to PaddlePaddle format
yolo export model=yolo11n.pt format=paddle # creates '/yolo11n_paddle_model'
# Run inference with the exported model
yolo predict model='./yolo11n_paddle_model' source='https://ultralytics.com/images/bus.jpg'
자세한 설정 및 문제 해결 방법은 Ultralytics 설치 가이드 및 일반적인 문제 가이드를 확인하십시오.
모델 배포에 PaddlePaddle을 사용할 때의 장점은 무엇인가요?
PaddlePaddle은 모델 배포를 위한 몇 가지 주요 이점을 제공합니다:
- 성능 최적화: PaddlePaddle은 효율적인 모델 실행과 메모리 사용량 감소에 탁월합니다.
- 동적-정적 그래프 컴파일: 런타임 최적화를 지원하는 동적-정적 컴파일을 지원합니다.
- Operator Fusion: 호환되는 연산을 병합하여 계산 오버헤드를 줄입니다.
- 양자화 기술: 훈련 후 양자화와 양자화 인식 훈련을 모두 지원하여 성능 향상을 위해 더 낮은 정밀도 데이터 표현을 가능하게 합니다.
Ultralytics YOLO11 모델을 PaddlePaddle로 내보내 다양한 애플리케이션 및 하드웨어 플랫폼에서 유연성과 고성능을 보장하여 향상된 결과를 얻을 수 있습니다. 공식 PaddlePaddle 문서에서 PaddlePaddle의 주요 기능과 성능을 살펴보십시오.
YOLO11 모델 배포를 위해 PaddlePaddle을 선택해야 하는 이유는 무엇인가요?
Baidu에서 개발한 PaddlePaddle은 산업 및 상업용 AI 배포에 최적화되어 있습니다. 대규모 개발자 커뮤니티와 강력한 프레임워크는 TensorFlow 및 PyTorch와 유사한 광범위한 도구를 제공합니다. YOLO11 모델을 PaddlePaddle로 내보내면 다음을 활용할 수 있습니다:
- 향상된 성능: 최적의 실행 속도와 감소된 메모리 사용량.
- 유연성: 스마트폰에서 클라우드 서버에 이르기까지 다양한 장치와의 폭넓은 호환성을 제공합니다.
- 확장성: 분산 환경을 위한 효율적인 병렬 처리 기능이 있습니다.
이러한 기능 덕분에 PaddlePaddle은 프로덕션 환경에서 YOLO11 모델을 배포하기 위한 매력적인 선택이 됩니다.
PaddlePaddle은 다른 프레임워크에 비해 모델 성능을 어떻게 향상시키나요?
PaddlePaddle은 모델 성능을 최적화하기 위해 여러 고급 기술을 사용합니다:
- 동적-정적 그래프: 런타임 최적화를 위해 모델을 정적 계산 그래프로 변환합니다.
- Operator Fusion: 호환되는 연산을 결합하여 메모리 전송을 최소화하고 추론 속도를 높입니다.
- 양자화: 정확도를 유지하면서 더 낮은 정밀도 데이터를 사용하여 모델 크기를 줄이고 효율성을 높입니다.
이러한 기술은 효율적인 모델 실행을 우선시하므로 PaddlePaddle은 고성능 YOLO11 모델을 배포하는 데 탁월한 옵션입니다. 최적화에 대한 자세한 내용은 PaddlePaddle 공식 문서를 참조하십시오.
YOLO11 모델을 위해 PaddlePaddle은 어떤 배포 옵션을 제공합니까?
PaddlePaddle은 유연한 배포 옵션을 제공합니다:
- Paddle Serving: 모델 버전 관리 및 온라인 A/B 테스트와 같은 기능을 통해 프로덕션에 이상적인 모델을 RESTful API로 배포합니다.
- Paddle Inference API: 사용자 지정 애플리케이션을 위해 모델 실행에 대한 로우 레벨 제어를 제공합니다.
- Paddle Lite: 모바일 및 임베디드 장치의 제한된 리소스에 맞게 모델을 최적화합니다.
- Paddle.js: 웹 브라우저 내에서 직접 모델을 배포할 수 있습니다.
이러한 옵션은 온디바이스 추론에서 확장 가능한 클라우드 서비스에 이르기까지 광범위한 배포 시나리오를 다룹니다. Ultralytics 모델 배포 옵션 페이지에서 더 많은 배포 전략을 살펴보십시오.