Google CoLab으로 머신러닝 공부 편하게 시작하기
※ Google Colaboratory란? ※
Google Colaboratory를 이용하게 되면, 기존에 주피터 노트북(Jupyter Notebook) 환경에서 인공지능을 공부하던 사람들은 이제 더욱 편하게 공부할 수 있게 됩니다. 자신의 컴퓨터 성능이 매우 좋은 것이 아니라면, 일반적인 프로그래밍을 공부하는 학생들은 CoLab을 이용하는 것을 추천합니다.
CoLab은 주피터 노트북 환경과 Google Drive를 합친 것과 같습니다. 주피터 노트북만큼이나 편하게 소스코드를 작성하고, 그에 대한 설명을 작성할 수 있습니다. 뿐만 아니라 Google Drive에 문서를 저장하고, 이를 다시 불러올 수 있습니다. 더불어 구글 계정만 있으면 무료로 이용할 수 있다는 점에서 매우 간단히 이용하며 머신 러닝을 공부할 수 있습니다.
CoLab은 2017년 10월에 공개되었고, 2019년 1월에 걸쳐 업데이트 되어 PyTorch를 포함해 상당수 유명 라이브러리들을 웹 환경에서 곧 바로 이용할 수 있는 상태입니다. 그래서 교육 목적, 팀 내에서 함께 연구할 목적으로 CoLab을 이용하면 매우 효과적입니다. 같이 소스코드를 작업하면, 곧바로 변경사항이 상대방에게 표시되기 때문에 사실상 뛰어난 공유 환경이라고 할 수 있습니다.
이러한 CoLab은 무료 서비스일 뿐만 아니라 GPU까지 지원합니다. GPU는 한 번에 12시간 동안만 무료로 이용할 수 있지만, 공부를 하면서 웬만한 모델을 돌리는 목적으로 매우 충분하기 때문에 아주 강력하고 좋은 협업 개발환경이라고 할 수 있습니다.
▶ Google CoLab: https://colab.research.google.com/
지금까지 다양한 머신러닝 프로젝트를 진행하기에 앞서, 항상 자신의 컴퓨터에 Jupyter 개발환경을 구축해야 했습니다. 하지만 CoLab은 그 자체로 웹 브라우저만 있어도 실행할 수 있는 개발환경입니다. 따라서 매우 편리한 겁니다.
※ 파이썬(Python) 소스코드 작성해보기 ※
Google Colaboratory에 접속하면 다음과 같은 [Google Colaboratory] 사용 방법에 대해서 안내가 나올 수 있습니다. 이 때는 [취소] 버튼을 눌러서 안내 문구를 꺼주시면 됩니다. 사실 안내 문구를 다 읽지 않아도, 사용하기에 직관적이고 편리하게 구성되어 있기 때문에 쉽게 이용할 수 있을 것입니다.
파이썬(Python) 소스코드를 작성하기 위해서는 다음과 같이 [파일] - [새 Python 3 노트]를 열어주시면 됩니다.
이후에 다음과 같이 파이썬(Python) 소스코드를 작성하여 구동시켜 볼 수 있습니다.
※ 소스코드 공유하기 ※
Google Colaboratory의 가장 큰 장점 중 하나는 소스코드를 손쉽게 공유할 수 있다는 점입니다. 특히 [파일] - [GitHub에 사본 저장...] 버튼을 눌러서 GitHub의 특정한 Repository에 해당 파일을 업로드할 수 있습니다.
저는 사전에 GitHub에 [Google-CoLab]이라는 이름의 Repository를 만들어 주었으며, 다음과 같이 Google-CoLab이라는 Repository에 특정한 CoLab 소스코드 파일을 업로드할 수 있도록 설정했습니다.
결과적으로 소스코드가 업로드 되면, 다음과 같이 Repository에서 확인할 수 있게 됩니다.
※ 유의 사항 ※
Google CoLab은 소스코드는 Drive에 영구적으로 저장이 된다는 장점이 있습니다. 하지만 소스코드를 실행함에 있어서 임시적으로 저장되는 변수 값, 데이터 등은 영구적이지 않다는 점을 유의하셔야 합니다. 그래서 학습 목적의 데이터를 다운로드 받아서 사용하고자 할 때는 Drive에 저장을 한 뒤에, 이를 불러오는 방식을 이용하셔야 합니다.
이러한 현상이 발생하는 이유는 CoLab이 Docker 기반의 컨테이너 개발환경이기 때문입니다. 따라서 추가적으로 pip 등의 명령어를 이용해 다른 라이브러리를 설치했다고 하더라도, 몇 시간 뒤에는 해당 라이브러리가 설치 이전 상태로 돌아가 있을 수 있습니다. 그래서 다시 주기적으로 설치해야 하는 과정이 필요할 수 있습니다.
※ CoLab 성능 확인 ※
파이썬 버전을 확인해 봅시다.
import sys
sys.version_info
디스크 용량도 확인해보겠습니다.
!df -h
메모리 정보는 다음과 같이 확인할 수 있습니다.
!cat /proc/meminfo
CPU 정보는 다음과 같이 확인할 수 있습니다.
!cat /proc/cpuinfo
이후에 GPU를 사용할 수 있도록 설정해보겠습니다.
이제 GPU를 사용할 수 있는 상태인지 확인해보겠습니다.
!nvidia-smi
※ CoLab 파일 업로드 및 다운로드 ※
파일을 업로드 할 때는 다음과 같이 할 수 있습니다.
from google.colab import files
uploaded = files.upload()
위 소스코드를 실행하면 파일 업로드 버튼이 등장하게 되고, 이를 이용해 업로드 할 수 있습니다. 저는 한 번 하나의 문서 파일을 업로드 해보았습니다.
업로드가 된 파일을 다운로드 받을 때는 다음과 같이 할 수 있습니다.
files.download('serverless.yml')
※ 라이브러리 사용해보기 ※
최신 버전의 CoLab에는 처음부터 TensorFlow 및 PyTorch 등의 라이브러리가 설치되어 있습니다. 원래 PyTorch는 기본적으로 설치가 되어있지 않았지만, 2019년에 들어와서 사용할 수 있게 되었습니다.
import torch
print(torch.__version__)
'인공지능' 카테고리의 다른 글
PyTorch 나만의 데이터셋을 만들고, 이를 ImageFolder로 불러오기 (1) | 2020.04.10 |
---|---|
PyTorch에서 특정 Dataset을 열어 이미지 출력하기 (3) | 2020.04.10 |
파이썬(Python) Matplotlib 라이브러리 다루기 (0) | 2018.12.08 |
파이썬(Python) Matplotlib 라이브러리의 기초 (0) | 2018.12.08 |
파이썬(Python) Pandas의 활용 (0) | 2018.12.08 |