Google Colab是一个基于云的Jupyter Notebook环境,它允许用户在强大的CPU、GPU和TPU上执行机器学习和深度学习模型。对于数据科学和深度学习的新手来说,从本地设备上的Jupyter Notebook迁移到Google Colab Notebook是一个不错的选择。Google Colab提供了许多优势和自定义笔记本的技巧,但与Jupyter Notebook相比,它有一个显著的缺点:作为基于Web的笔记本环境,需要将数据从本地设备上传到服务器,这在Colab中相对较慢。
在数据科学领域,处理的数据集从100MB到几GB不等,而在Google Colab中上传大文件需要很长时间。本文将分享一个有效的解决方案,通过这个方案,可以在几秒钟内上传高达10GB的数据集。为此,需要了解CurlWget扩展,这是解决问题的关键。这个扩展是一个救星,它使得从浏览器到Colab的直接加载数据变得容易。
由于Google Colab托管在基于Linux的服务器上,可以利用一些基本的Linux命令。CurlWget是一个小插件,它提供了一个‘curl’或‘wget’命令行字符串,以便在像Google Colab这样的控制台会话中复制/粘贴。
1. 点击导航到扩展页面并将扩展添加到Chrome。
2. 固定扩展。需要固定它以便进一步使用。
3. 现在已经为进一步的过程做好了准备。
想象一下,如果不使用扩展直接加载数据集。首先,必须将数据集下载到本地系统,然后再次将其上传到Colab,这会花费很多时间。设置数据以进一步构建模型的过程既耗时又费力。
1. 将使用1.5GB文件大小的Microsoft恶意软件数据集;如果想了解有关数据集的更多信息,点击。将直接导航到‘数据页面’,向下滚动并点击下载全部以获取完整的数据集。
2. 选择想要上传的数据集并按照说明进行。
3. 会看到数据正在下载,必须取消下载。是的,没看错;取消下载。
4. 取消下载后,点击之前固定好的CurlWget扩展。会看到上面写着一些东西。点击灰色框内;一旦点击进去,所有的文本就会自动被选中;通过按键盘上的Ctrl+C复制它。
5. 转到Colab,添加一个空的代码单元格,输入‘!’并粘贴从扩展中复制的所有文本,不要在‘!’和复制的文本之间留任何空格,然后运行单元格。
6. 就这样,文件/文件夹已经直接上传到了Google Colab的磁盘存储中,仅用26秒。
GB大小的文件将以几百MB/s的速度加载,并且只会消耗很少的互联网流量。可以加载任何文件大小的数据,只要不超过Colab提供的有限磁盘存储。
有不同的方式来从其他地方加载数据和各种文件类型,但这种方法对所有数据都有效,前提是它出现在浏览器中。现在让看看将如何读取和使用上传的文件。
import pandas as pd
data = pd.read_csv('filename.csv')
1. 如果文件是CSV格式,可以直接使用pandas读取它。
!unzip 'filepath'
2. 如果文件是zip格式,首先,需要解压缩文件。使用上面的命令来解压缩数据。
可以通过点击文件,然后点击出现的三个点来复制文件的路径,点击复制路径,然后按Ctrl + V粘贴到想要的地方。
同样,可以分别解压缩和压缩tar和rar文件。
通常,当在机器学习和深度学习模型上工作时,需要在将原始数据文件用于模型之前对其进行预处理。可能会有这样的情况,需要保存预处理后的数据以供模型进一步使用。为了保存数据,需要从Colab下载它并将其存储在本地计算机上,但是从Google Colab下载数据也非常慢,并且消耗大量的互联网流量。为了避免这个问题,使用gdrive直接将文件从Colab传输到gdrive,以便在需要时使用。
from google.colab import drive
drive.mount('/content/gdrive')
1. 使用以下代码挂载gdrive
2. Colab需要添加一个认证码;点击代码单元格下提供的链接。它将直接带到代码,复制它,粘贴到框中,然后按Enter。
3. 现在gdrive中的所有文件和文件夹都上传到了Colab的磁盘存储中。
4. 点击文件夹图标;将看到gdrive中存在的所有文件。
5. 复制想要使用的文件的路径,并使用适当的库读取它。
在对数据文件进行更改或为项目创建新文件后,直接在Colab上保存到gdrive。
1. 使用适当的库保存文件类型到磁盘。
2. 选择想要保存文件的文件夹路径,添加文件名到文件,并运行单元格。将看到文件直接上传到gdrive。
注意:如果已经在Google Colab上挂载了gdrive并且正在对gdrive进行更改,它将在Colab上动态更新。不需要再次挂载。
如果通过Colab对gdrive进行更改,gdrive将自动更新。
如果同事或朋友共享了一个包含项目所需数据文件的Google Drive链接,可以直接在Google Colab上使用该文件,而无需将其下载到本地系统。
正如可能已经注意到的,将驱动器挂载到Google Colab仅包括来自驱动器文件夹的文件和文件夹。要使用来自与共享的文件/文件夹,必须将该文件添加到驱动器。按照以下步骤将与共享的文件添加到驱动器文件夹。
1. 选择文件/文件夹并按键盘上的Shift+Z。
2. 选择想要复制文件/文件夹的驱动器上的文件夹,然后点击添加快捷方式
3. 文件/文件夹已添加到驱动器;也可以在Google Colab中看到更改。