1 Colaboratory 介绍

Colaboratory 是一个 Google 研究项目,旨在帮助传播机器学习培训和研究成果。它是一个 Jupyter 笔记本环境,不需要进行任何设置就可以使用,并且完全在云端运行。

2 搭建 Colaboratory

打开谷歌,使用邮箱登陆你的 Google 账号。(没有帐号的使用邮箱注册一个就行)

登录 Google 账号之后,在页面右上角的 Google 应用里就可进入云端硬盘里

进入 Google 云端硬盘之后,需要关联 Colaboratory。点击我的云端硬盘 -> 更多 -> 关联更多应用。然后,搜索并找到 Colaboratory,然后关联。(我已经关联了 Colaboratory,所以展示的已经存在Colaboratory)


3 使用 Colaboratory

3.1 准备

关联 Colaboratory 之后,新建文件夹(以 app 为例)。

进入 app 文件夹,空白处右键点击更多 -> Colaboratory,即可创建 Jupyter Notebook。

通过点击文件名实现重命名,例如重命名为 test.ipynb。

配置 Colaboratory,这一步非常重要也是非常强大的。点击修改 -> 笔记本设置。

选择使用 Python 2 还是 Python 3。更重要的,可以选择使用 GPU 硬件加速。设置完毕后点击保存。

查看GPU是否在colab中

import tensorflow as tf
tf.test.gpu_device_name()

如果结果为空,则不能使用GPU;如果结果为/device:GPU:0,则可以使用GPU。

查看显卡内存使用上限

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

3.2 运行基本代码


3.3 运行.py文件

先运行下面这些代码,来安装必要的库、执行授权。

!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}

运行的时候应该会看到下图所示的结果,看见那个链接之后,点击它,复制验证码并粘贴到文本框里。

授权完成后,就可以挂载Google Drive了!

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

注:这个时候输入!ls可能看不到根目录drive,找不到drive就找不到我们云盘的文件!解决办法是,键入下边的代码:

from google.colab import drive
drive.mount('/content/drive/')

点击出现的链接,在链接中复制验证码,在链接下方输入验证,显示Mounted at /content/drive/即为成功。

将想要执行的mnist_cnn.py文件上传到位于Google云端硬盘上的app文件夹。然后使用cd切换到app文件夹下,键入如下命令。

!python3 mnist_cnn.py

对于将代码或者数据集文件传到google云盘上,建议安装Google备份与同步软件!

4 补充

安装Keras:

!pip install -q keras
import keras

安装PyTorch:

!pip install -q http://download.pytorch.org/whl/cu75/torch-0.2.0.post3-cp27-cp27mu-manylinux1_x86_64.whl torchvision
import torch

安装OpenCV:

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

安装其他库:

用!pip install或者!apt-get install命令。

使用Colaboratory的免费GPU训练神经网络的更多相关文章

  1. Google Colab免费GPU使用教程(一)

    一.前言 现在你可以开发Deep Learning Applications在Google Colaboratory,它自带免费的Tesla K80 GPU.重点是免费.免费!(国内可能需要tz) 这 ...

  2. 使用Google Colab训练神经网络(二)

    Colaboratory 是一个 Google 研究项目,旨在帮助传播机器学习培训和研究成果.它是一个 Jupyter 笔记本环境,不需要进行任何设置就可以使用,并且完全在云端运行.Colaborat ...

  3. 使用Keras进行多GPU训练 multi_gpu_model

    使用Keras训练具有多个GPU的深度神经网络(照片来源:Nor-Tech.com). 摘要 在今天的博客文章中,我们学习了如何使用多个GPU来训练基于Keras的深度神经网络. 使用多个GPU使我们 ...

  4. 『开发技术』GPU训练加速原理(附KerasGPU训练技巧)

    0.深入理解GPU训练加速原理 我们都知道用GPU可以加速神经神经网络训练(相较于CPU),具体的速度对比可以参看我之前写的速度对比博文: [深度应用]·主流深度学习硬件速度对比(CPU,GPU,TP ...

  5. 使用GPU训练TensorFlow模型

    查看GPU-ID CMD输入: nvidia-smi 观察到存在序号为0的GPU ID 观察到存在序号为0.1.2.3的GPU ID 在终端运行代码时指定GPU 如果电脑有多个GPU,Tensorfl ...

  6. Google Colab 免费GPU服务器使用教程 挂载云端硬盘

    一.前言二.Google Colab特征三.开始使用3.1在谷歌云盘上创建文件夹3.2创建Colaboratory3.3创建完成四.设置GPU运行五.运行.py文件5.1安装必要库5.2 挂载云端硬盘 ...

  7. stanford coursera 机器学习编程作业 exercise4--使用BP算法训练神经网络以识别阿拉伯数字(0-9)

    在这篇文章中,会实现一个BP(backpropagation)算法,并将之应用到手写的阿拉伯数字(0-9)的自动识别上. 训练数据集(training set)如下:一共有5000个训练实例(trai ...

  8. Pytorch多GPU训练

    Pytorch多GPU训练 临近放假, 服务器上的GPU好多空闲, 博主顺便研究了一下如何用多卡同时训练 原理 多卡训练的基本过程 首先把模型加载到一个主设备 把模型只读复制到多个设备 把大的batc ...

  9. 机器学习入门15 - 训练神经网络 (Training Neural Networks)

    原文链接:https://developers.google.com/machine-learning/crash-course/training-neural-networks/ 反向传播算法是最常 ...

随机推荐

  1. 什么是Java中的自动拆装箱

    1.基本数据类型 基本类型,或者叫做内置类型,是Java中不同于类(Class)的特殊类型.它们是我们编程中使用最频繁的类型. Java是一种强类型语言,第一次申明变量必须说明数据类型,第一次变量赋值 ...

  2. Hive中SQL查询转换成MapReduce作业的过程

  3. mysql 复制原理详解

    http://www.cnblogs.com/kristain/articles/4142970.html

  4. 【学术篇】SPOJ COT 树上主席树

    这是学完主席树去写的第二道题_(:з」∠)_ 之前用树上莫队水过了COT2... 其实COT也可以用树上莫队水过去不过好像复杂度要带个log还是怎么样可能会被卡常数.. 那就orz主席吧.... 写了 ...

  5. Python学习笔记(一)——输入与输出

    输出:——print() Python中的输出使用print()完成 >>> 在屏幕中输出Hello World >>> print('Hello World') ...

  6. Windows shutdown

    用法: shutdown [/i | /l | /s | /sg | /r | /g | /a | /p | /h | /e | /o] [/hybrid] [/soft] [/fw] [/f]    ...

  7. 「题解」:X国的军队

    问题 A: X国的军队 时间限制: 1 Sec  内存限制: 256 MB 题面 题面谢绝公开. 题解 简单贪心. 按照存活的士兵数量(即参加战斗的士兵数量减去阵亡的士兵数量)排序. 若存活士兵数量相 ...

  8. C/C++实现单向循环链表(尾指针,带头尾节点)

    C语言实现单向循环链表,主要功能为空链表创建,链表初始化(头插法,尾插法),链表元素读取,按位置插入,(有序链表)按值插入,按位置删除,按值删除,清空链表,销毁链表. 单向循环链表和单向链表的区别:( ...

  9. kafka-node+socket.io 测试配置

    1.安装需要插件 npm install express npm install  socket.io npm install  kafka-node 2.kafkatest.js文件 var exp ...

  10. SP1296 SUMFOUR - 4 values whose sum is 0

    传送门 解题思路 四个数组一起做有点炸.先把他们合并成两个数组,然后让一个数组有序,枚举另一个数组的元素,二分即可.时间复杂度\(O(n^2logn^2)\) 代码 #include<iostr ...