免费GPU以及python训练工具——Google Colab

  Seves

原文链接:免费GPU以及python训练工具——Google Colab

Google Colab是什么?

Google Colab 是一个提供免费GPU的python在线编程学习以及训练神经网络的云服务!

在上面可以做以下内容:

  • 学习和提高python编程技能;
  • 用一些流行的框架开发深度学习应用,例如Keras, TensorFlow, PyTorch, and OpenCV;
  • 最重要的一点,Google Colab提供免费的GPU服务器;

更多的信息可以查看官网

开始使用Google Colab

在Google Drive上创建目录

Google Colab 可以在Google Drive中保存和读取文件,首先创建一个项目目录。

右键点击左侧的My Drive,选择第一个New Folder:

20180926163915png

在弹出的窗口中输入目录名,例如“app”:

20180921105548png

创建后的目录如下:

20180921141419png

创建一个Colab记事本

右键点击空白处,选择More > Colaboratory:

20180921141444png

点击文件名,进行重命名:

1_emOY5nIyYphREEqo6e86jgpng

切换GPU

点击修改 > 笔记本设置:

20180921141728png

这里可以修改pathon版本和硬件加速器:

20180921141735png

20180921141745png

在Google Colab中执行基本的python脚本

例如打印一个数据及其数据类型:

20180921142017png

在Google Colab中执行上传的python文件

安装必要的工具包:

!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
from google.colab import auth
auth.authenticate_user()
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}

执行上面的代码后,会看到下面的图:

1_Tdf4sfvctlQbCpxekMI9LQpng

点击上图中的链接,复制verification code,粘贴到上图中的文本框中,然后回车,等待一段时间:

20180921180401png

如果和上图中一样,出现错误"Unable to locate package google-drive-ocamlfuse",则执行下面的代码:

import os
from google.colab import drive
drive.mount(‘/gdrive’)
os.symlink(‘/gdrive/My Drive’, ‘/content/gdrive’)
!ls -l /content/gdrive/

执行上面的代码后,会看到下面的图:

20180921180440png

安装 Keras:

!pip install -q keras

mnist_cnn.py传到Google Drive的app文件夹下:

20180925174524png

执行这个文件mnist_cnn.py:

!python3 /content/gdrive/app/mnist_cnn.py

20180921180455png


下载泰坦尼克号数据集(.csv文件)并显示前5行

下载到app目录下:

!wget https://raw.githubusercontent.com/vincentarelbundock/Rdatasets/master/csv/datasets/Titanic.csv -P /content/gdrive/app/

20180926134225png

读取csv文件并显示前5行:

import pandas as pd
titanic = pd.read_csv(“/content/gdrive/app/Titanic.csv”)
titanic.head(5)

20180926134413png

克隆GitHub项目到Google Colab

第一步:找到要克隆的项目的地址

例如: https://github.com/wxs/keras-mnist-tutorial

点击”Clone or download”,复制链接

1_zyxag4hs2vCY1DejIJveZgpng

第二步:开始克隆

!git clone https://github.com/wxs/keras-mnist-tutorial.git

1_I1TO_CtAolkNTPDKvp4Hgpng

!mv keras-mnist-tutorial /content/gdrive/app/

第三步:在Google Drive中打开克隆的项目

20180925174524png

第四步:在Colaboratory中打开克隆的文件

右键点击文件名 > Open With > Colaboratory

20180921172108png

第五步:运行

导入相关的库

20180921172504png

加载训练数据

20180921172509png

查看训练结果

20180921172519png

常见问题

常见库的安装

keras:

!pip install -q keras
import keras

PyTorch:

from os import path
from wheel.pep425tags import get_abbr_impl, get_impl_ver, get_abi_tag
platform = ‘{}{}-{}’.format(get_abbr_impl(), get_impl_ver(), get_abi_tag())
accelerator = ‘cu80’ if path.exists(‘/opt/bin/nvidia-smi’) else ‘cpu’
!pip install -q http://download.pytorch.org/whl/{accelerator}/torch-0.3.0.post4-{platform}-linux_x86_64.whl torchvision
import torch

或者

!pip3 install torch torchvision

MxNet

!apt install libnvrtc8.0
!pip install mxnet-cu80
import mxnet as mx

OpenCV

!apt-get -qq install -y libsm6 libxext6 && pip install -q -U opencv-python
import cv2

XGBoost

!pip install -q xgboost==0.4a30
import xgboost

GraphViz

!apt-get -qq install -y graphviz && pip install -q pydot
import pydot

7zip Reader

!apt-get -qq install -y libarchive-dev && pip install -q -U libarchive
import libarchive

其它库

执行!pip install 或者 !apt-get install 就可以安装其它库。

判断是否是GPU工作状态

import tensorflow as tf
tf.test.gpu_device_name()

1_rHxgzJWoos7f4AYF90PkzQjpeg

查看GPU信息

from tensorflow.python.client import device_lib
device_lib.list_local_devices()

20180921180644png

查看内存信息

!cat /proc/meminfo

20180921180649png

查看CPU信息

!cat /proc/cpuinfo

20180921180655png

本文链接:https://www.fcblog.top/articles/2018/09/21/1537524454178.html

fc
1,470