상세 컨텐츠

본문 제목

[알쓸쿠잡] Colaboratory 톺아보기

알쓸쿠잡

by JinNSpritz 2022. 8. 28. 20:19

본문

작성자 : 16기 김진서

Colab의 모든 것을 낱낱이 알아보는 시간! (1)

KUBIG의 대부분의 작업은 구글 드라이브의 Colaboratory를 이용하여 이뤄집니다. 활동을 더욱 간편하게 하기 위해 오늘은 Colaboratory(이하 Colab)에 대해 몇가지 알아보려고 합니다. 

 

1. Colab의 장점

  • 무료로 GPU 사용가능 
  • 사용자끼리의 간편한 공유 가능 - Google Drive/Github/Kaggle 등과의 호환성도 좋음
  • Jupyter Notebooks 기반으로 한 text, images, HTML, LaTeX, 등 파이썬 뿐만 아니라 다양한 형식 활용 가능

 

2. Colab 기본 기능

  • Colab을 활용하기 위해서는, 구글 드라이브에 접속하여서 마우스 우클릭을 하면, Google Colaboratory를 찾을 수 있습니다. 

  • 처음 Colab을 생성하면, 빈 코드 창이 나옵니다. 이때, 왼쪽 상단바에서 새로운 코드를 더 생성할지, 텍스트를 생성할 지 결정할 수 있습니다. 

  • 코드를 작성한 후에는, 왼쪽에 있는 실행버튼을 클릭하거나, Ctrl/command + Enter를 누르면 코드청크 실행이 가능합니다. 
  • 공유 드라이브에 올려진 파일들을 활용해서 코딩하는 경우에는, 아래의 코드를 활용하면 파일을 저장하여 업로드해서사용하지 않아도, 바로 사용이 가능합니다. 
#구글 코랩을 드라이브에 mount시키면, 드라이브 내부 파일들(csv파일)에 접근이 가능함.
from google.colab import drive
drive.mount('/content/drive')
  • 데이터셋을 remote 서버에서 바로 불러오는 경우엔, 아래와 같은 코드를 활용하여서 content/drive/My Drive로 자동으로 불러올 수 있습니다. 
!wget http://mlr.cs.umass.edu/ml/machine-learning-databases/adult/adult.data -P "/content/drive/My Drive/app"
  • Git Repository Cloning : 전체 github repository를 colab으로 클론 시킬 수 있습니다. 이때는, git command를 활용해야 합니다. 
!git clone https://github.com/wxs/keras-mnist-tutorial.git
  • 텍스트 청크에선, ** 내용 ** 는 볼드체, * 내용 * 는 이탤릭체, 그리고 ~ 내용 ~에서는 가운데 선 처리가 되도록 할 수 있습니다. 이를 통해 구성원들과 내용 공유시 더욱 가독성 있게 제공할 수 있습니다. 또, 수식의 경우에도 text chunk 에서 표현 가능합니다. 

  • 코드 에디팅 팁 1 - 자동 완성
import torch
Tensor = torch.

torch 모듈을 사용할 때, 다양한 함수를 사용할 수 있는데요, 이를 하나씩 기억하기 어려울 때, import torch를 실행한 후, Tensor = torch. 를 적으면 도움을 받을 수 있습니다. 이때, torch 뒤의 "."은 필수입니다!!

이러한 스크린을 확인할 수 있습니다.

  • 코드 에디팅 팁 2 - 함수 documentation 확인
Tensor = torch.cos(

(까지 치고 나면, 아래와 같이 함수의 documentation을 확인할 수 있습니다. 

  • Colab- Magic (1)
%%html
<marquee style='width: 50%; color: Purple;'>Welcome to KUBIG Tistory!</marquee>

위와 같은 코드청크를 이용해서는, 움직이는 결과를 출력할 수도 있습니다. 

이처럼, magic이라고 불리는 것의 list는 아주 많은데, 

Line magics :

%alias %alias_magic %autocall %automagic %autosave %bookmark %cat %cd %clear
%colors %config %connect_info %cp %debug %dhist %dirs %doctest_mode %ed %edit
%env %gui %hist %history %killbgscripts %ldir %less %lf %lk %ll %load %load_ext
%loadpy %logoff %logon %logstart %logstate %logstop %ls %lsmagic %lx %macro
%magic %man %matplotlib %mkdir %more %mv %notebook %page %pastebin %pdb %pdef
%pdoc %pfile %pinfo %pinfo2 %pip %popd %pprint %precision %profile %prun
%psearch %psource %pushd %pwd %pycat %pylab %qtconsole %quickref %recall
%rehashx %reload_ext %rep %rerun %reset %reset_selective %rm %rmdir %run %save
%sc %set_env %shell %store %sx %system %tb %tensorflow_version %time %timeit
%unalias %unload_ext %who %who_ls %whos %xdel %xmode

Cell Magics :

%%! %%HTML %%SVG %%bash %%bigquery %%capture %%debug %%file %%html %%javascript
%%js %%latex %%perl %%prun %%pypy %%python %%python2 %%python3 %%ruby %%script
%%sh %%shell %%svg %%sx %%system %%time %%timeit %%writefile

이러한 종류를 활용하여서 더욱 다양한 Colab 경험을 할 수 있습니다. 

  • Colab 자체 기능

 google.colab에는 data_table이라는 function이 있습니다. 이를 활용하면, 가독성이 좋게 table 형식으로 data를 확인할 수 있습니다. 

또, 바로 data flitering을 아래와 같이 할 수 있습니다. 

  • Code Snippets

Colab 왼쪽 상단부에, 파일 / 수정 / ... / 도움말에서 도움말을 클릭하여 코드 스니펫 검색 (Command/Ctrl+Alt+p)를 누르면, 코랩의 빌트인 함수를 검색할 수 있습니다. 코딩을 할 때, 예를 들어 시각화를 하는 기본 코드 구조를 알고 싶다면, 검색창에 visualisation을 검색하면, 아래와 같이 도움을 얻을 수 있습니다.

  • 번외편 - Colab Corgi/Kitty Mode

 

마지막으로, 코드탭 우상단에 있는 설정 버튼을 누르고 기타를 누르면, 코기/아기고양이/게 모드를 선택할 수 있습니다. 

제목부분에 코기/고양이/게가 걸어다니는 것을 볼 수 있습니다. 코딩에 도움이 되는 feature는 아니지만, 코딩을 하다 잘 되지 않아 화가 나는 경우에 귀여운 것을 보며 마음을 진정시킬 수 있습니다. 

 

이렇게 colab에서 가장 많이 활용되는 기능 뿐만 아니라 다양한 기능을 알아보았는데, colab을 활용하는 분들께 도움이 되었길 바랍니다. 

 

알쓸쿠잡은 다음 편으로 돌아오겠습니다.

읽어주셔서 감사합니다!

 

댓글 영역