web-dev-qa-db-ja.com

Google ColabでKaggleデータセットを使用する

Google Colabのkaggle AP​​Iを介して利用可能なデータセットを使用することは可能ですか? Kaggle APIは このColabノートブック で使用されていますが、どのデータセットにアクセスできるかは少しわかりません。

22
hdiz

ステップバイステップ-

  1. KaggleでAPIキーを作成します。

    これを行うには、kaggle.com /にアクセスして、ユーザー設定ページを開きます。 settings nav

  2. 次に、APIアクセスセクションまでスクロールダウンし、生成をクリックしてAPIキーをダウンロードします。 api token これにより、kaggle.jsonというファイルがコンピューターにダウンロードされます。 Colabでこのファイルを使用して、Kaggleデータセットとコンテストにアクセスします。

  3. Https://colab.research.google.com/に移動します。

  4. コードセルで次のスニペットを使用して、kaggle.jsonファイルをアップロードします。

    from google.colab import files files.upload()

  5. !pip install -q kaggleを使用してkaggle APIをインストールします

  6. kaggle.jsonファイルを~/.kaggleに移動します。これは、APIクライアントがトークンの存在を期待する場所です。

    !mkdir -p ~/.kaggle !cp kaggle.json ~/.kaggle/

  7. クライアントを使用して、!kaggle datasets listなどのデータセットにアクセスできるようになりました。

このプロセスのColab部分の完全なサンプルノートを次に示します。https://colab.research.google.com/drive/1DofKEdQYaXmDWBzuResXWWvxhLgDeVyl

この例では、kaggle.jsonファイル、Kaggle APIクライアントをアップロードし、Kaggleクライアントを使用してデータセットをダウンロードします。

65
Bob Smith

APIを介してKaggleのデータセットにアクセスできる必要があります。この例では、競技用のデータセットのみがリストされています。次のコマンドでアクセスできるデータセットを確認できます。

kaggle datasets list

-sタグを追加してから、興味のある検索語を追加して、データセットを検索することもできます。これにより、犬に関するデータセットのリストが表示されます。

kaggle datasets list -s dogs

APIの詳細とその使用方法については、 documentation here をご覧ください。

お役に立てば幸いです! :)

11
Rachael Tatman

ローカルマシンからデータセットをダウンロードおよびアップロードせずに、Google ColabでKaggle APIを直接使用するためのこのチュートリアルがあります。 Kaggle API + Colaboratory

3
Madmint

this をご覧ください。

背後で公式のkaggle apiを使用しますが、プロセスを自動化するため、VMが削除されるたびに手動で再ダウンロードする必要はありません。また、Kaggle APIをColabで直接使用する際に直面した別の問題は、Kaggle APIトークンをGoogleドライブ経由で転送する手間でした。上記の方法でも同様に自動化されます。

免責事項:私はClouderizerの作成者の1人です。

2
Prakash Gupta

これに対する一番上のレスポンスを組み合わせました Github Gist as Colab Implementation コードを直接コピーして使用できます。

ColabのKaggleからデータセットをインポートする方法

方法:

まず、あなたがしなければならないいくつかのこと:

  1. Kaggleにサインアップする
  2. データにアクセスするコンペティションにサインアップします(たとえば、 LANL-Earthquake-Predictionコンペティション )。
  3. kaggle.jsonとしてKaggle APIにアクセスするには、資格情報をダウンロードしてください
# Install kaggle packages
!pip install -q kaggle
!pip install -q kaggle-cli
# Colab's file access feature
from google.colab import files

# Upload `kaggle.json` file
uploaded = files.upload()
# Retrieve uploaded file
# print results
for fn in uploaded.keys():
  print('User uploaded file "{name}" with length {length} bytes'.format(
      name=fn, length=len(uploaded[fn])))

# Then copy kaggle.json into the folder where the API expects to find it.
!mkdir -p ~/.kaggle
!cp kaggle.json ~/.kaggle/
!chmod 600 ~/.kaggle/kaggle.json
!ls ~/.kaggle

動作するか確認してください!

#list competitions
!kaggle competitions list -s LANL-Earthquake-Prediction
1
CypherX

KaggleからGoogle colabの競合データをダウンロードするには。私はグーグルコラボに取り組んでいますが、同じ問題を経験しています。しかし、私は2つのことをしました。

まず、国番号とともに携帯電話番号を登録する必要があります。次に、kaggleデータセットページで最後の送信をクリックする必要があります。次に、google colabのkaggle.upload kaggle.jsonからkaggle.jsonファイルをダウンロードします。その後、Google colabでこれらのコードを実行します。

!pip install -q kaggle
!mkdir -p ~/.kaggle
!cp kaggle.json ~/.kaggle/ 
!chmod 600 ~/.kaggle/kaggle.json 
!kaggle competitions download -c web-traffic-time-series-forecasting
1
Priyansh gupta

まず、このコマンドを実行して、このcolabファイルの場所、実行方法を確認します。 enter image description here!ls -d $PWD/*/content/data /content/gdrive /content/modelsと表示されます。つまり、現在のディレクトリはroot/content /です。作業ディレクトリ(pwd)は/ content /です。したがって、!lsを実行すると、data gdrive modelsと表示されます。ご参考までに、 ! colab内でLinuxコマンドを実行できます。

Googleドライブは/ contentフォルダーをクリーンアップし続けます。したがって、colabを使用するすべてのセッション、ダウンロードされたデータセット、kaggle jsonファイルはなくなります。そのため、プロセスを自動化することが重要です。そのため、毎回環境をセットアップするのではなく、コードの記述に集中できます。

独自のAPIキーを使用して、例としてcolabコードブロックでこれを実行します。 kaggle.jsonファイルを開きます。あなたはそれらを見つけるでしょう。

# Info on how to get your api key (kaggle.json) here: https://github.com/Kaggle/kaggle-api#api-credentials
!pip install kaggle
{"username":"seunghunsunmoonlee","key":""}
import json
import zipfile
import os
with open('/content/.kaggle/kaggle.json', 'w') as file:
    json.dump(api_token, file)
!chmod 600 /content/.kaggle/kaggle.json
!kaggle config path -p /content
!kaggle competitions download -c dog-breed-identification
os.chdir('/content/competitions/dog-breed-identification')
for file in os.listdir():
    Zip_ref = zipfile.ZipFile(file, 'r')
    Zip_ref.extractall()
    Zip_ref.close()

次に、!lsを再度実行します。必要なすべてのデータが表示されます。それが役に立てば幸い!

上記の手順(1〜6)の後、colabの特定の競合のデータセットを使用するには、次のコマンドを使用できます。

!kaggle大会のダウンロード-c elo-merchant-category-recommendation

(elo-merchant-category-recommendationは、コンテストの名前です。)

0
Avocano