使用Colaboratory的免费GPU训练神经网络
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训练神经网络的更多相关文章
- Google Colab免费GPU使用教程(一)
一.前言 现在你可以开发Deep Learning Applications在Google Colaboratory,它自带免费的Tesla K80 GPU.重点是免费.免费!(国内可能需要tz) 这 ...
- 使用Google Colab训练神经网络(二)
Colaboratory 是一个 Google 研究项目,旨在帮助传播机器学习培训和研究成果.它是一个 Jupyter 笔记本环境,不需要进行任何设置就可以使用,并且完全在云端运行.Colaborat ...
- 使用Keras进行多GPU训练 multi_gpu_model
使用Keras训练具有多个GPU的深度神经网络(照片来源:Nor-Tech.com). 摘要 在今天的博客文章中,我们学习了如何使用多个GPU来训练基于Keras的深度神经网络. 使用多个GPU使我们 ...
- 『开发技术』GPU训练加速原理(附KerasGPU训练技巧)
0.深入理解GPU训练加速原理 我们都知道用GPU可以加速神经神经网络训练(相较于CPU),具体的速度对比可以参看我之前写的速度对比博文: [深度应用]·主流深度学习硬件速度对比(CPU,GPU,TP ...
- 使用GPU训练TensorFlow模型
查看GPU-ID CMD输入: nvidia-smi 观察到存在序号为0的GPU ID 观察到存在序号为0.1.2.3的GPU ID 在终端运行代码时指定GPU 如果电脑有多个GPU,Tensorfl ...
- Google Colab 免费GPU服务器使用教程 挂载云端硬盘
一.前言二.Google Colab特征三.开始使用3.1在谷歌云盘上创建文件夹3.2创建Colaboratory3.3创建完成四.设置GPU运行五.运行.py文件5.1安装必要库5.2 挂载云端硬盘 ...
- stanford coursera 机器学习编程作业 exercise4--使用BP算法训练神经网络以识别阿拉伯数字(0-9)
在这篇文章中,会实现一个BP(backpropagation)算法,并将之应用到手写的阿拉伯数字(0-9)的自动识别上. 训练数据集(training set)如下:一共有5000个训练实例(trai ...
- Pytorch多GPU训练
Pytorch多GPU训练 临近放假, 服务器上的GPU好多空闲, 博主顺便研究了一下如何用多卡同时训练 原理 多卡训练的基本过程 首先把模型加载到一个主设备 把模型只读复制到多个设备 把大的batc ...
- 机器学习入门15 - 训练神经网络 (Training Neural Networks)
原文链接:https://developers.google.com/machine-learning/crash-course/training-neural-networks/ 反向传播算法是最常 ...
随机推荐
- scala入门基础学习
1.Scala基础语法 区分大小写 类名 - 对于所有的类名的第一个字母要大写.如果需要使用几个单词来构成一个类的名称,每个单词的第一个字母要大写. 方法名称 - 所有的方法名称的第一个字母用小写. ...
- npm ERR! Failed at the gff@1.0.0 start script.
code ELIFECYCLE npm ERR! errno 1 npm ERR! gff@1.0.0 start: `node build/dev-server.js` npm ERR! Exit ...
- 校园商铺-1开发准备-3 Eclipse与maven的联合配置
1. JDK安装地址: 2.maven安装地址: 3.maven配置 注意:settings.xml文件极容易出现格式错误 4.tomcat修改端口 我本地启动了其他服务,占用了8080端口,因此需要 ...
- thinkphp 包含文件
在当前模版文件中包含其他的模版文件使用include标签,标签用法: <include file='模版表达式或者模版文件1,模版表达式或者模版文件2,...' /> 博智达直线电机价格 ...
- mongodb操作指令(一):数据库,集合,文档
数据库 查看所有数据库 show dbs 查看当前数据库 db 创建使用数据库use runoob 删除数据库 db.dropDatabase() 集合 创建集合db.createCollection ...
- day16_函数作用域_匿名函数_函数式编程_map_reduce_filter_(部分)内置函数
20180729 补充部分代码 20180727 上传代码 #!/usr/bin/env python # -*- coding:utf-8 -*- # ***************** ...
- Python 函数与内置函数
1.函数的基本定义 def 函数名称(参数) 执行语句 return 返回值 def : 定义函数的关键字: 函数名称:顾名思义,就是函数的名字,可以用来调用函数,不能使用关键字来命名,做好是用这个函 ...
- LightOJ-1007-Mathematically Hard-欧拉函数打表+前缀和+预处理
Mathematically some problems look hard. But with the help of the computer, some problems can be easi ...
- 如何利用开源思想开发一个SEO友好型网
如果你有一个网站需要去做SEO优化的时候,不要期望你的努力能立即得到回报.耐心等待并更正内容营销策略,最终会发现你的网站很受用户欢迎.下面就教你如何利用开源思维开发一个SEO友好型网站! 首先,你应该 ...
- Python Fabric模块详解
Python Fabric模块详解 什么是Fabric? 简单介绍一下: Fabric是一个Python的库和命令行工具,用来提高基于SSH的应用部署和系统管理效率. 再具体点介绍一下,Fabri ...