TensorFlow Lite 가이드

TensorFlow Lite는 개발자가 휴대기기, 내장형 기기 및 IoT 기기에서 TensorFlow 모델을 실행할 수 있도록 지원하는 도구 모음입니다. 기기 내 지연 시간이 짧고 바이너리 크기가 작은 머신러닝 추론을 지원합니다.

TensorFlow Lite는 다음과 같은 두 가지 주요 구성요소로 구성됩니다.

  • TensorFlow Lite 인터프리터 - 스마트폰, 내장형 Linux 기기 및 마이크로 컨트롤러를 비롯하여 다양한 하드웨어 유형에서 특별히 최적화된 모델을 실행합니다.
  • TensorFlow Lite 변환기 - TensorFlow 모델을 인터프리터가 사용할 수 있는 효율적인 형식으로 변환하며, 최적화를 도입하여 바이너리 크기 및 성능을 향상할 수 있습니다.

에지의 머신러닝

TensorFlow Lite는 서버에서 데이터를 주고받는 대신 네트워크 '에지'의 기기에서 머신러닝을 쉽게 실행할 수 있도록 설계되었습니다. 이러한 설계를 통해 개발자가 기기에서 머신러닝을 실행할 때 다음 사항을 개선할 수 있습니다.

  • 지연 시간: 서버까지의 왕복이 없습니다.
  • 개인정보 보호: 데이터가 기기를 벗어나지 않아도 됩니다.
  • 연결: 인터넷 연결이 필요하지 않습니다.
  • 전력 소비: 네트워크 연결에는 전력이 필요합니다.

TensorFlow Lite는 초소형 마이크로 컨트롤러에서 강력한 스마트폰에 이르기까지 광범위한 기기에서 작동합니다.

시작하기

휴대기기에서 TensorFlow Lite로 작업을 시작하려면 시작하기를 참조하세요. TensorFlow Lite 모델을 마이크로 컨트롤러에 배포하려면 마이크로 컨트롤러를 참조하세요.

주요 기능

  • 기기 내 ML에 맞게 조정된 인터프리터 - 작은 바이너리 크기로 기기 내 애플리케이션에 최적화된 핵심 연산자 세트를 지원합니다.
  • 다양한 플랫폼 지원 - Android 기기, iOS 기기, 내장형 Linux 기기 및 마이크로 컨트롤러를 포함하며 추론 가속화에 플랫폼 API를 활용합니다.
  • 여러 언어용 API - 자바, Swift, Objective-C, C++, Python 등을 지원합니다.
  • 고성능 - 지원되는 기기에서의 하드웨어 가속, 기기에 최적화된 커널 및 사전 융합된 활성화 및 바이어스 기능으로 고성능을 구현합니다.
  • 모델 최적화 도구 - 양자화를 비롯하여 다양한 도구를 통해 크기를 줄이고 모델의 성능을 향상하면서도 정확도를 유지할 수 있습니다.
  • 효율적인 모델 형식 - 작은 크기 및 이동성에 최적화된 FlatBuffer를 사용합니다.
  • 선행 학습된 모델 - 애플리케이션에 맞게 맞춤설정할 수 있는 일반적인 머신러닝 작업을 지원합니다.
  • 샘플 및 가이드 - 지원되는 플랫폼에서 머신러닝 모델을 배포하는 방법을 보여줍니다.

개발 워크플로

TensorFlow Lite 사용을 위한 워크플로에는 다음 단계가 포함됩니다.

  1. 모델 선택

    자체 TensorFlow 모델을 가져오거나 온라인에서 모델을 찾거나 선행 학습된 모델에서 학습시키거나 재학습시킬 모델을 선택합니다.

  2. 모델 변환

    맞춤 모델을 사용하는 경우 TensorFlow Lite 변환기와 몇 줄의 Python을 사용하여 모델을 TensorFlow Lite 형식으로 변환합니다.

  3. 기기에 배포

    여러 언어의 API와 함께 TensorFlow Lite 인터프리터를 사용하여 기기에서 모델을 실행합니다.

  4. 모델 최적화

    모델 최적화 도구를 사용하여 정확도에 미치는 영향을 최소화하면서 모델의 크기를 줄이고 효율성을 증대합니다.

프로젝트에서 TensorFlow Lite를 사용하는 방법에 관해 자세히 알아보려면 시작하기를 참조하세요.

기술적 제약

TensorFlow Lite는 모든 TensorFlow 모델에 고성능 기기 내 추론을 제공할 계획입니다. 그러나 TensorFlow Lite 인터프리터는 현재 기기 내 사용에 최적화된 TensorFlow 연산자 하위 집합을 제한적으로 지원합니다. 이에 따라 일부 모델은 TensorFlow Lite와 함께 작동하는 데 추가 단계가 필요합니다.

사용할 수 있는 연산자를 알아보려면 연산자 호환성을 참조하세요.

모델이 TensorFlow Lite 인터프리터에서 아직 지원하지 않는 연산자를 사용한다면 TensorFlow Select를 사용하여 TensorFlow Lite 빌드에 TensorFlow 작업을 포함할 수 있습니다. 그러나 이로 인해 바이너리 크기가 증가합니다.

TensorFlow Lite는 현재 기기 내 학습을 지원하지 않지만 기기 내 학습은 예정된 다른 개선사항과 함께 로드맵에 포함되어 있습니다.

다음 단계

TensorFlow Lite에 관해 계속 알아보고 싶으신가요? 다음 단계를 진행할 수 있습니다.