TensorFlow Lite 모델 빌드

이 페이지에서는 TensorFlow Lite 모델 형식으로 변환할 목적으로 TensorFlow 모델을 구축하기 위한 지침을 제공합니다. TensorFlow Lite와 함께 사용하는 머신 러닝(ML) 모델은 원래 TensorFlow 핵심 라이브러리 및 도구를 사용하여 빌드 및 교육되었습니다. TensorFlow 코어로 모델을 구축한 후에는 TensorFlow Lite 모델이라는 더 작고 효율적인 ML 모델 형식으로 변환할 수 있습니다.

  • 변환할 모델이 이미 있는 경우 모델 변환에 대한 지침은 모델 변환 개요 페이지를 참조하십시오.

  • 처음부터 시작하는 대신 기존 모델을 수정 하려면 모델 수정 개요 에서 지침을 참조하세요.

모델 구축

특정 사용 사례에 대한 사용자 지정 모델을 구축하는 경우 TensorFlow 모델을 개발 및 교육하거나 기존 모델을 확장하는 것으로 시작해야 합니다.

모델 설계 제약

모델 개발 프로세스를 시작하기 전에 TensorFlow Lite 모델에 대한 제약 조건을 알고 있어야 하며 다음 제약 조건을 염두에 두고 모델을 빌드해야 합니다.

  • 제한된 컴퓨팅 기능 - 다중 CPU, 높은 메모리 용량, GPU 및 TPU와 같은 특수 프로세서를 갖춘 완벽하게 장착된 서버와 비교할 때 모바일 및 에지 장치는 훨씬 더 제한적입니다. 컴퓨팅 성능과 특수 하드웨어 호환성이 증가하고 있지만 효과적으로 처리할 수 있는 모델과 데이터는 여전히 상대적으로 제한적입니다.
  • 모델의 크기 - 데이터 사전 처리 논리 및 모델의 레이어 수를 포함하여 모델의 전반적인 복잡성은 모델의 메모리 내 크기를 증가시킵니다. 대형 모델은 허용할 수 없을 정도로 느리게 실행되거나 모바일 또는 에지 장치의 사용 가능한 메모리에 맞지 않을 수 있습니다.
  • 데이터 크기 - 머신 러닝 모델로 효과적으로 처리할 수 있는 입력 데이터의 크기는 모바일 또는 에지 장치에서 제한됩니다. 언어 라이브러리, 이미지 라이브러리 또는 비디오 클립 라이브러리와 같은 대용량 데이터 라이브러리를 사용하는 모델은 이러한 장치에 맞지 않을 수 있으며 장치 외부 저장 및 액세스 솔루션이 필요할 수 있습니다.
  • 지원되는 TensorFlow 작업 - TensorFlow Lite 런타임 환경은 일반 TensorFlow 모델과 비교하여 기계 학습 모델 작업의 하위 집합을 지원합니다. TensorFlow Lite와 함께 사용할 모델을 개발할 때 TensorFlow Lite 런타임 환경의 기능에 대한 모델의 호환성을 추적해야 합니다.

TensorFlow Lite를 위한 효과적이고 호환 가능한 고성능 모델 구축에 대한 자세한 내용은 성능 모범 사례 를 참조하세요.

모델 개발

TensorFlow Lite 모델을 빌드하려면 먼저 TensorFlow 핵심 라이브러리를 사용하여 모델을 빌드해야 합니다. TensorFlow 핵심 라이브러리는 ML 모델을 빌드, 교육 및 배포하기 위한 API를 제공하는 하위 수준 라이브러리입니다.

TFLite 빌드 워크플로

TensorFlow는 이를 위한 두 가지 경로를 제공합니다. 자신만의 커스텀 모델 코드를 개발하거나 TensorFlow Model Garden 에서 사용 가능한 모델 구현으로 시작할 수 있습니다.

모델 가든

TensorFlow Model Garden은 비전 및 자연어 처리(NLP)를 위한 많은 최첨단 머신 러닝(ML) 모델의 구현을 제공합니다. 또한 표준 데이터 세트에서 해당 모델을 빠르게 구성하고 실행할 수 있는 워크플로 도구를 찾을 수 있습니다. Model Garden의 기계 학습 모델에는 전체 코드가 포함되어 있으므로 자체 데이터 세트를 사용하여 모델을 테스트, 교육 또는 재교육할 수 있습니다.

잘 알려진 모델의 성능을 벤치마킹하거나, 최근에 발표된 연구 결과를 확인하거나, 기존 모델을 확장하려는 경우 Model Garden은 ML 목표를 달성하는 데 도움이 될 수 있습니다.

커스텀 모델

사용 사례가 Model Garden의 모델에서 지원하지 않는 경우 Keras 와 같은 고급 라이브러리를 사용하여 사용자 지정 교육 코드를 개발할 수 있습니다. TensorFlow의 기본 사항을 배우려면 TensorFlow 가이드 를 참조하세요. 예제를 시작하려면 시작부터 전문가 수준의 자습서에 대한 포인터가 포함된 TensorFlow 자습서 개요 를 참조하세요.

모델 평가

모델을 개발한 후에는 성능을 평가하고 최종 사용자 장치에서 테스트해야 합니다. TensorFlow는 이를 수행하는 몇 가지 방법을 제공합니다.

  • TensorBoard 는 기계 학습 워크플로 중에 필요한 측정 및 시각화를 제공하기 위한 도구입니다. 손실 및 정확도와 같은 실험 메트릭을 추적하고, 모델 그래프를 시각화하고, 임베딩을 저차원 공간에 투영하는 등의 작업을 수행할 수 있습니다.
  • 벤치마킹 도구 는 Android 벤치마크 앱 및 iOS 벤치마크 앱과 같이 지원되는 플랫폼별로 사용할 수 있습니다. 이러한 도구를 사용하여 중요한 성능 지표에 대한 통계를 측정하고 계산합니다.

모델 최적화

TensorFlow Lite 모델과 관련된 리소스에 대한 제약 조건 이 있는 경우 모델 최적화는 모델 성능을 잘 보장하고 컴퓨팅 리소스를 덜 사용하는 데 도움이 될 수 있습니다. 기계 학습 모델 성능은 일반적으로 크기와 추론 속도 대 정확도 간의 균형입니다. TensorFlow Lite는 현재 양자화, 가지치기 및 클러스터링을 통한 최적화를 지원합니다. 이러한 기술에 대한 자세한 내용은 모델 최적화 항목을 참조하십시오. TensorFlow는 또한 이러한 기술을 구현하는 API를 제공하는 모델 최적화 도구 키트 를 제공합니다.

다음 단계

  • 커스텀 모델 빌드를 시작하려면 TensorFlow 핵심 문서에서 초보자를 위한 빠른 시작 자습서를 참조하세요.
  • 커스텀 TensorFlow 모델을 변환하려면 모델 변환 개요 를 참조하세요.
  • 모델이 TensorFlow Lite와 호환되는지 또는 호환되도록 추가 단계를 수행해야 하는지 확인하려면 운영자 호환성 가이드를 참조하세요.
  • TensorFlow Lite 모델을 효율적이고 성능 있게 만드는 방법에 대한 지침은 성능 모범 사례 가이드 를 참조하세요.
  • 벤치마킹 도구를 사용하여 모델의 성능을 측정하는 방법을 알아보려면 성능 메트릭 가이드 를 참조하세요.