colab

本文最后更新于:July 13, 2022 pm

colab

1.首先需要一个谷歌账号

  • 注册的时候可能会遇到号码无法进行验证的情况
  • 因为Google现在不怎么支持中文,所以我们需要把谷歌的英文上移,同时使用英文并且删除中文,只保留英文语言。

2.查看基本配置

  • 查看pytorch的版本、cuda是否可用
  • 查看需要的工具版本
    1
    2
    import torch
    print(torch.__version__)
    1
    print(torch.cuda.is_available)

3.挂载

因为colab只是一个远程的、可以无偿给我们提供GPU支持的主机,而不是本地的存储支持。所以我们需要把我们要运行的代码(谷歌云盘)挂载到远程主机上。
  • 挂载远程主机
    1
    2
    from google.colab import drive
    drive.mount("/content/drive)
  • 这一步我们需要登录谷歌账号复制链接
  • 更改运行目录
  • 因为程序的运行需要在相同的目录下才能相互使用和运行,所以需要把要运行的程序放到同一个目录下。在这一步最好都运行一次,有时候看着是在一个目录下,但事实上在不同的地方。

    4.同级文件调用

    当我们在运行一个程序时,有时候需要调用模型模块儿来进行训练,我们只在谷歌云盘上更改后缀,单纯地把.ipynb文件更改成.py文件,从表面上看确实已经成为python文件了。但是事实上colab只能更改.ipynb文件的内容,所以更改后的文件仍然是.ipynb文件。
    要想把.ipynb文件真正变成.py文件,可以先把文件下载到本地,在本地上更改后缀,然后在挂到谷歌云盘当中,这样就可以调用了。

    5.将kaggle的数据集下载到colab上使用

    kaggle上有很多竞赛数据集,但是kaggle的GPU使用时间是有限的,但是colab没有时间限制。如果从本地上传就很慢,所以我们可以把kaggle上的数据集传到(下载)到colab上去使用。
  • 首先需要一个kaggle账号
  • 下载并更新kaggle
    1
    !pip install kaggle
    1
    !pip install --upgrade --force-reinstall --no-deps kaggle
  • 进入kaggle,进入你的账号信息
  • 往下拖,在API的位置有个Create New API Token,点击后会自动下载一个json文件,打开会出现username和key信息。

  • 输入以下代码,把对应的username和key填入即可
    1
    2
    3
    4
    import json
    token = {"username":"xxxxx","key":"xxxxx"}
    with open('/content/kaggle.json', 'w') as file:
    json.dump(token, file)
    *然后再依次输入一下代码
    1
    !mkdir -p ~/.kaggle
    1
    !cp /content/kaggle.json ~/.kaggle/
    1
    !chmod 600 ~/.kaggle/kaggle.json
    1
    !kaggle config set -n path -v /content
  • 最后从kaggle上找出自己的数据集,点击Copy API command后进入colab下载即可。
  • 我这里找了个比较小的数据集,下载速度还可以。我还测试过一个大的数据集,下载速度差不多可以达到90MB/s

    6.模型测试【resnet101】+【CIFAR10】

  • 使用GPU

    1
    2
    import os
    os.environ['CUDA_VISIBLE_DEVICES'] = '0'
  • 模型测试




本文作者: 水寿先生
本文链接: http://chen320.github.io/2021/12/06/colab/
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!