구글 코랩 (Google Colab) 시작하기

    구글 코랩(Google Colaboratory) 시작하기

    구글 코랩(Google Colaboratory)은 구글에서 제공하는 Jupyter Notebook이다. 대신, 인프라는 구글 클라우드를 기반으로 하기 때문에 개개인의 PC 보다 오히려 좋은 성능 및 접근성을 제공하고 있다. (보안 등의 이유로 접속이 차단된 곳에서는 사용 못할 수도 있다.) 그러나, 이와 같은 제약이 없는 사람들이라면, 하드웨어의 투자 (=돈) 및 번거로운 설정 과정을 하나하나 하지 않아도 되기에 사람들이 딥러닝을 학습하는데 많이 쓰고 있다.

    로컬 PC에 주피터 노트북/ 주피터 랩을 설치하는 것에 비해 설정 과정이 간단하기 때문에 포스트 제목도 <설치하기> 또는 <설정하기>가 아니라 <시작하기>가 적합한 것 같다.

     

    준비물

    1. 구글계정
      • 혹시 학교 연계 계정 등 저장 용량이 큰 것(혹은 무한대)이 있으면 더 좋을 듯하나,
      • 기본 계정으로도 무관
    2. 웹브라우저
      • 인터넷 연결되는 환경이기만 하면 된다. 이왕이면 크롬

    이것으로 준비는 끝났다.




     

    접속하기/ 시작하기

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

    에 접속한다. 브라우저의 구글 계정은 접속 후에 변경해도 된다.
    접속하면 다음과 같은 화면이 뜬다.

    취소 버튼을 누르면, 다음과 같은 초기 화면을 보게 된다.

    혹은, 구글 드라이브에 접속해서 계정에 작업디렉토리를 만든 후, 그 디렉토리에서 코랩을 시작시킬 수도 있다. 공부를 위해, 구글 드라이브 내 별도의 폴더를 만들자. 새로운 폴더내에 커서를 놓고, 마우스 우클릭을 하면 더보기 > 연결프로그램 목록에서 Google Colaboratory를 선택한다. 목록에 없으면 연결할 앱 더보기를 눌러서 colab을 검색해 본다.

    위 화면에서 연결프로그램으로 코랩을 고르면, 아래와 같은 화면으로 진입한다.

    특정 폴더로부터 찾아가려면 구글드라이브>폴더>연결하기로 시작할 수 있고, 또는 코랩 페이지에 들어가서 파일을 찾아서 여는 방법으로도 할 수 있다.


     



    구글 드라이브 마운트

    코랩은 구글 드라이브를 마운트하여 스토리지로 쓸 수 있다. 구글 드라이브를 마운트 하려면 두 가지의 방법이 있다.

    • UI에서 연동하는 방법

    코랩을 띄운 후, 우측 폴더 아이콘(1)을 클릭한다. 그리고, 구글드라이브 아이콘(2)을 클릭한다.

    그러면, 위와 같은 팝업이 뜬다. 여기에서 일단, "아니오"를 눌러보자.

    위와 같은 명령어가 자동으로 입력이 나타난다. 즉, 저 커맨드를 직접 입력해서 실행하는 방법이 코랩에서 구글 드라이브를 마운트 하는 두 번째 방법이 된다. 일단, UI에서 연동하는 방법을 써서 연동하는 방법을 설명하는 중이므로, 위의 절차대로 다시 밟아서 이번에는 "GOOGLE 드라이브에 연결" 버튼을 클릭한다. 그러면 마운트가 간단하게 완료될 것이다.

    • command로 연동하는 방법

      위 커맨드에서 뒤에 붙인 force_remount=True는, 기존의 마운트 여부와 관계없이 다시 연동하라는 옵션인데 기존에 연결을 한 적이 없다면 넣지 않아도 된다. 만약, 연동한지 얼마되지 않은 상태에서 다시 마운트하려고 한다면 저 옵션을 넣으라고 뜰 것이다. 위에 뜬 것처럼, 링크를 클릭하면 다음과 같은 코드창이 뜬다.

      이 코드를 복사해서, 위의 인증 칸(authorization code)에 붙여 넣으면 마운트 된다.

      구글 드라이브를 마운트 했으므로, ls 명령어와 cd 명령어를 통해 확인하고 이동할 수 있다.

     

    반응형

     

    시스템 스펙 확인

    나한테 어느 정도의 자원이 할당되었을지 확인해 보자.

    • CPU
      $ cat /proc/cpuinfo
      를 실행한다.
    processor : 0 
    vendor_id : GenuineIntel 
    cpu family : 6 
    model : 79 
    model name : Intel(R) Xeon(R) CPU @ 2.20GHz 
    stepping : 0 
    microcode : 0x1 
    cpu MHz : 2199.998 
    cache size : 56320 KB 
    physical id : 0 
    siblings : 2 
    core id : 0 
    cpu cores : 1 
    apicid : 0 
    initial apicid : 0 
    fpu : yes 
    fpu_exception : yes 
    cpuid level : 13 
    wp : yes 
    flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ss ht syscall nx pdpe1gb rdtscp lm constant_tsc rep_good nopl xtopology nonstop_tsc cpuid tsc_known_freq pni pclmulqdq ssse3 fma cx16 pcid sse4_1 sse4_2 x2apic movbe popcnt aes xsave avx f16c rdrand hypervisor lahf_lm abm 3dnowprefetch invpcid_single ssbd ibrs ibpb stibp fsgsbase tsc_adjust bmi1 hle avx2 smep bmi2 erms invpcid rtm rdseed adx smap xsaveopt arat md_clear arch_capabilities 
    bugs : cpu_meltdown spectre_v1 spectre_v2 spec_store_bypass l1tf mds swapgs taa 
    bogomips : 4399.99 
    clflush size : 64 
    cache_alignment : 64 
    address sizes : 46 bits physical, 48 bits virtual 
    power management: 
    processor : 1 
    vendor_id : GenuineIntel 
    cpu family : 6 
    model : 79 model name : Intel(R) Xeon(R) CPU @ 2.20GHz 
    stepping : 0 
    microcode : 0x1 
    cpu MHz : 2199.998 
    cache size : 56320 KB 
    physical id : 0 
    siblings : 2 
    
    core id : 0 
    cpu cores : 1 
    apicid : 1 
    initial apicid : 1 
    fpu : yes 
    fpu_exception : yes 
    cpuid level : 13 
    wp : yes 
    flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ss ht syscall nx pdpe1gb rdtscp lm constant_tsc rep_good nopl xtopology nonstop_tsc cpuid tsc_known_freq pni pclmulqdq ssse3 fma cx16 pcid sse4_1 sse4_2 x2apic movbe popcnt aes xsave avx f16c rdrand hypervisor lahf_lm abm 3dnowprefetch invpcid_single ssbd ibrs ibpb stibp fsgsbase tsc_adjust bmi1 hle avx2 smep bmi2 erms invpcid rtm rdseed adx smap xsaveopt arat md_clear arch_capabilities 
    bugs : cpu_meltdown spectre_v1 spectre_v2 spec_store_bypass l1tf mds swapgs taa 
    bogomips : 4399.99 
    clflush size : 64 
    cache_alignment : 64 
    address sizes : 46 bits physical, 48 bits virtual power management:
    • Memory
    $ cat /proc/meminfo

    를 실행한다.

    MemTotal: 13333596 kB 
    MemFree: 10363580 kB 
    MemAvailable: 12513656 kB 
    Buffers: 90060 kB 
    Cached: 2192852 kB 
    SwapCached: 0 kB 
    Active: 764800 kB 
    Inactive: 1940252 kB 
    Active(anon): 380660 kB 
    Inactive(anon): 368 kB 
    Active(file): 384140 kB 
    Inactive(file): 1939884 kB 
    Unevictable: 0 kB 
    Mlocked: 0 kB 
    SwapTotal: 0 kB 
    SwapFree: 0 kB 
    Dirty: 692 kB 
    Writeback: 0 kB 
    AnonPages: 422044 kB 
    Mapped: 241600 kB 
    Shmem: 1016 kB 
    Slab: 175184 kB 
    SReclaimable: 133552 kB 
    SUnreclaim: 41632 kB 
    KernelStack: 4576 kB 
    PageTables: 5744 kB 
    NFS_Unstable: 0 kB 
    Bounce: 0 kB 
    WritebackTmp: 0 kB 
    CommitLimit: 6666796 kB 
    Committed_AS: 3249180 kB 
    VmallocTotal: 34359738367 kB 
    VmallocUsed: 0 kB 
    VmallocChunk: 0 kB 
    Percpu: 1024 kB 
    AnonHugePages: 0 kB 
    ShmemHugePages: 0 kB 
    ShmemPmdMapped: 0 kB 
    HugePages_Total: 0 
    HugePages_Free: 0 
    HugePages_Rsvd: 0 
    HugePages_Surp: 0 
    Hugepagesize: 2048 kB 
    Hugetlb: 0 kB 
    DirectMap4k: 95464 kB 
    DirectMap2M: 6195200 kB 
    DirectMap1G: 9437184 kB

    사용중인 맥북보다 더 많은 리소스를 구글에서 빌려주는 셈이다. 그리고, 할당된 자원은 굳이 위처럼 명령어를 통해 확인하지 않아도, 확인이 가능하다.

    노트북 우측 상단에 RAM/ 디스크라고 써 있는 아이콘에 커서를 올려 놓으면, 위 스크린샷과 같이 가용자원의 용량을 보여준다. 위와 같이 간단하게 몇 번만의 클릭으로 구글 코랩 기본 사용설정이 가능하다.

     

    더 보기

    * 만약, 구글 정책의 변경으로 더 이상 학교 계정에서 구글 코랩을 사용할 수 없다면 구글원 직접 가입을 고민할 수도 있을 것이다.

     

    구글원(Google One) - 우주패스를 쓰는 것이 과연 이득일까?

    구글원(Google One) - 우주패스와 직접가입의 경계에서 구글 클라우드 솔루션으로 특히 지메일 공간과 함께 구글 드라이브를 사용하던 사람들에게는 꼭 필요한 솔루션 중 하나입니다. 구글 드라이

    luran.me

    * 파이썬의 기본 기능을 익히거나, 로컬에서 데이터 분석하는 것으로도 좋다면 직접 주피터랩/주피터노트북 설치를 고민할 수도 있을 것이다.

     

    아나콘다로 맥북에 주피터 랩/주피터 노트북 설치하기 (파이썬 개발환경 구축)

    파이썬 개발환경 구축하기 - 아나콘다 주피터랩/주피터노트북 설치방법 파이썬 개발 환경을 구축하고자 아나콘다(Anaconda)를 설치하는 방법에 대해 기록한다. 사실 제목에는 아나콘다를 먼저 썼

    luran.me

     

    댓글(0)

    Designed by JB FACTORY