7-5-1 단 1 시간이면 가능한 머신 러닝 초보자를 위한 구글 Colabo 노트북에의 초대

in #kr6 years ago (edited)

컴퓨터 코딩을 다루다 보면 흔하게 접하는 용어로서 Front end 와 Back end 가 있다. 컴퓨터 코딩에서 Front end 란 코드를 작성 수정 빌드 업로딩 저장 및 라이브러리 설치를 지원하기 위한 편집 시스템을 뜻한다. 간단한 예로서는 아두이노 IDE를 들 수 있을 것이다. 마찬가지로 머신 러닝을 위한 코드 편집 작업을 위해서는 이미 잘 알려진 툴이 있다. 너무나 잘 알려진 아나콘다를 비롯하여 여러 가지 툴이 있을 수 있다. 특히 아나콘다에는 Spyder 편집기와 Jupyter Notebook 이 대표적이다. 반면에 Back end 는 일종의 Solver를 뜻한다. TensorFlow, Keras, PyTorch 와 같은 라이브러리들이 머신 러닝을 위해 Front end에 설치되는 대표적인 Back end 로서 머신 러닝 코드를 실행 시키는데 필수적으로 사용된다.

파이선 언어를 기반으로 하는 머신 러닝 편집 및 빌드 과정에서 다음과 같이 라이브러리 모듈을 불러들일 때
import tensorflow as tf
import torch
∙∙∙
이 Back end 라이브러리들이 설치되어 있지 많으면 항상 아래와 같은 에러 메시지를 받게 된다.
No module named ∙∙∙
사실 아주 간단한 에러 메시지이지만 파이선 머신 러닝을 처음 시작해 보려는 초보자가 이런 메시지를 받게 되면 좌잘하게 되는 첫 번째 단계에 들어선 것이다. 사실 머신 러닝이 그다지 복잡한 이론이나 컴퓨터 코딩을 요하는 것은 아니지만 그래도 시작하려면 Front end 설치 과정에 관해서 세세히 알아야 할 필요가 있는 것이다. 필자도 이런 과정을 당연히 겪었고 그 결과 경험을 공유하기 위해 작업일지를 책으로 출간하기도 했다. 이 책의 1장이 아나콘다 스파이더와 쥬피터 노트북 설치이다. 머신 러닝을 깊게 연구해 볼 요량이라면 이 책의 첫 장을 겪어 보는 것이 지름길이라 할 것이다.

noname01.png

하지만 그 보다 더 준비가 안 된 초보자라면 지금 당장 코드를 돌려볼 수 있는 다른 대안이 필요할지도 모르겠다. 없는 것은 아니다. 물론 초보자들에게 간단히 소개 드리지만 사실 그 대안은 필자도 최근에 GPU 사용을 계기로 시작하게 된 기법으로서 Google 크롬에서 사용 가능한 Colabo 편집 시스템이다. 사용해 보니 놀랍게도 Jupyter Notebook 과 아주 유사하였다.

국내에서 상당히 많은 안드로이드 폰 사용자가 있기 때문에 구글 이메일 및 크롬 계정은 있으리라 본다. 로그인해서 보면 아래와 같이 본인이 사용하는 앱들이 즐비하게 나타나 있다. 구글에 로그인 되어 있는 상태에서 구글의 NDRIVE 속으로 들어가 보자.

noname02.png

NDIRIVE 속은 잡다한 사물들이 잔뜩 들어 있는데 + 연결할 앱 더보기를 선택 클릭하자.

noname03.png

드라이브 앱 연결이 뜨는데 엄청 많으므로 검색을 이용하도록 하자. “colaboatory”를 입력 검색한다.

noname04.png

Colaboratory 앱 아이콘이 뜨면 연결 버튼을 누르자.

noname05.png

연결 버튼 누른 후 기본 앱 설정 요구가 나오면 예스로 통과 후 평가하기 창이 뜨는데 끈 후 다시 앞으로 돌아가서 Colaboratory가 메뉴에 등록되었는지 살펴보고 있으면 클릭해서 시작하자.

noname06.png

noname07.png

대박! 클라우드형 쥬피터 노트북이 뜨는데 바로 코딩해서 실행시키면 될 것 같다.

noname08.png

아나콘다에서 실행되던 코드를 하나 복사하여 아래와 같이 셀 하나에 집어넣고 수정해서 실행해 보자. 필자도 여기까지 오는데 거의 2년 반 정도 소모했지만 오늘 시작하는 당신은 단 1시간이면 여기까지 도달 가능하리라 생각합니다.

한편 아나콘다에서는 텐서플로우와 PyTorch를 함께 불러 쓸 수 없지만 구글 Colabo 에서는 그런 문제도 없어진 듯하다. 즉 torch에 이어 tensorflow를 불러도 아무런 문제가 없으며 NumPy 와 Matplotlib를 부를 수 있으면 웬만한 파이선 머신 러닝 코딩 작업은 무난하다. 그밖에 필요한 라이브러리가 있다면 그 라이브러리 이름을 import 하면 될 것이다.

noname09.png

마나마인로고.png