使用亚马逊云服务器EC2做深度学习(四)配置好的系统镜像

时间:2024-03-08 11:10:10

这是《使用亚马逊云服务器EC2做深度学习》系列的第四篇文章。

(一)申请竞价实例  (二)配置Jupyter Notebook服务器  (三)配置TensorFlow  (四)配置好的系统镜像

配置深度学习的环境是一个非常繁琐的过程。它要求你对Linux命令有一定地了解,与此同时各种深度学习库、驱动更新十分频繁,有可能明天教程里的安装脚本就不管用了。

 

AMI


AMI就是解决方法。AMI是可以直接在EC2启动的系统镜像,有的系统镜像已经配置好了使用GPU的深度学习环境,这样启动实例后,你就可以直接运行程序了。

 

AMI有几种。你可以自己创建AMI,这样你需要自己支付存储AMI镜像的费用,如果你频繁地需要使用你已经配置好的环境,这是一个不错的选择。

 

付费AMI


第二种是awsmarketplace上需要付费的AMI。如果你使用这种镜像,除了为实例付费以外,你还需要为镜像付费。付费的AMI更新频繁,你可以找到包含最近配置的深度学习库的镜像。

bitfusion就是一个深度学习镜像的提供商。不同的实例,镜像的使用费有所差异。对于g2.2xlarge实例,需要为TensorFlow镜像额外支付$0.065/h。

1) bitfusion提供了包括TensorFlow、Torch、Caffe、Theano几乎所有主流深度学习库的镜像。注:bitfusion已经提供TensorFlow1.0的镜像了。

https://aws.amazon.com/marketplace/seller-profile?id=3b372560-86bf-4e3d-9ec0-016892a64bed

2) Amazon官方提供的深度学习镜像。官方提供的镜像价格十分昂贵,g2.2xlarge镜像的费用远远超过竞价实例的费用:

https://aws.amazon.com/marketplace/pp/B01M0AXXQB?qid=1475211685369&sr=0-1&ref_=srh_res_product_title

 

社区AMI


第三种是社区AMI,是免费的。当然不付费,你就不能要求太高。除了更新不那么频繁以外,与付费的AMI没有什么区别。

你可以在AMI一栏,点击使用自定义AMI > 选择community AMIs > 搜索深度学习库的名字,比如tensorflow。

注意搜索到的AMI有可能是需要付费的AMI,而且从表面上难以甄别,不过需要付费的AMI通过这种方式启动实例会识别。这就是是为什么需要社区的力量,大家一起来判断哪些社区的AMI质量不错,下面我会提供一些我找到的。大家可以留言你们找到的好的AMI。

 

TensorFlow AMI


上面介绍了如何搜索社区AMI,这里提供了一些我找到的不错的社区AMI。

1) 关键字udacity-dl。环境:anaconda3, tensorflow1.0

2) 关键字DataScienceLab_1.0。环境:Install cuda;cudnn;anaconda2; tensorflow;keras;theano;pytorch;mxnet;caffe;lasagne

3)关键字TFAMI,Github主页可以找到镜像的信息。

如果Python的发行版是Anaconda,有可能不同的库安装在的不同的环境下。通过conda env list命令可以列出系统中所有的环境,然后source activate **就可以启动环境。