brunch

매거진 Colaboratory

You can make anything
by writing

C.S.Lewis

by Jayden Mar 25. 2018

Google Colab - 기본 지식 알고가기

What is "Google Colaboratory"?

Google Colaboratory는 얼핏보면 Jupyter  Notebook 과 비슷해보입니다.

그도 그럴 것이,  Google Colaboratory는 구글이 회사 내부에서 이용하고 있던 주피터 노트북을 연구와 교육의 목적으로 커스텀하여 개발한 것이기 때문입니다. 즉, 주피터 노트북의 구글 커스텀 버전인 것이지요. (2017년 10월 공개)


2014년에 Google에서는 Jupyter 개발팀과 함께 Colaboratory의 초기 버전을 공개했습니다. 그 이후 Colaboratory는 Google 내부에서 사용되면서 꾸준히 진화를 거듭해 왔습니다.


Colaboratory는 텍스트, 코드, 코드 출력을 하나의 공동작업 문서로 통합해 주는 머신러닝 교육과 연구를 위한 데이터 분석 도구입니다. Jupyter 노트북 환경이므로 설치 없이도 사용할 수 있습니다.


그럼 그냥 주피터 노트북을 쓰면 되지 왜 Colab을 쓰나요?

Jupyter는 오픈소스 프로젝트이며, Colaboratory는 Jupyter를 기반으로 구축되었지만, 구글 Colaboratory의 장점은 컴퓨터에 브라우저 외에 다른 프로그램을 다운로드, 설치, 실행하지 않고도 Jupyter 노트를 사용하고 다른 사용자와 굉.장.히. 편.리.하.게. 공유할 수 있다는 것입니다.


Google Colaboratory = Google Drive + Juputer Notebook


Colaboratory 웹 브라우저 환경에서 도커로 구글 서버에 접속하여 작업을 할 수 있도록 개발된 서비스이기 때문에, 대부분의 주요 브라우저와 호환되지만, 아무래도 구글에서 개발한 것이다 보니 데스크톱 버전의 Chrome 및 Firefox를 대상으로 가장 꼼꼼한 테스트가 이루어졌습니다.


앞서 설명 드린 것 처럼, Colaboratory는 연구 프로젝트로서 구글 계정이 있으면 누구나 무료로 사용할 수 있습니다.


현재 Colaboratory에서 지원 가능한 언어는 Python 입니다. Python 2.7  및 Python 3.6을 모두 지원합니다. 또한 Google에서는 R 또는 Scala 등의 다른 Jupyter 커널 지원을 바라는 사용자들이 있다는 점을 알고 있으며 이러한 커널을 지원할 의향은 있지만, 아직 확실한 계획은 없다고 합니다.


구글 Colaboratory에서 실행된 코드는 본인의 구글 계정 전용의 가상 머신에서 실행됩니다. 가상 머신이 한동안 유휴 상태가 되면 시스템 리소스 확보를 위해 재활용되며 시스템에 의해 최대 수명으로 실행됩니다. 따라서, 처음에 단순히 로컬 PC에 있는 데이터 파일을 작업 공간에 올리시면, 올리신 데이터를 어디서 찾아야할지 당황스러우실 수도 있습니다. 개인 Google Drive와 Google Colaboratory를 연동해서 파일 서버로 사용하면 그런 불편함을 줄이실 수 있습니다.


실행 방법

Google Colaboratory는 Jupyter Notebook 기능을 모두 포함하고 있으며, 파이썬 코드 실행, 마크다운, 수식, 차트 표현 등이 모두 가능합니다. 만일 필요한 라이브러리가 없다면 pip 외부명령 실행으로 추가 설치할 수 있습니다.


실행 환경

새 노트북을 만들 때, 파이썬 2와 파이썬 3 중에서 파이썬 버전을 선택하여 문서를 작성할 수 있습니다.

> import sys
> sys.version_info  

sys.version_info(major=2, minor=7, micro=14, releaselevel='final', serial=0)
sys.version_info(major=3, minor=6, micro=3, releaselevel='final', serial=0)

위 코드를 실행하면, 현재 작업 중인 파이썬 버전을 확인할 수 있습니다. (2018년 3월 25일 기준으로 파이썬 2는 2.7.14,  파이썬 3는 3.6.3 입니다.)

> import platform
> platform.platform()

'Linux-4.4.96+-x86_64-with-Ubuntu-17.10-artful'

OS 플랫폼은 64비트 우분투 17.10 버전입니다.(2018년 3월 25일 기준)


설치된 파이썬 패키지는 다음 명령어로 확인할 수 있으며, 만일 필요한 패키지가 설치되어 있지 않다면 추가적인 패키지도 설치할 수 있습니다.

> # 설치된 파이썬 패키지
> import pip
> pip.get_installed_distributions()

> # 추가 패키지 설치
> ! pip install pandas_datareader

scipy, numpy, pandas 등 대부분의 파이썬 패키지들이 설치되어 있으며, scikit-learn, tensorflow 등 머신러닝라이브러리도 설치되어 있습니다.


Google Colaboratory를 사용하려 하신다면, Tensorflow를 이용하려는 생각도 있으실텐데요. 오늘자 현재 Colab에 적용되어 있는 Tensorflow version은 1.6.0이고, 사양은 듀얼코드 2.30GHz 입니다.

> import tensorflow as tf
> print(tf.__version__)

> !cat /proc/meminfo
> !cat /proc/cpuinfo

1.6.0
model name : Intel(R) Xeon(R) CPU @ 2.30GHz


✓ 참고 자료

- Google Colaboratory 소개.ipynb

- Google Colaboratory FAQ


Google Colaboratory KR Facebook Group 바로가기



제이든입니다.

고객 관계 관리(CRM) 관련 업무를 해오고 있습니다. 현재는 카카오뱅크에서 데이터 분석을 기반으로 고객의 가치를 이해하고 증대시키는 방법을 찾기 위해 고민하고 있습니다.

최근에는 블록체인, 토큰 이코노미, 머신러닝, 마케팅 자동화, 구글 Colaboratory, 중국의 테크 비즈니스,  애그테크(AgTech) 등에 관심이 많습니다.

라이킷, 댓글, 공유하기 그리고 구독하기는 제가 글을 쓰는 데 큰 동기 부여가 됩니다.
브런치는 최신 브라우저에 최적화 되어있습니다. IE chrome safari