Kaggle with Google Colab

Page content

공지

제 수업을 듣는 사람들이 계속적으로 실습할 수 있도록 강의 파일을 만들었습니다. 늘 도움이 되기를 바라며. 참고했던 교재 및 Reference는 꼭 확인하셔서 교재 구매 또는 관련 Reference를 확인하시기를 바랍니다.

I. 개요

  • Kaggle 대회에서 나오는 데이터의 용량은 작은 편은 아니다.
  • 성능이 적은 노트북을 사용해야 하는 경우라면 Google Colab을 사용해야 한다.
  • 이 때, Kaggle 데이터를 Google Colab으로 다운로드 받는 과정에 대해 기술 하려고 한다.

II. 캐글 계정에서 해야 할 것

  • 먼저 본인의 계정에서 API Token을 다운로드 받는다.

III. Google Colab에서 해야 할 것

  • Create New API Token을 누르면 kaggle.json 파일이 다운로드 된다. 이 파일을 바탕화면에 옮긴 뒤, 아래 코드를 실행 시킨다.
!pip install kaggle
Requirement already satisfied: kaggle in /usr/local/lib/python3.6/dist-packages (1.5.6)
Requirement already satisfied: tqdm in /usr/local/lib/python3.6/dist-packages (from kaggle) (4.41.1)
Requirement already satisfied: urllib3<1.25,>=1.21.1 in /usr/local/lib/python3.6/dist-packages (from kaggle) (1.24.3)
Requirement already satisfied: python-slugify in /usr/local/lib/python3.6/dist-packages (from kaggle) (4.0.0)
Requirement already satisfied: six>=1.10 in /usr/local/lib/python3.6/dist-packages (from kaggle) (1.12.0)
Requirement already satisfied: certifi in /usr/local/lib/python3.6/dist-packages (from kaggle) (2020.4.5.1)
Requirement already satisfied: requests in /usr/local/lib/python3.6/dist-packages (from kaggle) (2.23.0)
Requirement already satisfied: python-dateutil in /usr/local/lib/python3.6/dist-packages (from kaggle) (2.8.1)
Requirement already satisfied: text-unidecode>=1.3 in /usr/local/lib/python3.6/dist-packages (from python-slugify->kaggle) (1.3)
Requirement already satisfied: chardet<4,>=3.0.2 in /usr/local/lib/python3.6/dist-packages (from requests->kaggle) (3.0.4)
Requirement already satisfied: idna<3,>=2.5 in /usr/local/lib/python3.6/dist-packages (from requests->kaggle) (2.9)
from google.colab import files
files.upload()
Saving kaggle.json to kaggle.json





{'kaggle.json': b'{"username":"your_id","key":"your_key_value"}'}
  • 위 파일이 제대로 업로드 되었는지 확인하기 위해 아래 코드를 실행한다.
!ls -1ha kaggle.json
kaggle.json
  • 위 코드를 실행 시켰을 때, kaggle.json이 나온다면 성공적이다.
  • json 파일을 ~/.kaggle로 이동 시켜야 하며, 아래 코드를 실행시키자.
!mkdir -p ~/.kaggle # 파일 생성
!mv kaggle.json ~/.kaggle/ # kaggle.json 파일 이동
!chmod 600 ~/.kaggle/kaggle.json # 권한 부여
  • 현재 진행중인 Compeition을 확인한다.
!kaggle competitions list
Warning: Looks like you're using an outdated API Version, please consider updating (server 1.5.6 / client 1.5.4)
ref                                               deadline             category            reward  teamCount  userHasEntered  
------------------------------------------------  -------------------  ---------------  ---------  ---------  --------------  
digit-recognizer                                  2030-01-01 00:00:00  Getting Started  Knowledge       3000           False  
titanic                                           2030-01-01 00:00:00  Getting Started  Knowledge      22146            True  
house-prices-advanced-regression-techniques       2030-01-01 00:00:00  Getting Started  Knowledge       5138            True  
connectx                                          2030-01-01 00:00:00  Getting Started  Knowledge        399           False  
nlp-getting-started                               2030-01-01 00:00:00  Getting Started      Kudos       1965            True  
competitive-data-science-predict-future-sales     2020-12-31 23:59:00  Playground           Kudos       6867           False  
global-wheat-detection                            2020-08-04 23:59:00  Research           $15,000        386           False  
open-images-object-detection-rvc-2020             2020-07-31 16:00:00  Playground       Knowledge          1           False  
open-images-instance-segmentation-rvc-2020        2020-07-31 16:00:00  Playground       Knowledge          0           False  
hashcode-photo-slideshow                          2020-07-27 23:59:00  Playground       Knowledge         25           False  
prostate-cancer-grade-assessment                  2020-07-22 23:59:00  Featured           $25,000        395           False  
alaska2-image-steganalysis                        2020-07-20 23:59:00  Research           $25,000        328           False  
halite                                            2020-06-30 23:59:00  Featured             Kudos          0           False  
m5-forecasting-accuracy                           2020-06-30 23:59:00  Featured           $50,000       4008            True  
m5-forecasting-uncertainty                        2020-06-30 23:59:00  Featured           $50,000        439           False  
trends-assessment-prediction                      2020-06-29 23:59:00  Research           $25,000        363           False  
jigsaw-multilingual-toxic-comment-classification  2020-06-22 23:59:00  Featured           $50,000        998           False  
tweet-sentiment-extraction                        2020-06-16 23:59:00  Featured           $15,000       1278           False  
imet-2020-fgvc7                                   2020-05-28 23:59:00  Research         Knowledge         82           False  
abstraction-and-reasoning-challenge               2020-05-27 23:59:00  Research           $20,000        841           False  
  • 이 때 참가하려는 현재 진행중인 대회 M5 Forecasting - Accuracy에 참가한다고 가정해보자.
  • 아래 코드를 실행하면 데이터를 다운로드 받을 수 있다.
  • 구글 코랩 content 폴더에 가면 zip 파일을 확인할 수 있다.
! kaggle competitions download -c m5-forecasting-accuracy
Warning: Looks like you're using an outdated API Version, please consider updating (server 1.5.6 / client 1.5.4)
sales_train_validation.csv.zip: Skipping, found more recently modified local copy (use --force to force download)
sample_submission.csv.zip: Skipping, found more recently modified local copy (use --force to force download)
calendar.csv: Skipping, found more recently modified local copy (use --force to force download)
sell_prices.csv.zip: Skipping, found more recently modified local copy (use --force to force download)
  • 다운로드된 모든 파일을 아래와 같이 unzip을 사용해서 확인한다.
!unzip sales_train_validation.csv.zip
Archive:  sales_train_validation.csv.zip
  inflating: sales_train_validation.csv  
!ls
calendar.csv			sample_data
sales_train_validation.csv	sample_submission.csv.zip
sales_train_validation.csv.zip	sell_prices.csv.zip

IV. 결론

  • Kaggle에서 데이터를 다운로드 받는 부분을 수행하였고, 이 부분을 통해서 이제 여러분들이 적극적으로 코드를 경험하기를 바란다.

V. Reference

출처: Jay Speidell. Easy way to use Kaggle datasets in Google Colab. Retrieved from https://www.kaggle.com/general/51898