0

我想从 Google Colab Notbook 内的驱动器中读取数据集。我怎样才能做到这一点?我做了这样的事情,但它不工作。

train_data_dir = "data/train/"
validation_data_dir = "data/validation/"

这是我项目的结构

数据文件夹是这样的:

data/
    train/
        dogs/
            dog001.jpg
            dog002.jpg
            ...
        cats/
            cat001.jpg
            cat002.jpg
            ...
    validation/
        dogs/
            dog001.jpg
            dog002.jpg
            ...
        cats/
            cat001.jpg
            cat002.jpg
            ...
4

1 回答 1

-1

我找到了使用Drive FUSE 包装器的解决方案

您必须安装驱动器保险丝包装器然后创建一个目录然后挂载它,该目录是驱动器的根目录,将您的数据集上传到您的谷歌驱动器并使用“/content/name_of_your_directory/dataset_name/”访问它

就我而言,我遵循了以下步骤:

1-安装 Drive FUSE 包装。

!apt-get update -qq 2>&1 > /dev/null
!apt-get install -y -qq software-properties-common python-software-properties module-init-tools
!add-apt-repository -y ppa:alessandro-strada/ppa 2>&1 > /dev/null
!apt-get update -qq 2>&1 > /dev/null
!apt-get -y install -qq google-drive-ocamlfuse fuse

然后

2-为 Colab 生成身份验证令牌

from google.colab import auth
auth.authenticate_user()

3-为 Drive FUSE 库生成凭据。

from oauth2client.client import GoogleCredentials
creds = GoogleCredentials.get_application_default()
import getpass

4-解决 Jupyter 中 STREAM 和 STDIN 的错误排序。

prompt = !google-drive-ocamlfuse -headless -id={creds.client_id} -secret={creds.client_secret} < /dev/null 2>&1 | grep URL
vcode = getpass.getpass(prompt[0] + '\n\nEnter verification code: ')
!echo {vcode} | google-drive-ocamlfuse -headless -id={creds.client_id} -secret={creds.client_secret}

5-创建一个目录并使用该目录安装 Google Drive。

!mkdir -p yourdirectory
!google-drive-ocamlfuse yourdirectory

6-从我的例子中的代码访问这个目录

train_data_dir = "/content/yourdirectory/data/train/"
validation_data_dir = "/content/yourdirectory/data/validation/"
于 2018-05-30T13:58:32.200 回答