Skip to content

AWS的GPU服务器TensorFlow编程指南

AWS的GPU服务器TensorFlow编程指南

对于我们这些穷穷的小白,对机器学习充满着热情,却买不起最基础的gpu显卡

还好在aws(亚马逊)上可以以比较便宜的价格租到。

比如p2.xlarge这款,12g的gpu,足以够一般的神经网络训练使用

租金最高也只需要0.9美元一小时。

可以按时收费

但是服务器的使用对于我们这些小白来说还是有一定的门槛

我自己也是钻研了两天才摸到了门道

本文详细解说如何使用aws上的gpu进行神经网络训练,希望能让无法接触到高级的显卡,却也勇于进入神经网络的世界探个究竟的求知者能够有机会感受到性能最好的gpu

本文分为下面个部分

一、如何在aws上租到服务器

二、如果使用windows本机连上服务器,并使用jupyter notebook编译python代码

三、如何从本机向服务器上传或者下载数据文件

看官们可以根据自己的需求与了解在三个部分跳转:

一、如何在aws上租到服务器

这个部分准备给非常白的小白:

1.1、百度aws,选择第一个:

1.2、注册账户并登陆,选择EC2服务

1.3、进入控制台之后,点启动实例(实例在这里就是服务器的意思)

1.4、选择Deep Learning AMI(Ubuntu)Version 10.0

之所以选择这个是因为这个已经装好了大多数机器学习需要的环境,不用再费心力啦

1.5、在众多gpu服务器中选择一个

大家根据自己的钱袋子选择即可,我在这里选择的是p2.xlarge

选择完之后点击下一步

1.6、主要配置

接下来几步配置基本上只需要直接点下一步就可,这里标记出需要改动的步骤:

步骤3:选择请求竞价型实例

步骤6:选择添加规则,这里要添加2个规则,添加完如下图:

https用于浏览器访问jupyter notebook

自定义TCP为jupyter的端口

1.7、配置密匙对,需要保管好自己的密匙文件

1.8、申请完毕

1.9、用完记得终止

sum:你已经拥有了美国一台gpu服务器,满满的成就感哈

二、如何连接到服务器,并使用服务器的jupyter notebook

如果可以使用服务器的jupyter notebook,那完全可以拥有和本地编程相同的体验!

网上有许多配置jupyter notebook的方法,但都是不够详细,也让我伤透了心。

连接服务器使用的是ssh方法,官方推荐的是使用putty这款小神器

2.1、下载putty

可以直接在aws网上下载

2.2、使用PuTTYGEN把1.7步骤中的gem文件转为ppk文件

2.3、打开PuTTY

(1)Host Name:ubuntu 公有DNS

公有DNS可以在步骤1.8下面可以找到

(2)在左侧菜单Connection->SSH->Auth导入2.2转好的ppk文件

做好上面两个小步骤以后,就可以点击open了。

此时,你已经连接到了aws的ubuntu服务器啦

2.4、激活环境

输入:source activate tensorflow_p27回车

2.5、配置环境

由于我的程序中需要用到skitlearn,所以:

输入:pip install-U scikit_learn回车

需要其它的包可以使用相同的方法

2.6、在服务器端打开jupyter notebook

输入:jupyter notebook回车

这个当然就是服务端jupyter notebook的地址

2.7、配置tunnel

左上角右键点击changing setting

connection->ssh->tunnels

source port:填写8888

Destination:填写127.0.0.1:8888

点击add再点击apply端口映射就完成啦!

2.8、打开jupyter notebook

复制2.7下图中的浏览器网址,将localhost改为2.7中127.0.0.1,成功连上了服务端的jupyter notebook!

三、如何从本机向服务器上传或者下载数据文件

这里我们要介绍另一款神器WinSCP

当然你可以使用putty进行传输文件,但那会麻烦的多,而且不易于记忆

WinSCP的界面是这样的

左边是我们的本机磁盘右边是我们可用的服务器磁盘

点击文件,进行上传或下载操作即可

3.1、下载并安装WinSCP

3.2、登录WinSCP

主机名:公有DNS

用户名:ubuntu

密码:1.7中的密匙对文件

登录以后你就可以尽情的上传文件啦

总结:完成上面三个步骤后,你将可以在远在美国的服务器像自己家里的电脑一样编译程序。

效果:相同一段神经网络代码

i5处理器8小时

p2.xlarge 20分钟

这还是最low的一个gpu处理器,至于别的gpu效果如何,不妨试试~

作者:李嘉豪

相关推荐: 什么是亚马逊FBA分仓?

什么是亚马逊FBA分仓? 亚马逊的FBA,如不特别设置,都是分仓的。您的不同产品会自动配置到亚马逊在不同地方的仓库。就算你只卖美国本土,你发一百个货品给FBA,很可能40个去了加州仓库,20个去了印第安纳,剩下的去了其他仓库。 亚马逊为了合理利用仓库库存,平衡…

    码刀科技(www.lekshop.cn)是国内知名企业级电商平台提供商,为企业级商家提供最佳的电商平台搭建(多种模式电商平台搭建:B2B/B2B2C/B2C/O2O/新零售/跨境等)、平台管理系统开发及互联网采购解决方案服务, 联系客服了解更多.

    电子商务网站建设的重要性和好处