作 者 | Abhinav Sagar
翻 译 | 珺毅
审 校 | 鸢尾、唐里、Pita
注:敬请点击文末【阅读原文】访问文中相关链接,PC查看体验更佳。
图片来自Unsplash上的Reza Rostampisheh
当我告诉人们,他们应该考虑对他们的数据应用深度学习方法时,我得到的最初反应通常是: (1)“我没有处理足够大的数据”,(2)“我没有足够的计算资源来训练深度学习模型。”
我认为这些假设来自于大公司(例如谷歌),他们经常喜欢通过对大型数据集(例如包含超过一百万张图片的ImageNet:http://www.image-net.org/)进行研究和使用大量的GPU来炫耀自己。
这对这些公司来说是很好的,但是从我的印象来看,一般的深度学习从业者并没有使用这么大的数据集,也没有机会使用这么大的计算资源。
例如,作为一名本科生,我的资金限制我只能使用免费的资源,所以我使用谷歌Colab(https://colab.research.google.com/)的免费可用的K80 GPU来进行我所有的深度学习。
我也不会花一分钱来进行深度学习项目和研究。
谷歌Colab是一项免费的云服务,基于Jupyter笔记本,用于机器学习教育和研究。它提供了一个完全为深度学习和免费访问健壮的GPU而配置的运行时。
现在,你可以在免费的特斯拉K80 GPU上,使用Keras、Tensorflow和PyTorch,使用谷歌Colab开发深度学习应用程序。
运行或者导入Python文件
from google.colab import drive
drive.mount('/content/gdrive')
!mkdir folder-name
虽然大多数库都是预装的,但一些不太常见的库可以通过以下方式安装:
!pip install torch
!git clone https://github.com/keras-team/keras.git
LOG_DIR = 'tb_logs'
!wget https://bin.equinox.io/c/4VmDzA7iaHb/ngrok-stable-linux-amd64.zip
!unzip ngrok-stable-linux-amd64.zip
import os
if not os.path.exists(LOG_DIR):
os.makedirs(LOG_DIR)
get_ipython().system_raw('tensorboard --logdir {} --host 0.0.0.0 --port 6006 &'.format(LOG_DIR))
get_ipython().system_raw('./ngrok http 6006 &')
!curl -s http://localhost:4040/api/tunnels | python3 -c \"import sys, json; print(json.load(sys.stdin)['tunnels'][0]['public_url'])"
选择“Runtime”,“Change Runtime type”,将“Hardware accelerator”设置为GPU(默认为CPU)。
!wget url
!python run.py
谷歌Colab没有使用Jupyter笔记本,而是为您提供了一个云系统,这样您就可以远程地与其他开发人员共享文件。
此外,它还减少了很多麻烦,因为它附带了大多数库和预安装的依赖项。但是谷歌Colab的终极优势是它的免费GPU服务。
现在每个人都可以在世界上任何地方免费训练他们的深度学习模型。看起来谷歌Colab是云中的机器学习/深度学习的未来。
快乐阅读,快乐学习,快乐编码!
via https://medium.com/better-programming/one-stop-guide-to-google-colab-d67c94d30516