gpt4 book ai didi

api - 如何从 Kaggle 中将过大的 Kaggle 数据集的一个选定文件加载到 Colab 中

转载 作者:行者123 更新时间:2023-12-04 07:36:30 25 4
gpt4 key购买 nike

如果我想从 Kaggle notebook 切换到 Colab notebook,我可以从 Kaggle 下载 notebook,然后在 Google Colab 中打开 notebook。这样做的问题是您通常还需要下载和上传 Kaggle 数据集,这非常费力。
如果你有一个小数据集或者你只需​​要一个较小的数据集文件,你可以将数据集放入 Kaggle notebook 期望的相同文件夹结构中。因此,您需要在 Google Colab 中创建该结构,例如 kaggle/input/或者其他什么,然后把它上传到那里。这不是问题。
但是,如果您有一个大型数据集,您可以:

  • 挂载您的 Google Drive 并使用那里的数据集/文件

  • enter image description here
  • 或者您将 Kaggle 数据集从 Kaggle 下载到 colab,遵循官方 Colab 指南 Easiest way to download kaggle data in Google Colab ,请使用链接了解更多详情:

  • Please follow the steps below to download and use kaggle data withinGoogle Colab:

    1. Go to your Kaggle account, Scroll to API section and Click Expire API Token to remove previous tokens

    2. Click on Create New API Token - It will download kaggle.json file on your machine.

    3. Go to your Google Colab project file and run the following commands:

    1.    ! pip install -q kaggle
    2. Choose the kaggle.json file that you downloaded

      from google.colab import files

      files.upload()
    3. Make directory named kaggle and copy kaggle.json file there.

      ! mkdir ~/.kaggle

      ! cp kaggle.json ~/.kaggle/
    4. Change the permissions of the file.

      ! chmod 600 ~/.kaggle/kaggle.json
    5. That's all ! You can check if everything's okay by running this command.

      ! kaggle datasets list

    Download Data

       ! kaggle competitions download -c 'name-of-competition'

    或者,如果您想下载数据集(取自评论):
    ! kaggle datasets download -d USERNAME/DATASET_NAME

    You can get these dataset names (if unclear) from "copy APIcommand" in the "three-dots drop down" next to "New Notebook" button on the Kaggle dataset page.


    enter image description here
    问题来了:这似乎只适用于较小的数据集。我试过了
    kaggle datasets download -d allen-institute-for-ai/CORD-19-research-challenge
    它没有找到那个 API,可能是因为下载 40 GB 的数据只是受到限制: 404 - Not Found .
    在这种情况下,您只能下载所需的文件并使用已挂载的 Google Drive,或者您需要使用 Kaggle 而不是 Colab。
    有没有办法只将 40 GB CORD-19 Kaggle 数据集的 800 MB metadata.csv 文件下载到 Colab?这是文件信息页面的链接:
    https://www.kaggle.com/allen-institute-for-ai/CORD-19-research-challenge?select=metadata.csv
    我现在已经在 Google Drive 中加载了文件,我很好奇这是否已经是最好的方法。相比之下,如果在 Kaggle 上,整个数据集已经可用,无需下载,并且可以快速加载,则是相当多的工作。
    PS:从 Kaggle 下载 zip 文件到 Colab 后,需要解压。再次进一步引用quide:

    Use unzip command to unzip the data:

    For example, create a directory named train,

       ! mkdir train

    unzip train data there,

       ! unzip train.zip -d train

    更新:我建议安装 Google Drive
    在尝试了两种方式(挂载 Google Drive 或直接从 Kaggle 加载)后,如果您的架构允许,我建议挂载 Google Drive。这样做的好处是文件只需要上传一次:Google Colab 和 Google Drive 是直接连接的。挂载 Google Drive 需要额外的步骤来从 Kaggle 下载文件、解压缩并将其上传到 Google Drive,并为每个 Python session 获取并激活一个 token 以安装 Google Drive,但激活 token 会很快完成。使用 Kaggle,您需要在每次 session 时将文件从 Kaggle 上传到 Google Colab,这需要更多时间和流量。

    最佳答案

    您可以编写一个脚本,只下载某些文件或一个接一个地下载文件:

    import os

    os.environ['KAGGLE_USERNAME'] = "YOUR_USERNAME_HERE"
    os.environ['KAGGLE_KEY'] = "YOUR_TOKEN_HERE"

    !kaggle datasets files allen-institute-for-ai/CORD-19-research-challenge

    !kaggle datasets download allen-institute-for-ai/CORD-19-research-challenge -f metadata.csv

    关于api - 如何从 Kaggle 中将过大的 Kaggle 数据集的一个选定文件加载到 Colab 中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67713193/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com