모델 변환 개요

LiteRT에서 사용하는 머신러닝 (ML) 모델은 원래 TensorFlow 핵심 라이브러리 및 도구를 사용하여 빌드하고 학습했습니다. 빌드한 후에는 TensorFlow Core를 사용하여 모델을 더 작고 보다 작은 효율적인 ML 모델 형식인 LiteRT 모델입니다. 이 섹션에서는 LiteRT 모델 형식으로 변환할 수 있습니다.

전환 워크플로

TensorFlow 모델을 LiteRT 형식으로 변환하는 데는 몇 가지 경로가 사용될 수 있음 ML 모델의 콘텐츠에 따라 달라질 수 있습니다 이 과정의 첫 단계로 모델을 평가하여 직접 변환할 수 있는지 확인해야 합니다. 이 평가는 모델의 콘텐츠가 TensorFlow 작업에 기반한 표준 LiteRT 런타임 환경입니다. 정의합니다. 모델이 지원되는 집합 외의 연산을 사용하는 경우 모델을 리팩터링하거나 고급 변환 기법을 사용할 수 있습니다.

아래 다이어그램은 모델 변환의 대략적인 단계를 보여줍니다.

TFLite 변환 워크플로

그림 1. LiteRT 변환 워크플로

다음 섹션에서는 모델을 평가하고 변환하는 프로세스를 간략하게 설명합니다. LiteRT와 함께 사용할 수 있습니다.

입력 모델 형식

변환기는 다음 입력 모델 형식으로 사용할 수 있습니다.

Keras와 concrete 함수 모델 둘 다 SavedModel로 저장 가능 추천 경로를 사용하여 전환할 수 있습니다.

Jax 모델이 있는 경우 TFLiteConverter.experimental_from_jax를 사용할 수 있습니다. API를 사용하여 LiteRT 형식으로 변환할 수 있습니다. 이 API는 변경할 수 있습니다.

전환 평가

모델 평가는 변환을 시도하기 전에 중요한 단계입니다. 평가할 때 모델의 콘텐츠가 모델 아키텍처와 호환되는지 LiteRT 형식. 또한 모델이 적합한지 확인해야 합니다 모델이 사용하는 데이터 크기 측면에서 모바일 및 에지 기기에 사용할 수 있도록 하드웨어 처리 요구사항, 모델의 전체 크기와 있습니다.

대부분의 모델에서는 변환기가 즉시 작동합니다. 하지만 LiteRT 내장 연산자 라이브러리는 TensorFlow Core 연산자가 있습니다. 즉, 일부 모델에는 추가적인 몇 단계를 거쳐야 합니다 또한 LiteRT에서 지원되는 일부 작업은 성능상의 이유로 사용이 제한됩니다. 자세한 내용은 연산자 호환성 가이드 를 사용하여 변환을 위해 모델을 리팩터링해야 하는지 판단합니다.

모델 변환

LiteRT 변환기는 TensorFlow 모델을 취하여 LiteRT 모델 (최적화된 FlatBuffer 형식: .tflite 파일 확장자)로 변경됩니다. 로드 가능 직접 변환할 수 있습니다.

변환기는 전환을 맞춤설정하는 3가지 주요 플래그 (또는 옵션)를 사용합니다. 다음과 같습니다.

  1. 호환성 플래그를 사용하면 전환에서 맞춤 연산자를 허용해야 하는지 여부
  2. 최적화 플래그를 사용하면 적용할 최적화 유형 지정 확인할 수 있습니다. 가장 일반적으로 사용되는 최적화 기법은 학습 후 수량화를 참조하세요.
  3. 메타데이터 플래그를 사용하면 변환된 모델에 메타데이터를 추가할 수 있습니다. 이를 통해 배포 시 플랫폼별 래퍼 코드를 모델을 학습시키는 작업도 반복해야 합니다

Python API를 사용하여 모델을 변환할 수 있습니다. 명령줄 도구를 사용하면 됩니다. 자세한 내용은 단계별 TF 모델 변환 가이드 모델에서 변환기를 실행하는 방법에 대한 지침을 참조하세요.

일반적으로 모델을 표준 LiteRT용으로 변환합니다. 런타임 환경 또는 Google Play 서비스 런타임 환경 (베타) 일부 고급 사용 사례에는 모델 런타임 환경 맞춤설정을 수행할 수 있으며 확인할 수 있습니다. 자세한 내용은 고급 런타임 환경 섹션 개요를 참조하세요.

고급 전환

오류가 발생하는 경우 모델에서 변환기를 실행하는 동안 연산자 호환성 문제입니다. 모든 TensorFlow 작업이 TensorFlow에서 지원 라이트입니다. 모델을 리팩터링하거나 수정된 LiteRT를 만들 수 있는 고급 변환 옵션 형식 모델과 커스텀 런타임 환경이 포함됩니다.

  • 모델 호환성 개요 참조 TensorFlow 및 LiteRT 모델 호환성 자세히 알아보기 고려해야 합니다
  • 모델 호환성 개요의 주제에서는 모델 호환성과 Select 연산자와 같은 모델 리팩터링 참조하세요.
  • 작업 및 제한사항의 전체 목록은 다음을 참조하세요. LiteRT Ops 페이지.

다음 단계

  • 빠르게 시작하려면 TF 모델 변환 가이드를 참고하세요. 모델을 변환해야 합니다
  • 최적화 개요에서 다음을 참고하세요. 다음과 같은 기법을 사용해 변환된 모델을 최적화하는 방법을 학습 후 양자화입니다.
  • 메타데이터를 추가하는 방법을 알아보려면 메타데이터 추가 개요를 참조하세요. 살펴보겠습니다 메타데이터는 다른 용도의 모델 설명도 제공합니다. 코드 생성기에서 활용할 수 있는 정보로서의 정보를 제공합니다.