주요 컨텐츠로 이동

TensorFlow Estimator API란 무엇인가요?

TensorFlow의 고수준 API는 모델 학습, 평가 및 예측을 지원하며, 컴퓨팅 그래프나 세션을 관리할 필요 없이 분산 머신러닝을 간소화합니다.

4 Personas AI Agents 3
데이터 + AI 기반Less than a minute

작성자: Databricks 직원

Summary

  • 학습 루프, 체크포인트, 분산 학습 및 TensorBoard 통합을 추상화하여 개발자가 인프라 구축보다는 모델 아키텍처에 집중할 수 있도록 합니다.
  • 일반적인 작업을 위한 DNNClassifier 및 LinearRegressor와 같은 사전 제작된 Estimator를 제공하며, 사용자 정의 model_fn 함수를 통해 사용자 지정 Estimator도 지원합니다.
  • 코드 변경 없이 CPU, GPU 및 TPU에 걸친 분산 학습을 처리하지만, 최신 TensorFlow 개발에서는 Estimator 대신 tf.keras와 사용자 지정 학습 루프를 사용하는 것이 더 선호됩니다.

Tensorflow Estimator API란 무엇입니까?

TensorFlow의 Estimator API는 모델을 직관적으로 설계하고, 교육, 평가, 예측, 배포를 효율적으로 수행할 수 있게 돕는 고수준 추상화 도구입니다. TensorFlow는 아래 이미지와 같이 여러 개의 API 계층으로 구성된 프로그래밍 스택을 제공합니다. TensorFlow Estimatorestimator는 두 가지 유형이 있어 사전에 만든 Estimator를 선택해도 되고, 아니면 사용자가 직접 자기 나름의 맞춤형 Estimator를 작성할 수 있습니다. Estimator 기반 모델은 로컬 호스트에서도 실행할 수 있고 분산형 멀티서버 환경에서도 실행되며 모델을 변경할 필요가 없습니다. 또한 CPU, GPU나 TPU에서도 모델을 기록하지 않고 Estimator 기반 모델을 실행할 수 있습니다.

Estimator의 대표 기능 4가지:

  • 교육(Training)- 정해진 단계 수에 대하여 주어진 입력에서 모델을 교육합니다.
  • 평가(Evaluation)- 테스트 세트를 기반으로 모델을 평가합니다.
  • 예측(Prediction)- estimator는 교육된 모델을 사용하여 추론을 실행합니다.
  • 모델을 서빙(Serving) 환경에 맞게 내보기.

이뿐만이 아니라 Estimator에는 교육 작업에 공통으로 내재된 기본 행동(예: 체크포인트 저장 및 복원, 요약 생성 등)이 포함되어 있습니다. Estimator에는 모델과 TensorFlow 그래프 입력 부분에 상응하는 model_fn 및 input_fn을 작성해야 합니다.

5X 리더

Gartner®: Databricks 클라우드 데이터베이스 리더

Estimator의 수많은 장점:

  • Estimator는 모델 개발자끼리 구현을 공유하는 과정을 간소화해줍니다.
  • 수준 높은 직관적 코드를 사용해 훌륭한 모델을 개발할 수 있습니다. 모델을 생성해야 하는 경우, 저수준 TensorFlow API와 비교해 사용하기 쉬운 것이 보통이기 때문입니다.
  • Estimators 자체는 tf.keras.layers에 구축되며, 따라서 사용자 지정이 매우 간편합니다.
  • Estimator를 사용하면 사용자 대신 그래프를 구축해주기 때문에 무척 편리합니다.
  • Estimator는 안전하게 분산된 교육 루프를 제공하여 다음과 같은 작업의 방법과 시점을 제어합니다.
    • 그래프 구축
    • 변수 초기화
    • 데이터 로드
    • 예외 사항 처리
    • 체크포인트 파일을 만들어 오류에서 복원
    • TensorBoard용으로 요약본 저장

 

추가 자료

게시물을 놓치지 마세요

관심 있는 카테고리를 구독하고 최신 게시물을 받은편지함으로 받아보세요