YOLO Vision 2026:

YOLO26 모델에서 TFLite Edge TPU 형식으로 내보내는 방법 알아보기#

모바일이나 임베디드 시스템과 같이 연산 능력이 제한된 기기에 컴퓨터 비전 모델을 배포하는 것은 까다로울 수 있습니다. 더 빠른 성능을 위해 최적화된 모델 포맷을 사용하면 이 과정이 단순화됩니다. TensorFlow Lite Edge TPU 또는 TFLite Edge TPU 모델 포맷은 신경망에 빠른 성능을 제공하면서도 최소한의 전력을 소비하도록 설계되었습니다.

TFLite Edge TPU 포맷으로의 내보내기 기능을 사용하면 Ultralytics YOLO26 모델을 고속 및 저전력 인퍼런스에 맞게 최적화할 수 있습니다. 본 가이드에서는 모델을 TFLite Edge TPU 포맷으로 변환하는 과정을 안내하므로, 다양한 모바일 및 임베디드 기기에서 모델이 원활하게 작동하도록 만들 수 있습니다.

TFLite Edge TPU로 내보내야 하는 이유는 무엇인가요?#

모델을 TensorFlow Edge TPU로 내보내면 machine learning 작업을 빠르고 효율적으로 수행할 수 있습니다. 이 기술은 전력, 컴퓨팅 리소스, 그리고 연결성이 제한된 애플리케이션에 적합합니다. Edge TPU는 Google이 개발한 하드웨어 가속기입니다. 엣지 기기에서 TensorFlow Lite 모델의 속도를 높여줍니다. 아래 이미지는 이 과정의 예시를 보여줍니다.

TensorFlow Lite Edge TPU compilation workflow

Edge TPU는 양자화된 모델과 함께 작동합니다. 양자화는 accuracy를 크게 저하시키지 않으면서 모델을 더 작고 빠르게 만듭니다. 이는 엣지 컴퓨팅의 제한된 리소스에 이상적이며, 클라우드 의존성 없이 로컬에서 데이터를 빠르게 처리하고 지연 시간을 줄여 애플리케이션이 신속하게 응답할 수 있도록 합니다. 또한 로컬 처리는 원격 서버로 전송되지 않으므로 사용자 데이터를 비공개로 안전하게 유지합니다.

TFLite Edge TPU의 주요 특징#

개발자에게 TFLite Edge TPU가 훌륭한 모델 형식 선택지가 되는 주요 특징은 다음과 같습니다:

  • 엣지 장치에서의 최적화된 성능: TFLite Edge TPU는 양자화, 모델 최적화, 하드웨어 가속 및 컴파일러 최적화를 통해 고속 신경망 성능을 달성합니다. 미니멀한 아키텍처는 더 작은 크기와 비용 효율성에 기여합니다.

  • 높은 컴퓨팅 처리량: TFLite Edge TPU는 특수 하드웨어 가속과 효율적인 런타임 실행을 결합하여 높은 컴퓨팅 처리량을 달성합니다. 이는 엣지 장치에서 엄격한 성능 요구 사항이 있는 머신러닝 모델을 배포하는 데 매우 적합합니다.

  • 효율적인 행렬 연산: TensorFlow Edge TPU는 neural network 연산에 필수적인 행렬 연산에 최적화되어 있습니다. 이러한 효율성은 머신 러닝 모델, 특히 수많은 복잡한 행렬 곱셈과 변환이 필요한 모델에서 핵심적인 요소입니다.

TFLite Edge TPU를 활용한 배포 옵션#

YOLO26 모델을 TFLite Edge TPU 형식으로 내보내는 방법을 살펴보기 전에, TFLite Edge TPU 모델이 일반적으로 어디에 사용되는지 이해해 보겠습니다.

TFLite Edge TPU는 머신러닝 모델을 위해 다음과 같은 다양한 배포 옵션을 제공합니다:

  • 온디바이스 배포: TensorFlow Edge TPU 모델은 모바일 및 임베디드 장치에 직접 배포할 수 있습니다. 온디바이스 배포를 통해 모델을 애플리케이션 번들에 포함하거나 필요할 때 다운로드하여 클라우드 연결 없이 하드웨어에서 직접 실행할 수 있습니다.

  • 클라우드 TensorFlow TPU를 활용한 엣지 컴퓨팅: 엣지 장치의 처리 능력이 제한적인 시나리오에서는 TensorFlow Edge TPU가 TPU가 탑재된 클라우드 서버로 추론 작업을 오프로드할 수 있습니다.

  • 하이브리드 배포: 온디바이스 배포와 클라우드 배포를 결합한 하이브리드 접근 방식은 머신 러닝 모델 배포를 위한 다기능의 확장 가능한 솔루션을 제공합니다. 신속한 응답을 위한 온디바이스 처리와 더 복잡한 연산을 위한 cloud computing의 장점을 모두 누릴 수 있습니다.

지원되는 작업#

Edge TPU 내보내기는 7가지 Ultralytics 태스크 중 6가지를 지원합니다. 의미론적 분할(semantic segmentation)은 해당 헤드를 탑재한 유일한 패밀리인 YOLO26에서만 사용할 수 있습니다. 깊이 추정(depth estimation)은 Edge TPU 컴파일러가 구문 분석할 수 없는 EXP v2 연산자를 INT8 모델이 출력하기 때문에 지원되지 않습니다.

작업YOLOv8YOLO11YOLO26
Detect
세그먼트
시맨틱
깊이
분류
Pose
OBB

Edge TPU 컴파일러는 지원하는 연산을 가속기에 매핑하고 나머지는 CPU에 남겨두므로, 작업 지원이 모든 연산이 TPU에서 실행된다는 것을 의미하지는 않습니다.

YOLO26 모델을 TFLite Edge TPU로 내보내기#

YOLO26 모델을 TensorFlow Edge TPU로 변환하여 모델 호환성과 배포 유연성을 확장할 수 있습니다.

설치#

필수 패키지를 설치하려면 다음을 실행하십시오:

설치
# Install the required package for YOLO26
pip install ultralytics

설치 과정과 관련된 자세한 지침과 모범 사례는 Ultralytics Installation guide를 확인하세요. YOLO26에 필요한 패키지를 설치하는 동안 문제가 발생하면 Common Issues guide에서 해결 방법과 팁을 참고하세요.

사용법#

모든 Ultralytics YOLO26 모델은 기본적으로 내보내기를 지원하도록 설계되어 선호하는 배포 워크플로에 쉽게 통합할 수 있습니다. 지원되는 내보내기 형식 및 구성 옵션 전체 목록 보기를 통해 애플리케이션에 가장 적합한 설정을 선택할 수 있습니다.

TFLite Edge TPU 포맷은 Export, Predict, Validate 모드를 지원합니다. 인퍼런스와 검증은 Coral Edge TPU 하드웨어에서 실행됩니다. 모델을 내보낸 다음, 내보낸 모델을 로드하여 인퍼런스를 실행하거나 정확도를 검증하세요.

내보내기(Export)
from ultralytics import YOLO

# Load a YOLO26 model
model = YOLO("yolo26n.pt")

# Export the model to TFLite Edge TPU format
model.export(format="edgetpu")  # creates 'yolo26n_full_integer_quant_edgetpu.tflite'
추론(Predict)
from ultralytics import YOLO

# Load the exported TFLite Edge TPU model
model = YOLO("yolo26n_full_integer_quant_edgetpu.tflite")

# Run inference
results = model("https://ultralytics.com/images/bus.jpg")
검증
from ultralytics import YOLO

# Load the exported TFLite Edge TPU model
model = YOLO("yolo26n_full_integer_quant_edgetpu.tflite")

# Validate accuracy on the COCO8 dataset
metrics = model.val(data="coco8.yaml")

내보내기 인수#

인수유형기본값설명
formatstr'edgetpu'내보낸 모델의 대상 형식이며, 다양한 배포 환경과의 호환성을 정의합니다.
imgszint 또는 tuple640모델 입력에 사용할 원하는 이미지 크기입니다. 정방형 이미지의 경우 정수일 수 있으며, 특정 치수의 경우 튜플 (height, width)일 수 있습니다.
quantizeint 또는 str8/auto양자화 정밀도. Edge TPU에는 8 (INT8)이 필수적이며 자동으로 활성화되어, 엣지 기기에서 최소한의 accuracy 손실로 모델을 압축하고 인퍼런스 속도를 높여줍니다. 더 이상 사용되지 않는 half/int8 플래그를 대체합니다.
opsetintNone중간 ONNX 그래프에 대한 ONNX opset 버전을 지정합니다. 설정하지 않으면 지원되는 최신 버전을 사용합니다.
datastrNone양자화에 필수적인 dataset YAML의 경로입니다. 분류의 경우 데이터셋 디렉터리 또는 기본 제공 데이터셋 이름을 대신 사용합니다. quantize=8을 생략하면 Ultralytics가 모델 태스크에 맞는 기본 보정 데이터셋을 선택합니다.
fractionfloat1.0INT8 양자화 보정에 사용할 데이터셋의 비율을 지정합니다. 전체 데이터셋의 하위 집합으로 보정할 수 있게 하여 실험이나 리소스가 제한된 경우에 유용합니다. INT8을 활성화하고 지정하지 않으면 전체 데이터셋이 사용됩니다.
devicestrNone내보낼 기기를 지정합니다: CPU (device=cpu).

EdgeTPU로 내보낼 때는 반드시 x86 Linux 머신을 사용해야 합니다.

내보내기 프로세스에 대한 자세한 내용은 내보내기에 관한 Ultralytics 문서 페이지를 방문하세요.

내보낸 YOLO26 TFLite Edge TPU 모델 배포하기#

Ultralytics YOLO26 모델을 TFLite Edge TPU 형식으로 성공적으로 내보낸 후, 이제 이를 배포할 수 있습니다. TFLite Edge TPU 모델을 실행하기 위한 가장 기본적이고 권장되는 첫 단계는 이전 사용 코드 스니펫에 설명된 대로 YOLO("model_edgetpu.tflite") 메서드를 사용하는 것입니다.

그러나 TFLite Edge TPU 모델 배포에 대한 자세한 지침은 다음 리소스를 참조하십시오:

요약#

본 가이드에서는 Ultralytics YOLO26 모델을 TFLite Edge TPU 포맷으로 내보내는 방법을 배웠습니다. 위에 언급된 단계를 따르면 computer vision 애플리케이션의 속도와 성능을 향상시킬 수 있습니다.

사용에 대한 자세한 내용은 Edge TPU 공식 웹사이트를 방문하세요.

또한 다른 Ultralytics YOLO26 integrations에 대한 자세한 내용은 integration guide page를 참조하세요. 유용한 리소스와 인사이트를 확인하실 수 있습니다.

FAQ#

  • YOLO26 모델을 TFLite Edge TPU 형식으로 내보내려면 다음 단계를 따르십시오:

    사용법
    from ultralytics import YOLO
    
    # Load a YOLO26 model
    model = YOLO("yolo26n.pt")
    
    # Export the model to TFLite Edge TPU format
    model.export(format="edgetpu")  # creates 'yolo26n_full_integer_quant_edgetpu.tflite'
    
    # Load the exported TFLite Edge TPU model
    edgetpu_model = YOLO("yolo26n_full_integer_quant_edgetpu.tflite")
    
    # Run inference
    results = edgetpu_model("https://ultralytics.com/images/bus.jpg")

    모델을 다른 포맷으로 내보내는 방법에 대한 전체 세부 정보는 export guide를 참조하세요.

  • YOLO26 모델을 TFLite Edge TPU로 내보내면 다음과 같은 몇 가지 이점이 있습니다:

    • 최적화된 성능: 최소한의 전력 소비로 고속 신경망 성능을 달성합니다.
    • 지연 시간 단축: 클라우드 의존 없이 빠른 로컬 데이터 처리가 가능합니다.
    • 향상된 프라이버시: 로컬 처리를 통해 사용자 데이터를 비공개로 안전하게 유지합니다.

    이로 인해 기기의 전력과 연산 리소스가 제한된 edge computing 애플리케이션에 이상적입니다. 내보내기를 해야 하는 이유에 대해 자세히 알아보세요.

  • 네, TensorFlow Lite Edge TPU 모델은 모바일 및 임베디드 기기에 직접 배포할 수 있습니다. 이 배포 방식을 통해 모델이 하드웨어에서 직접 실행되어 더 빠르고 효율적인 인퍼런스를 제공합니다. 통합 예시를 보려면 Raspberry Pi에 Coral Edge TPU 배포 가이드를 확인하세요.

  • TFLite Edge TPU 모델의 일반적인 사용 사례는 다음과 같습니다:

    • 스마트 카메라: 실시간 이미지 및 영상 분석 강화.
    • IoT 장치: 스마트 홈 및 산업 자동화 구현.
    • 의료: 의료 영상 및 진단 가속화.
    • 소매: 재고 관리 및 고객 행동 분석 개선.

    이러한 애플리케이션은 TFLite Edge TPU 모델의 고성능 및 저전력 소비 이점을 누릴 수 있습니다. 사용 시나리오에 대해 자세히 알아보세요.

  • TFLite Edge TPU 모델을 내보내거나 배포하는 동안 문제가 발생하는 경우, 문제 해결 팁을 위해 Common Issues guide를 참조하세요. 이 가이드에는 원활한 작동을 돕기 위한 일반적인 문제와 해결 방법이 다뤄져 있습니다. 추가 지원이 필요한 경우 Help Center를 방문하세요.

댓글