구글, 모바일 및 임베디드 장치 개발자 위한 'TensorFlow Lite' 발표
구글, 모바일 및 임베디드 장치 개발자 위한 'TensorFlow Lite' 발표
  • 최창현 기자
  • 승인 2017.11.16 00:54
  • 댓글 0
이 기사를 공유합니다

Android 나 iOS를 비롯한 다양한 플랫폼에서 동작하도록 설계되어 온 디바이스의 머신러닝 추론을 가능하게하며, 장치에서 머신러닝 모델의 대기 시간을 절감

구글은 모바일 및 임베디드 장치용 TensorFlow의 경량 솔루션인 TensorFlow Lite의 개발자 프리뷰를 14일(현지시각) 발표했다. TensorFlow는 서버 랙에서부터 소형 IoT 장치에 이르기까지 다양한 플랫폼에서 실행되고 있지만 머신러닝 모델의 채택이 지난 몇 년 동안 기하 급수적으로 늘어남에 따라 모바일 및 임베디드 장치에 배포해야 할 필요가 있었다고 밝혔다.

발표된 TensorFlow Lite(다운 바로가기)는 Android 나 iOS를 비롯한 다양한 플랫폼에서 동작하도록 설계되어 온 디바이스의 머신러닝 추론을 가능하게하며, 장치에서 머신러닝 모델의 대기 시간을 절감 할 수 바이너리 크기도 작고, Android Neural Networks API(바로가기) 에 의한 하드웨어 가속을 지원하며, 이미 TensorFlow Mobile API(바로가기) 를 통해 모바일 및 임베디드 기기를 지원하고 있었지만, 이번 TensorFlow Lite는 TensorFlow Mobile의 진화 판이라고 보면된다.

또한 TensorFlow Lite는 모바일 플랫폼 용으로 조정된 핵심연산자(quantized 및 float 모두)를 지원하며, 성능 및 양자화된 정확도를 더욱 향상시키기 위해 사전 융합된 활성화 및 바이어스를 통합한다. 또한 TensorFlow Lite는 모델의 사용자 지정 작업 사용을 지원하며, FlatBuffers(바로가기)에 기반한 새로운 모델 파일 형식을 정의한다 .

FlatBuffers는 오픈 소스이며 효율적인 크로스 플랫폼 직렬화 라이브러리로 프로토콜 버퍼와 비슷하지만, 주요 차이점은 데이터에 액세스하기 전에 FlatBuffers가 2 차 표현으로 구문 분석/압축 풀기 단계를 수행할 필요가 없으며, 종종 객체당 메모리 할당과 결합된다는 것으로 FlatBuffers의 코드 풋 프린트는 프로토콜 버퍼보다 ​​훨씬 작다.

TensorFlow Lite에는 새로운 모바일 최적화 인터프리터가 있다. 이 인터프리터는 앱을 가늘고 빠르게 지키는 핵심 목표를 가지고 있다. 인터프리터는 최소한의 로드, 초기화 및 실행 대기 시간을 보장하기 위해 정적 그래프 순서 지정과 사용자 정의(덜 동적인) 메모리 할당자를 사용하며, 장치에서 사용 가능한 경우 하드웨어 가속을 활용할 수있는 인터페이스를 제공한다.

기존의 TensorFlow Mobile과 TensorFlow Lite와의 차이점으로는 Lite 버전은 Mobile 버전은 혁신판이다. 좀 더 작은 binary 사이즈와 의존성으로도 더 좋은 성능을 보장 한다. 하지만 TensorFlow Lite 모든 걸 커버하진 않는다. 따라서 어떠한 production case에서는 TensorFlow Mobile을 사용해서 직접 코딩 할 수도 있으며, TensorFlow Lite는 제한적인 operator들을 지원 한다. 또 알려진 모든 model들이 동작하긴 어렵지만 이미 잘 알려진 모델을 하드웨어 가속해서 동작하는데 초점을 맞춘 것으로 개발 복잡도를 낮춘다. 더 자세한 내용은 TF Lite documentation pages(바로가기)를 참고하면 된다.

 

Tag
#N

댓글삭제
삭제한 댓글은 다시 복구할 수 없습니다.
그래도 삭제하시겠습니까?
댓글 0
댓글쓰기
계정을 선택하시면 로그인·계정인증을 통해
댓글을 남기실 수 있습니다.