将Google云端硬盘中的图像数据集(文件夹或邮编)加载到Google Colab?

cha*_*l-f 9 python neural-network google-colaboratory

我的Google云端硬盘上有图像数据集.我在压缩的.zip版本和未压缩的文件夹中都有这个数据集.

我想用Google Colab训练CNN.如何告诉Colab我的Google云端硬盘中的图片在哪里?

  1. 官方教程没有帮助我,因为它只显示如何上传单个文件,而不是像我的情况一样上传10000个图像的文件夹.

  2. 然后我找到了这个答案,但解决方案还没有完成,或者至少我不明白如何继续解压缩.不幸的是我无法评论这个答案,因为我没有足够的"stackoverflow points"

  3. 我也找到了这个帖子,但是这里的所有答案都使用其他工具,比如Github或dropbox

我希望有人可以解释我需要做什么或告诉我在哪里寻求帮助.

EDIT1:

我找到了另一个问题与我相同的问题:遗憾的是,在3个答案中,有两个提到Kaggle,我不知道也不使用.第三个答案提供了两个链接.第一个链接指的是我链接的第三个线程,第二个链接仅解释了如何手动上传单个文件.

小智 9

要更新答案.您现在可以从Google Colab进行操作

# Load the Drive helper and mount
from google.colab import drive

# This will prompt for authorization.
drive.mount('/content/drive')

!ls "/content/drive/My Drive"
Run Code Online (Sandbox Code Playgroud)

Google文档


Vei*_*pse 6

正如@yl_low 在这里提到的那样

步骤1:

!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
Run Code Online (Sandbox Code Playgroud)

第2步:

from google.colab import auth
auth.authenticate_user()
Run Code Online (Sandbox Code Playgroud)

第3步:

from oauth2client.client import GoogleCredentials
creds = GoogleCredentials.get_application_default()
import getpass
!google-drive-ocamlfuse -headless -id={creds.client_id} -secret={creds.client_secret} < /dev/null 2>&1 | grep URL
vcode = getpass.getpass()
!echo {vcode} | google-drive-ocamlfuse -headless -id={creds.client_id} -secret={creds.client_secret}
Run Code Online (Sandbox Code Playgroud)

第2步和第3步都需要填写网址提供的验证码

第4步:

!mkdir -p drive
!google-drive-ocamlfuse drive
Run Code Online (Sandbox Code Playgroud)

第5步:

print('Files in Drive:')
!ls drive/
Run Code Online (Sandbox Code Playgroud)


Rom*_*Roc 5

其他答案非常好,但它们每次都需要在 Google Drive 中进行身份验证,如果您想自上而下运行笔记本,这不是很舒服。

我有同样的需求,我想将包含数据集的单个 zip 文件从 Drive 下载到 Colab。我更喜欢获取该文件的可共享链接并运行以下单元格(用您的共享链接替换 ​​drive_url):

import urllib

drive_url = 'https://drive.google.com/uc?export=download&id=1fBVMX66SlvrYa0oIau1lxt1_Vy-XYZWG'
file_name = 'downloaded.zip'

urllib.request.urlretrieve(drive_url, file_name)
print('Download completed!')
Run Code Online (Sandbox Code Playgroud)