Colab과 Jupyter Notebook

변현섭·2024년 6월 26일
0
post-thumbnail

1. Colab과 Jupyter Notebook

Google Colab은 Jupyter Notebook을 기반으로 구축되어 있다. 따라서, Google Colab에 대해 알아보기에 앞서 먼저 Jupyter Notebook에 대해 알아보기로 하자.

1) Jupyter Notebook

Jupyter는 대화형 컴퓨팅을 제공하는 플랫폼이다. Jupyter 프로젝트의 주된 목표는 대화형 컴퓨팅을 통해 데이터를 분석하고 시각화하며, 이를 다른 사람과 쉽게 공유할 수 있도록 지원하는 것이다.

Jupyter 프로젝트에는 다양한 서비스가 존재하는데, 그중에서 가장 대표적인 서비스가 바로 Jupyter Notebook이다. 참고로, 여기서 노트북은 우리가 흔히 아는 Laptop Computer를 말하는 것이 아니라, .ipynb(Interactive Python Notebook) 형식의 파일을 가리키는 것이다. 노트북은 코드 셀과 마크다운 셀로 구성되며, 각 셀의 역할은 아래와 같다.

  • 코드 셀: 코드를 실행하고 결과를 시각화할 수 있도록 지원
  • 마크다운 셀: 코드에 대한 설명을 문서화할 수 있도록 지원

2) Colab과 Jupyter Notebook

Colab은 이러한 Jupyter Notebook의 대화형 컴퓨팅 환경을 그대로 유지하면서, 아래의 추가적인 기능을 제공한다.

① 클라우드 기반 실행

  • 사용자의 로컬 컴퓨터에서 동작하는 Jupyter Notebook과 달리, Google Colab은 클라우드 환경에서 실행된다.
  • 덕분에 사용자는 컴퓨터의 성능에 구애받지 않는 상태에서, 대규모 데이터를 처리하거나 복잡한 계산을 수행할 수 있게 된다.

② 무료 GPU/TPU 제공

  • 머신러닝 및 딥러닝 작업이 빠르게 처리되기 위해선 GPU와 TPU가 필요하다.
  • Jupyter Notebook 환경을 그대로 사용할 경우, 로컬 컴퓨터에 GPU가 존재해야 한다는 제약이 가해지며, TPU는 로컬 컴퓨터에서 아예 사용이 불가하다.
  • 그러나 Google Colab에서는 무료로 GPU와 TPU를 사용할 수 있는 옵션을 제공하고 있다.

③ 파일 저장

  • Jupyter Notebook에서는 로컬 저장소 또는 JupyterHub에 파일을 저장하는 방식을 사용한다.
  • Google Colab에서는 Google Drive를 사용하기 때문에, 보다 쉽게 파일을 저장하고 불러올 수 있다.

④ 협업 기능

  • Jupyter Notebook은 제한적인 협업 기능(파일 공유 기능)만 제공한다.
  • Google Colab에서는 실시간 협업 기능(여러 사용자가 동시에 같은 노트북에서 작업 가능)을 제공한다.

2. Google Colab

1) 개념

Colab은 파이썬 프로그램을 실행하기 위한 브라우저 상의 Editor로, 머신러닝 모델을 개발할 수 있는 통합 개발 환경(IDE)이다. Colab은 Python을 기반으로 하는 다양한 데이터 분석 및 머신러닝 라이브러리를 지원하기 때문에, 대규모 데이터 처리와 복잡한 모델 훈련을 빠르고 효율적으로 처리하기에 용이하다.

물론, Google Colab을 사용하지 않고도, 다른 개발 환경을 통해 머신 러닝 프로그램을 만들 수 있다. 그러나 이와 같은 방식은 초심자에게는 별로 권장되지 않는다. 그 이유는 머신 러닝 프로그램이 CPU/GPU/TPU의 속도, RAM 메모리의 용량, SSD의 용량 등 컴퓨터 사양에 직접적인 영향을 받기 때문이다.

위에서도 잠깐 언급했다시피, Colab을 사용하면, 컴퓨터 사양에 구애받지 않는 환경에서 실습을 진행할 수 있게 된다. 이러한 이유에서 앞으로도 계속, Colab을 사용하는 방식으로 머신 러닝을 실습해 볼 것이다.

2) 사용법

① 아래의 링크를 클릭하여 Colab에 접속한다.
>> Google Colab

  • 만약 구글 계정으로 로그인이 되어있지 않다면, 먼저 본인의 구글 계정으로 로그인을 진행한다.

② 노트북의 레이아웃은 아래와 같다.

  • Jupyter Notebook과 마찬가지로 코드 셀과 텍스트 셀로 구성된다.
  • 노트북의 제목은 곧 파일의 이름이 된다.

③ 텍스트 셀을 수정하고 싶다면, 해당 셀을 더블 클릭하면 된다.

④ 텍스트 셀은 HTML(Mark-Up) 또는 Mark-Down 언어로 작성할 수 있다.

⑤ 수정이 완료된 후에는 esc 키를 눌러 편집기를 닫는다.

⑥ 우상단에 보이는 연결 탭을 클릭하여 GCP의 Compute Engine과 연결할 수 있다.

  • Compute Engine은 최대 5개까지만 사용할 수 있으며, 하나의 노트북을 12시간 이상 실행할 수 없다.

⑦ RAM 메모리는 약 12GB이고, 디스크 용량은 약 100GB이다.

3) 노트북 만들기

① 파일 > Drive의 새 노트북 버튼을 클릭하여 새로운 노트북을 생성할 수 있다.

② 코드 셀에 임의로 코드를 입력한 후 재생 버튼을 클릭하여 코드를 실행한다.

③ 방금 실행한 노트북은 자동으로 구글 드라이브의 내 드라이브 > Colab Notebooks 폴더 안에 저장된다.

  • 노트북 파일이 수정될 때마다 변경 사항이 Google Drive에 반영된다.

④ 노트북의 이름을 변경하고 싶다면, 노트북의 제목을 설정하면 된다.

  • 제목을 더블 클릭하여 수정을 진행한다.
  • 참고로, Colab에서 확장자를 자동으로 처리해주기 때문에, 노트북의 제목에 .ipynb 확장자를 붙이지 않아도 상관 없다.
profile
LG전자 Connected Service 1 Unit 연구원 변현섭입니다.

0개의 댓글