想要学深度学习但是没有GPU?我帮你找了一些不错的平台
本文始发于个人公众号:TechFlow,原创不易,求个关注
上次给大家推荐了免费的spark集群之后,就有很多小伙伴来问我有没有好的云GPU平台推荐。我一直没给大家推荐,主要原因是我常年使用Mac,对GPU配置了解不深,不过云GPU平台我倒是用过几个,今天就和大家来简单聊聊。
Colab
首先来介绍免费的,最著名的免费的平台应该是Colab。Colab是Google提供的免费云服务,并且还支持GPU,所以我们完全可以使用它来做深度学习的学习。
Colab嵌入在Google Drive当中,我们首先打开Google Drive,然后点击新建 -> 更多 -> 关联更多应用。
然后在弹框当中输入Colab,点击安装。
安装完成之后,我们就可以点击新建,在更多里面选择Colab的文件了。文件打开之后会打开一个Notebook。
打开之后,我们点击Edit -> Notebook settings,然后可以选择硬件,我们选择GPU。现在新增了一个TPU,我没记错应该是Tensor计算单元,但是我没有用过,感兴趣的小伙伴可以试试。
Colab当中集成了TensorFlow、Pytorch、Keras、OpenCV等多种主流框架,我们可以用pytorch来验证一下GPU是不是已经挂载了:
这个Notebook的用法和本地的Notebook基本是一样的,所以遇到环境当中没有的包,我们可以自己用魔法命令安装。举个例子,假设你发现pandas没有,我们可以这样安装:
!pip install pandas
除此之外,Colab还支持上传文件,从github当中clone代码,从Google Drive上读取文件等多种操作。考虑到它完全是一个免费的平台,能做到这么多功能已经非常不错了。
但缺点也很明显,一个是国内无法访问,另外一个是整体的过程不是非常稳定,我就遇到过任务跑了一半断线的情况。并且Notebook本身只适合做一些实验性的小任务,如果想正儿八经训练一个模型,个人感觉不是非常好(很有可能会断线)。
Kaggle
Kaggle是一个著名的机器学习算法大赛平台,当中有各种各样机器学习的问题和数据集,在业内非常受欢迎。和Google的Colab一样,Kaggle当中也有免费的云GPU的Notebook可以使用。
我们进入Kaggle的主页,点击Notebooks中的New Notebook。
在弹框当中我们选择Python和Notebook。
在右边的Settings中的Accelerator选择GPU,注意,这里如果你是第一次使用,Kaggle需要你绑定一下手机。当我们选择了GPU之后,会跳出一个弹框,告诉你每一个账号每周只能用30小时的GPU。
我们运行一下pytorch,可以看到GPU已经挂载了。
如果你想要看到GPU的详情还可以运行!nvidia-smi命令来查看。
可以看到GPU是Telsa P100, 还可以看到cuda的版本以及内存的相关情况。我查了一下,这个配置还是不错的,虽然每周只能使用30个小时,但毕竟是免费的,用来做做实验还是足够的。
滴滴云
想必可以看得出来,Colab和Kaggle虽好,但是都只适合做一些很小的模型,做一些实验性质的事情。一旦想要真正“搞个大新闻”,就有点不够用了。看来想要不花钱还是不行的,花钱了才能变强(大雾)。所以接下来推荐一些需要付费的平台,相比来说,虽然需要花钱,但是体验好了很多,并且这些平台也是我精心挑选的,并不会很贵,即使是学生也一定用得起。
首先来介绍滴滴云,滴滴云是我最近发现的宝藏。它最近才上线,所以可能听说的人不多。
我们打开网址app.didiyun.com注册并且实名认证之后,就可以购买它的Notebook服务了。Notebook当中提供GPU,我们可以来看下配置:
Notebook当中只有P4的GPU可选,结合4核CPU以及120GB的云盘才3.2一小时,同样的配置在极客云当中至少8块,便宜了足足一半还多,另外,偷偷地告诉你们,我还搞到了内部优惠码。输入我的大师码2323,可以在原价基础上再享受9折,只要两块多。
如果Notebook满足不了你,也可以选择它的云GPU服务器,会有更多的配置可选:
同样输入滴滴云大师码2323,一样可以享受9折优惠。
极客云
在滴滴云出现之前,极客云也是我用得比较多的GPU云平台,它是国内的厂商做的,它最大的优点是可以微信/支付宝付款,交钱非常方便XD。另外它支持同时使用Notebook和SSH连接,并且支持资源共享以及提供了大量共享数据,各大公开的数据集都可以在它的共享数据集当中找到,不需要自己下载了。
极客云的另外一个亮点是支持独占和共享模式,在共享模式当中不能使用GPU,但是使用的价格会非常便宜。而在独占模式当中,我们一人使用整个GPU,可以保证效率。这个模式不得不说非常好,有时候我们希望我们的机器维持运转,但是又不想开销过大,这个时候就可以开启共享模式节省经费。并且它还支持包月以及包周,相对来说会划算一些。
虽然有一些实例比较便宜,但是极客云的整体价格是偏贵的。比如Tesla P4它独占需要8块钱一个小时,在Kaggle当中免费的Tesla P100,它要17块一小时。倒不是它黑,毕竟是小平台,用的人也不是特别多,维护费用比较高,因此收费贵一点也是可以理解的。
我之前创建的内核差不多都在3块钱一个小时左右,大概和网吧上网差不多。使用下来的体验明显比Colab和Kaggle更好,但是这个平台有点不太稳定,经常实例关闭了之后下次再重启会发现同样型号的机器没了,需要另外重新创建实例。虽然我们可以把数据放在共享文件夹当中避免丢失,但是毕竟一些定制的配置还是会丢,所以这点给我体验不是很好。
Vast.ai
vast.ai是一个国外的云服务租赁网站,它也支持Notebook和云服务器两种,不过我们只能选择其一,而不能同时都要。
它的网址是vast.ai非常好记,我们打开创建instance的页面,可以看到很多GPU的配置可供选择,然后价格非常便宜。最便宜的只要0.1美金一小时,算下来一块钱都不到。我们在左侧的Edit Image & config里面可以设置我们的需求,比如我们是想要通过jupyter Notebook的形式使用还是想要通过ssh远程登录的方式使用。
我上次用它的时候,使用ssh登录之后还是可以配置Notebook远程访问两全其美的。但是这次我又用了一下,好像远程登录之后开启的Notebook地址有点问题,访问不到了,也许是他们升级了系统,禁止了相关的操作。
其实它的使用体验并没有比Colab和Kaggle更好,文档什么的也不太周全。唯一的优点应该就是便宜了,另外这个平台支持银联,国内使用应该是没有问题的。
总结
还有一些人会推荐Google的云平台,当中也有GPU服务器租赁,并且注册之后就可以获得300美金的免费代金券。但它也有一个问题,就是GPU的资源数量非常有限,经常起半天起不来,因为资源都被占满了。比如选择了欧洲地址的服务器,基本上要等欧洲人睡觉的时间段打开才能拿到机器,还是挺不方便的。所以本文当中没有推荐Google的云平台。
希望大家通过本文都可以找到称心如意的GPU平台,完成自己深度学习的小目标。
如果喜欢本文,可以的话,请点个关注,给我一点鼓励,也方便获取更多文章。
本文使用 mdnice 排版