리그캣의 개발놀이터

[Google Colab]클라우드 jupyter notebook을 사용해보자!! 본문

개발 공부/딥러닝

[Google Colab]클라우드 jupyter notebook을 사용해보자!!

리그캣 2019. 3. 17. 13:35



회사에서 Jupyter lab을 사용하여 작업하다가


집에오면 다시 내컴퓨터에 Jupyter notebook을 설치해야 할때가 왔다.


물론 회사에는 ip를 막아놨기때문에 외부에서 접속은 힘든상황 ㅠㅠ


그래서 과거의 기억을 떠올려 google colaboratory를 사용하기로 하였다.


그때는 딥러닝 소스코드를 돌려보려 gpu가 필요하였고 돈이 없던나에게 많은 도움을 주었지만


나온지 얼마 안되어 자세한 설명이 부족했었다..


요즘에는 어떨지 찾아보니 정말 자세한 설명이 나와있어서 많은 도움이 되었다.


https://colab.research.google.com/ 



해당 링크를 클릭하면 colab을 사용가능하다.


먼저 Hello, Colaboratory라는 튜토리얼이 나오는데 주피터 노트북에서 사용하듯이 사용하면 된다.


가장 중요한 사양은 다음과 같다.

(19년 3월 17일 기준)

os:

Ubuntu 18.04.1 LTS


cpu:

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


용량:
Filesystem Size Used Avail Use% Mounted on overlay 49G 21G 27G 44% / tmpfs 6.4G 0 6.4G 0% /dev tmpfs 6.4G 0 6.4G 0% /sys/fs/cgroup tmpfs 6.4G 8.0K 6.4G 1% /var/colab /dev/sda1 55G 22G 34G 40% /etc/hosts shm 6.0G 0 6.0G 0% /dev/shm tmpfs 6.4G 0 6.4G 0% /sys/firmware

Gpu:
테슬라 k80

물론 gpu 최대 가용 시간은 12시간으로 제약되어있지만 이 부분은 약간 의아하다. 한번돌릴때 말인지. 하나의 계정에 제약이 되어있는것인지 알아볼 필요가 있다.




새로운 파이썬을 실행하기 위해서는 다음을 클릭한다 그러면 untitled.ipynb이 표시될 것이다.




위와 같이 !와 뒤의 명령어로 기본 하드웨어의 상태 및 os의 종류를 알아볼 수 있다.


여기서 데이터를 다루기 위하여 가장 중요한 것은 역시 나의 csv에 접근을 할 수 있냐 없냐 인것 같다.


내 기억으로는 2년전 colab을 사용하기 위해서는 어렵게 검색해서 방법을 알아봣던 것으로 기억한다 ㅠㅠ


그러나 요즘은 많은 블로그 들에서 정말 친절하게 알려주고 있었다.


다시 한번 내가 만튼 i파이썬 환경에서 [파일] 탭을 클릭해보자



드라이브에서 찾기를 클릭!!



오잉 .. 내가 만든 Ipython notebook이 나의 드라이버에 들어가 있는 것을 볼 수 있다.


다시 내가 만든 colab 환경에 들어와  다음과 같은 명령어로 Gpu를 확인해 보았다.


  $!nvidia-smi



연동이 안되어있어서 communicate를 할 수 없다??라는 뜻같다.


그러면 연동을 해주어야지~!!


[런타임]탭 런타임 유형 변경에 들어가 준다.



그러면 다음과 같이 변동이 가능하다.



GPU를 가속기로 달아주고 저장을 클릭하면 GPU가 연동된것이다 


참 쉽쥬??


자 이제 구글 드라이브와 연동을 해볼 것이다


왜?? 파일을 참조해야할 일이 생기기 때문이다.


from google.colab import auth
auth.authenticate_user()

from google.colab import drive
drive.mount('/content/gdrive')


위의 코드를 그대로 사용해 주도록 하겠다.



해당 코드를 올리면 다음과 같은 링크와 아래 oauth인증을 하기위한 코드를 입력해주라고 나온다.


먼저 링크에 들어가서 코드를 발급받아야 한다.



링크를 타고타고 들어가서 해당하는 코드를 복사해서 ipynb에 입력해 주자.



Mounted ad /content/gdrive라고 마운틴 된 것을 확인 할 수 있다.


여기서 중요한게 있다. ㅠㅠ 구글 드라이브 연동은 하루마다 풀리기 때문에 다시 로그인하면 다시 해당 명령을 사용하여 다시 마운틴 해주어야 한다는 단점이 있다


그 외에는 정말 많은 장점이 있다고 생각한다.


아래 명령어를 통하여 현재 디렉토리의 파일들을 확인 가능할 것이다.


만약 아래 명령어가 실행되지 않는다면 다시 위에 명령어를 재 실행하여 구글 드라이브와 연동을 하여야 한다.


$!ls -al

라고 입력 후 shift+enter로 쉽게 실행이 가능하다.


만약 명령어의 flow? 즉 이어짐을 원한다면 하나의 블록? 셸 안에 다음과 같은 형식으로 입력해 주어야 한다.


$첫번째 명령어; 두번째 명령어;


다음과 같은 명령어를 통하여 gdrive 폴더에 들어가 파일 리스트를 확인해 보았다.



다음과 같은 파일들이 들어가 있는 것을 확인 가능 하였다.

여기서 궁금해진 열정적인 리그캣!! 해당 'My Drive'가 무엇일까??



직접 확인해 보았으니.... 헉 내 구글드라이브 메인?(최상단)에 저장된 파일들이 였다.




그러면 여기에 directory를 만들고?? 거기에 csv 파일을 올리면 colab에서 불러와 쓸 수 있겟네????


또한 이 외에도 pip 설치 및 각종 명령어 들이 가능하다.


아래 해당 블로그에서 많은 정보를 참고하였고 

더 자세한 정보를 얻고싶다면 내가 포스팅하는 것보다 아래의 링크를 참고하는게 여러분에게 더 좋을 것이라고 생각한다


링크




Comments