250x250
Notice
Recent Posts
Recent Comments
Link
«   2026/06   »
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30
Tags more
Archives
Today
Total
관리 메뉴

Python 연습장

구글 코랩(colab)을 알아보자 본문

코딩

구글 코랩(colab)을 알아보자

포숑 2022. 9. 7. 00:11
728x90

python으로 코딩을 해 본 사람이라면 모두가 사용해봤을 colab. 

하지만 배포된 강의자료 열어볼 때만 써봤지 제대로 알아보고 사용한 적이 없어서 환경과 사용방법에 대해 정리해두려고 한다. 

 

[ colab 을 사용하는 이유 ] 

- GPU 가 제공된다.

- ipynb 파일로 markdown 을 같이 쓸 수 있어서 강의자료로 적합하다.

- cloud(google drive) 기반이라 장소에 구애없이 사용가능하다. 

- cloud 기반이라 공유하기 편하다. 

 

[ colab 의 단점 ] 

- 기본 package 가 아니면 매번 package 를 새로 install 해줘야 한다.

- 코드가 길어질 경우, output 이 많을 경우 로딩이 있고 느리다.

- jupyter notebook 과 마찬가지로 코드 오류 확인이 어렵다. 

- 서버에서 작동하는거라 local host 접속이 불가하다. (dash 같은 java 기반 패키지 이용에 제한이 있다.)

 

사실 충분히 잘 구동되는 일반 PC환경에서는 제약도 적고 빠른 vscode, pycharm, spyder 같은 ide 를 사용하는 게 가장 좋다. 

GPU가 없는 환경에서 GPU 사용이 필요하거나, 장소를 옮겨가며 여러 컴퓨터에서 코딩 작업을 하는 경우에 colab을 추천한다.

 

이렇게 쓰고보니 추천하지 않는다는 말 같지만 GPU 제공 하나만으로도 엄청난 장점이다. 

또 GPU가 있어도 환경맞추기가 까다로운데 (초기에는 맞춰놓겠지. 하지만 업그레이드는 안한다. 나만 그런가?ㅎ)

텐서플로우와 파이토치 최신버전에서 GPU 구동이 가능하도록 알아서 세팅을 해준다는 건 정말정말 큰 장점이다.

 

 

 

[ colab default 설정값 ] 

파이썬 버전은 3.7에 맞춰져 있다. 

!python --version
# Python 3.7.13

 

기본으로 설치되어있는 package 들은 너무 많은데 이 중에서 주요한 패키지만 살펴보겠다.

 

먼저 matplotlib 은 현 최신버전이 3.5 인데 3.2가 들어있고 xgboost 는 지금 최신버전이 1.6 인데 0.9 버전이 들어있다. 

물론 업그레이드 가능하지만 귀찮으니까.. 아마 호환 때문에 일부러 낮은 버전으로 해둔거겠지?

 

tensorflow 최신버전 2.8(현재 최신버전은 2.9지만...)이 가능하다는 게 신기하다.

컴퓨터 여러대로 환경 맞춰봤을 때 2.5까지가 사용할 수 있는 가장 높은 버전이었는데...!

Package                       Version
----------------------------- ----------------------------
bs4                           0.0.1
Cython                        0.29.32
gensim                        3.6.0
imbalanced-learn              0.8.1
keras                         2.8.0
lightgbm                      2.2.3
matplotlib                    3.2.2
numba                         0.56.0
numpy                         1.21.6
pandas                        1.3.5
plotly                        5.5.0
scikit-learn                  1.0.2
scipy                         1.7.3
seaborn                       0.11.2
tensorflow                    2.8.2+zzzcolab20220719082949
torch                         1.12.1+cu113
xgboost                       0.90

 

package 업그레이드 하는 방법은 터미널에서 하는 그대로  --upgrade  시켜주면 된다.

!pip install --upgrade xgboost #최신
!pip install --upgrade xgboost==1.6.1 #버전지정

 

[ colab 에서 파이썬 버전 변경하는 방법 ] 

!wget https://www.python.org/ftp/python/3.8.12/Python-3.8.12.tgz
!tar xvfz Python-3.8.12.tgz
!Python-3.8.12/configure
!make
!sudo make install

시간이 꽤 소요된다. 5분 정도 뒤에 확인하면 된다. 

!python --version

 

[ 코랩에서 GPU 사용하기 ] 

GPU 가 제공되기는 하지만 비싸고 한정된 자원이니 구글도 막 퍼주진 않는다.

default 설정은 GPU 는 미사용이고 GPU 를 사용하기 위해서 런타임 > 런타임 유형변경 > 하드웨어 가속기 > GPU 로 변경해준다.

GPU를 한 개 세션에서만 사용할 수 있어서 노트북 두 개 열어놓고 둘 다 GPU 사용하는 건 안된다. (무료 버전 기준)

 

그리고 GPU 가 제대로 할당되었는지 확인하기 위해 아래와 같이 입력한다.

!nvidia-smi

 

입력하면 아래와 같이 할당된 GPU 가 나온다.

Tesla T4가 배정되었다. GPU는 랜덤으로 배정된다는데 난 왜 돌릴 때마다 Tesla T4 인지 모르겠네.

Tesla T4 앞에는 GPU number 다. GPU 가 여러개인 경우 0,1,2 이렇게 뜨고 어떤거 사용할지 지정할 수 있다.

(근데 여러개였던 적이 없어서 안해봄.)

 

[ colab 유료서비스 ]

일반 무료버전과 pro, pro+ 의 두 가지 유료버전으로 나뉜다.

 - pro는 9.99달러/월 (현재 환율로는 만사천원ㅠㅠ)

 - pro+는 49.99달러/월 (7만원 가까이...).

 

구글 설명에는 무료서비스보다 얼마만큼 좋아진다, 몇배만큼 향상된다 라는 말없이 결제만 하라고 해서 정확하게는 모르겠지만

pro 에 더 좋은 사양의 GPU에 할당되고 좀 더 오래 사용할 수 있으며 런타임유형에서 RAM도 2배로 늘리는 옵션 선택이 가능하다.

pro+는 백그라운드에서도 돌아간다는 특장점이 있다.

 

강사들은 많이 쓰는 것 같은데 pro+ 쓰시는 분은 못본 듯.

나는 무료만 해도 충분한 것 같다!

 

[ 단축키 ]

일반 jupyter notebook 하고 단축키가 달라서 안 먹길래 그냥 마우스로 요리조리 움직였다가 불편해서 정리해둔다.

맥에서는 ctrl 대신 cmd 다.

 

- 윗줄에 셀삽입 : ctrl + m + a 

- 아랫줄에 셀삽입 : ctrl + m + b

   (사실 여기까지는 그냥 esc + a, b 하면 jupyter notebook 과 동일하게 작동된다)

- 삭제 : ctrl + m + d

  (삭제는 dd  를 아무리 눌러봐도 안됐다. ctrl + m 이 꼭 필요하다) 

- 코드셀로 변경 : ctrl + m + y

- 마크다운셀로 변경 : ctrl + m + m 

- 실행취소 : ctrl + m + z 

- 실행 : ctrl + enter / shift + enter

 

[ 변수 확인하기 ] 

왼쪽 탭에 변수{x}를 클릭하면 어떤 변수가 있는지 속성이 뭔지 값은 뭐가 있는지 보여준다.

(spyder의 variable explorer 는 다른 ide 를 찾아볼수록 사기다.)

 

[ 함수에서 Docstring 보는 방법 ]

도구 > 설정 > 코드 완성 제안을 자동으로 표시를 해제 후 함수에서 shift + tab

함수에서 하이퍼파라미터 옵션들이 뭐가 있는지 디폴트 값은 어떻게 설정되어있는지 확인할 때 docstring을 보는데 

colab 에서는 먼저 설정에가서 저 옵션을 체크해제해줘야 shift + tab 으로 작동된다.

해제없이도 가끔 그냥 되기도 하던데 그건 뭘 눌렀을 때 작동되는지는 정확히 모르겠다. 

속 편하게 설정 변경하고 shift + tab 사용!

 

설정 기웃거리다가 발견한 옵션인데 코랩에서 웰시코기가 걸어다니게 할 수 있다. 귀엽군.

도구 > 설정 > 기타 > 코기 모드

웰시코기 몇마리가 걸어다닌다.

 

728x90

'코딩' 카테고리의 다른 글

colab 에서 google drive mount 하기  (0) 2023.01.02
torch 설치  (0) 2022.12.29
Python 가상환경 만들기  (0) 2022.08.09
Global memery usage 확인 방법 in Python  (0) 2022.08.09
CPU 코어 수 확인 파이썬 코드  (0) 2022.08.09
Comments