Skip to main content

Kubeflow Tensorboard를 사용한 머신러닝 실험 관리

카카오클라우드 Kubeflow 환경에서 TensorBoard 컴포넌트를 활용하여, 머신러닝 실험 과정에서 생성되는 로그 데이터를 관리하고 시각화하는 방법을 안내합니다.

기본 정보

시작하기 전에

TensorBoard는 머신러닝 모델의 학습 과정을 직관적으로 모니터링하고 분석하는 데 필수적인 도구입니다. Kubeflow 환경에서 TensorBoard를 활용하면, 머신러닝 실험의 진행 상황을 실시간으로 모니터링하고, 다양한 실험 결과를 비교 분석할 수 있습니다. 또한, 모델의 성능을 최적화하기 위한 핵심 지표의 이해와 TensorBoard를 활용한 실험 관리 방법을 확인할 수 있습니다.

시나리오 소개

이 튜토리얼에서는 카카오클라우드의 Kubeflow 환경에서 TensorBoard의 설치부터 실제 학습 데이터의 로그를 시각화하고 분석하는 전 과정을 단계별로 소개합니다.

이 시나리오의 주요 내용은 다음과 같습니다.

  • Kubeflow에서 TensorBoard 인스턴스 생성 및 설정
  • 학습 중인 모델의 로그 데이터를 실시간으로 모니터링하고 시각화하는 방법을 학습
  • TensorBoard를 활용하여 모델 학습 과정을 분석

지원 도구

도구버전설명
Tensorboard2.1.0머신러닝 실험의 시각화 도구로, 측정 항목의 추적 및 시각화, 가중치와 텐서의 히스토그램 추적 기능을 제공합니다.
안내

Tensorboard에 대한 자세한 설명은 Tensorboard 공식 문서를 확인해 주세요.

사전 작업

TensorBoard를 사용하기 위한 환경 설정 및 필수 리소스 준비 과정을 안내합니다.

1. Kubeflow 환경 준비

Kubeflow에서 TensorBoard를 사용하기 전에, 실습에 적합한 노드 풀 사양이 준비되었는지 확인합니다. 환경 설정이 필요한 경우, Kubeflow를 이용한 Jupyter Notebook 환경 구성가이드를 참조하여 적절한 사양의 Kubeflow 환경을 구성하세오.

필요 최소 사양

  • 노드 풀 최소 사양: vCPU 4개 이상, 메모리 8GB 이상
  • 여유 File Storage 사이즈: 10GiB 이상

2. 로그 저장을 위한 볼륨 생성

TensorBoard가 학습 로그를 저장할 영구 볼륨(Persistent Volume)을 생성합니다.

  1. Kubeflow 대시보드에 접속하여 Volumes 탭으로 이동합니다.

  2. 상단의 [New Volume] 버튼을 클릭하여 새 볼륨을 생성합니다.

  3. New Volume 화면에서 필요한 정보를 입력하고 [Create] 버튼을 클릭하여 볼륨을 생성합니다.

    이미지. 볼륨 생성하기

작업 순서

TensorBoard를 활용하여 머신러닝 실험의 로그 데이터를 효율적으로 관리하고 시각화하는 구체적인 실습 단계는 다음과 같습니다.

Step 1. Tensorboard 인스턴스 생성하기

  1. Tensorboards 탭을 선택한 후, [New TensorBoard] 버튼을 클릭합니다.

  2. New Tensorboard 화면에서 필요한 정보를 입력하고 [Create] 버튼을 클릭하여 Tensorboard 인스턴스를 생성합니다. 이미지. Tensorboard 생성하기

    항목
    Storage 종류PVC
    PVC NameStep 2에성 생성한 Volume의 이름
    Mount Path선택된 Volume에서 텐서보드 보여줄 볼륨이 저장된 경로
  3. [CONNECT] 버튼을 클릭하여 생성된 Tensorboard 인스턴스를 확인합니다.

    이미지. Tensorboard 확인하기

Step 2. 실습을 위한 노트북 인스턴스 생성하기

이 단계에서는 Kubeflow에서 실습을 위한 노트북 인스턴스를 생성하는 방법을 안내합니다.

  1. Kubeflow 대시보드에서 Notebooks 탭을 선택합니다.

  2. 상단의 [New Notebook] 버튼을 클릭하여 노트북 인스턴스를 생성합니다.

  3. New notebook 설정 화면에서 다음 정보를 입력합니다.

    • Docker Image: mlops-pipelines/jupyter-pyspark-tensorflow:v1.0.1를 선택합니다.
    • Workspace Volume: 기본으로 설정된 새 볼륨을 삭제하려면 휴지통 아이콘을 클릭합니다. 그 다음 [Attach existing volume] 옵션을 선택하고, Step 2에서 생성한 tensorboard 볼륨을 선택합니다.
  4. 설정을 완료한 후, [LAUNCH] 버튼을 클릭하여 인스턴스를 생성합니다.

    이미지. 노트북 생성하기

Step 3. 모델 학습 및 Tensorboard를 통합 결과 확인

이 단계에서는 모델 학습을 수행하고, 학습 결과를 Tensorboard를 통해 확인하는 방법을 안내합니다.

  1. 예제 프로젝트를 아래 링크에서 다운로드하고, 생성한 노트북 인스턴스에 업로드합니다.

  2. 노트북 내에서 TENSORBOARD_URL 변수를 Step 2.에서 생성한 Tensorboard의 주소로 변경합니다.

    • 이미지: Tensorboard 생성하기
  3. 노트북 코드를 실행하여 모델을 학습시키고, IFrame을 통해 Tensorboard에서 변화된 학습 과정을 확인합니다.

    • 이미지: Tensorboard 생성하기