很早就想规划一个系列就是教大家如何利用云计算资源进行深度学习方面的开发。
今天我们在Kevin Yu老师的指导下,开始一段云计算资源的奇妙探险吧
大家可以点击阅读原文或者复制这个链接来访问他的教程。
https://hikariai.net/cloud/colab-intro/
云计算是一个术语,用来描述通过网络(通常是Internet)交付的硬件和软件的使用。简单地说,云计算就是基于互联网的计算。在过去,人们会在他们所在大楼的物理计算机或服务器上运行从软件下载的应用程序或程序。云计算允许人们通过互联网访问相同类型的应用程序。
为什么要用云计算?
通过使用云基础设施,您不必花费大量的金钱来购买和维护设备。这大大降低了资本支出成本。您不必投资于硬件、设施、公用事业或构建大型数据中心来发展业务。您甚至不需要大型IT团队来处理云数据中心操作,因为您可以享受云提供商员工的专业技能。
云计算还减少了与停机相关的成本。由于停机在云系统中很少见,这意味着您不必花费时间和金钱来修复与停机相关的潜在问题。
当服务器上有多个非常快速的图形处理单元(gpu)时,AI应用程序通常具有高性能。然而,这些系统对于许多组织来说是极其昂贵和负担不起的。人工智能作为云应用程序开发中的一种服务,可以以更便宜的价格访问这些组织。
选择适合的GPU云
GPU云服务器是基于GPU应用的计算服务,多适用于AI深度学习,视频处理,科学计算,图形可视化,等应用场景,一般都配有NVIDIA Tesla系列的GPU卡。
通常NVIDIA Tesla系列的卡非常昂贵,对于用户来说,配置带有NV Tesla卡的系统进行开发的成本也相对比较高,这个时候如果能妥善使用GPU云,可能更具成本效益。
我们这个系列主要是基于Google的Colab
Colaboratory,简称“Colab”,是谷歌研究的一个产品。Colab允许任何人通过浏览器编写和执行任意的python代码,特别适合于机器学习、数据分析和教育。从技术上讲,Colab是一个 Jupyter notebook 服务,不需要安装就可以使用,同时提供对包括gpu在内的计算资源的免费访问。
如果你以前用过 Jupyter notebook ,你会很快学会使用谷歌Colab。确切地说,Colab是一个完全在云中运行的自由 Jupyter notebook 环境。最重要的是,它不需要设置,您创建的notebook可以由您的团队成员同时编辑—就像您在谷歌文档中编辑文档一样。Colab支持许多流行的机器学习库,可以轻松地加载到您的notebook中。
有人说使用不了啊,需要开(K)心(X)上网....唉,这个问题确实无解。我们在这里也就是演示一下,告诉大家一个利用GPU云计算资源的方法。
使用Colab Pro,您可以优先访问最快的gpu。例如,在大多数使用标准Colab的用户接收较慢的K80 GPU时,您可能会收到一个T4或P100 GPU。你可以看到什么GPU你被分配在任何时候执行以下单元。Colab为你提供了一个免费的强大的GPU,每次最多支持12小时。它基本上意味着你可以连续运行你的应用程序12个小时。12小时后,运行时将停止运行,所有数据将丢失,您需要重新登录,但是12小时运行时对于执行大型应用程序(例如,训练神经网络)来说已经足够好了。
1
登陆
如果你有Google的账户,可以直接登陆
https://colab.research.google.com/notebooks/intro.ipynb#recent=true
会显示一个这样的窗口,然后点击“新建笔记本”
试着打一个最简单的代码:
看上去蛮好的
我按照Kev老师的教程,输入他的一段测试代码,来检测到底分配给我的是哪个GPU卡(点击阅读原文可以直接在教程里copy代码)
注意到没,运行结果是:“Select the Runtime → "Change runtime type" menu to enable a GPU accelerator, and then re-execute this cell.” 表明我还没用到GPU卡。
所以需要设置运行时!
我赶紧把首页打开,老老实实看看
点击这个“代码执行程序",里面有一个”更改运行时“选项
原来不设置这里,啥都用不上啊!
赶紧选择成GPU,注意一定要保存!
右上角会显示一个状态,
等变成“已链接”后,立刻重新运行程序:
居然给我分配一个NVIDIA T4 GPU!
好了,今天实践到这里。下次我们实际训练个模型,敬请关注吧!