windows下如何配置AWS进行深度学习
2017-12-26 21:11
218 查看
卷积神经网络(Convolutional Neural Network,CNN)用于图像处理确实是非常出色,但是随之而来的计算量也很大,如果没有配置过硬的电脑,训练过程实在让人焦急。
好在Udacity赠送100刀的亚马逊云服务代金券,下面也是整理自Udacity深度学习纳米学位的课程。
Amazon 弹性计算云 EC2实例上的p2.xlarge 适合通用GPU计算应用程序,配备Intel Xeon E5-2686 v4 (Broadwell) 处理器、NVIDIA K80 GPU,每个配备 2496 个并行处理内核和 12GiB 的 GPU 内存以及高速的带宽。
然后查看你的EC2服务上限报告,如果上限为0的话,需要提交上限提升请求 (升高上限不需要收费)。
请求提高上限
- Limit Type:
- Region:
- Primary Instance Type:
- Use Case Description:填写合理理由即可
等待邮件回复,批准后选择对应的地区,进行下一步创建一个实例。
点击“启动实例”按钮
点击“Community AMI”
搜索“udacity-dl”AMI。
针对 udacity-dl AMI 点击“选择”按钮。
这个AMI比较老了 ,现在可以用
这个AMI(亚马逊机器镜像)包含在 GPU 上训练神经网络所需的所有环境文件和驱动程序,也可以按需自行添加。
后面默认下一步,到“安全组”。
设置安全组
选择创建“新的安全组”
将“安全组名称”设为“Jupyter”(可选)
点击“添加规则”
设置“自定义 TCP 规则”
将“端口范围”设为“8888”
将“来源”设为“任何地方”
点击“查看和启动”
如果有,可以选择现有的;
如果没有,可以创建新的,
如果AMI预先配置好了用户帐号和密码,可以选择“在没有密钥对的情况下继续”。
点击“查看实例”按钮,转到 EC2 管理控制台并观察你的实例开始启动。
注意!!!
此刻起,运行此EC2实例,AWS会收取费用,一般是0.9$/h。
如果不使用一定记得“停止”此实例。“停止”状态下还是会收取小额的存储空间费用(首次注册可以有1年30G的免费存储空间),并且不断积累,直到你“终止”(即删除)实例。
竞价实例
有一个节省的方法,是采用“竞价实例”。适合于配置好了,准备跑大型网络的时候,因为不可以“停止”,只能“终止”,但是价格一般不超过0.3$/h。
竞价实例选择请求类型为“请求并维护”,这样不至于中途被停掉,如果价格上涨会自动补上差价,但是价格不会超过0.9$/h。
实例的登陆需要用ssh,由于Windows下没有自带的ssh客户端。下面需要采用PuTTY从windows连接到Linux实例,用WinSCP进行文件传输。
获得实例ID: Amazon EC2 控制台(位于 Instance ID (实例 ID) 列中)
获得实例的公有DNS名称: Public DNS (IPv4) 列
查找私有密钥: .pem 文件的路径
允许当前IP到实例的入站SSH流量:可以在安全组中设置为“任何位置”,反正需要key才能访问。
启动 PuTTYgen。
在 Type of key to generate 下,选择 RSA。
Load .pem 文件。
选择 Save private key,以 PuTTY 可以使用的格式保存密钥。
为该密钥指定与密钥对相同的名称。PuTTY 自动添加 .ppk 文件扩展名。
在 Category 窗格中,选择 Session 并填写以下字段:
Host Name 框中,输入 user_name@public_dns_name。本例输入
对于 Amazon Linux AMI,用户名为 ec2-user。
对于 RHEL AMI,用户名称是 ec2-user 或 root。
对于 Ubuntu AMI,用户名称是 ubuntu 或 root。
对于 Centos AMI,用户名称是 centos。
对于 Fedora AMI,用户名称是 ec2-user。
对于 SUSE,用户名称是 ec2-user 或 root。
在 Connection type 下,选择 SSH。确保 Port 为 22。
在 Category 窗格中,展开 Connection,再展开 SSH,然后选择 Auth。
选择 Browse,添加之前生成的 .ppk 文件。
在 Category 树中选择 Session,在 Saved Sessions 中输入会话名称,然后选择 Save,便于以后使用。(下次重新启动实例时需要更改在 HOST Name 框中更改 IPv4 Public IP)
点击底部
至此,可以通过 PuTTY 的窗口远程运行AWS的实例,类似于远程操作一个网速超快的linux主机。所以需要的资源直接从网上下载,不要从本机传送大文件!!!
在EC2实例上
克隆github上的项目:
进入资源库目录:
激活新的环境:
运行jupyter notebook:
在本地主机上
通过访问 X.X.X.X:8888(X.X.X.X 是你的 EC2 实例的 IP 地址,IPv4 Public IP)从网络浏览器中访问 Jupyter notebook。
下载并安装 WinSCP,文件在此处
打开界面之后会显示登陆窗口(如下图),选择“工具”,“导入站点”,从PuTTY导入即可。
建立连接后,在连接窗口中,实例显示在右侧,本地计算机显示在左侧。可以直接将文件从本地计算机拖放到远程文件系统。
切记,如果要传入大文件,可以先将文件上传至网盘,再从网盘下载到实例中。
当实例处于开启状态时是会一直计费的!
参考资料:
1. https://zhuanlan.zhihu.com/p/25066187?utm_medium=social&utm_source=weibo
2. https://docs.aws.amazon.com/zh_cn/AWSEC2/latest/UserGuide/putty.html
好在Udacity赠送100刀的亚马逊云服务代金券,下面也是整理自Udacity深度学习纳米学位的课程。
AWS介绍
即amazon web services,可以在其云端的 GPU (图形处理器)上进行训练。虽然 CPU 可以比 GPU 计算更复杂的运算,但是吞吐量较小。因此在训练神经网络时,GPU 比 CPU 的速度要快很多。GPU 在同一时间会执行更多的计算,当我们处理大数据时这很重要。Amazon 弹性计算云 EC2实例上的p2.xlarge 适合通用GPU计算应用程序,配备Intel Xeon E5-2686 v4 (Broadwell) 处理器、NVIDIA K80 GPU,每个配备 2496 个并行处理内核和 12GiB 的 GPU 内存以及高速的带宽。
准备工作
首先申请AWS的账号,需要支持Visa的信用卡。然后查看你的EC2服务上限报告,如果上限为0的话,需要提交上限提升请求 (升高上限不需要收费)。
请求提高上限
- Limit Type:
EC2 Instances
- Region:
US East(Northern Virginia)(也可以选其他有这个实例的地区)
- Primary Instance Type:
p2.xlarge
- Use Case Description:填写合理理由即可
等待邮件回复,批准后选择对应的地区,进行下一步创建一个实例。
启动实例
转到 EC2 管理控制台点击“启动实例”按钮
点击“Community AMI”
搜索“udacity-dl”AMI。
针对 udacity-dl AMI 点击“选择”按钮。
这个AMI比较老了 ,现在可以用
Deep Learning AMI (Ubuntu),对应的putty中登陆hostname也要改成
ubuntu@x.x.x.x
这个AMI(亚马逊机器镜像)包含在 GPU 上训练神经网络所需的所有环境文件和驱动程序,也可以按需自行添加。
选择实例
选择p2.xlarge实例,如果最终出现如下提示,要确认网页右上角选择的区域是否是提升上限的区域。
后面默认下一步,到“安全组”。
安全组
点击“修改安全组”设置安全组
选择创建“新的安全组”
将“安全组名称”设为“Jupyter”(可选)
点击“添加规则”
设置“自定义 TCP 规则”
将“端口范围”设为“8888”
将“来源”设为“任何地方”
点击“查看和启动”
启动
点击“启动”按钮,跳转到创建密钥对。然后点击“启动实例”如果有,可以选择现有的;
如果没有,可以创建新的,
如果AMI预先配置好了用户帐号和密码,可以选择“在没有密钥对的情况下继续”。
udacity-dl的这个AMI可以这样选择。
点击“查看实例”按钮,转到 EC2 管理控制台并观察你的实例开始启动。
注意!!!
此刻起,运行此EC2实例,AWS会收取费用,一般是0.9$/h。
如果不使用一定记得“停止”此实例。“停止”状态下还是会收取小额的存储空间费用(首次注册可以有1年30G的免费存储空间),并且不断积累,直到你“终止”(即删除)实例。
竞价实例
有一个节省的方法,是采用“竞价实例”。适合于配置好了,准备跑大型网络的时候,因为不可以“停止”,只能“终止”,但是价格一般不超过0.3$/h。
竞价实例选择请求类型为“请求并维护”,这样不至于中途被停掉,如果价格上涨会自动补上差价,但是价格不会超过0.9$/h。
登陆实例
配置好之后,还需要几分钟的时间初始化。在 EC2 管理控制台上看到“2/2 检查已通过”消息后,实例就可以登录了。实例的登陆需要用ssh,由于Windows下没有自带的ssh客户端。下面需要采用PuTTY从windows连接到Linux实例,用WinSCP进行文件传输。
使用PuTTY从Windows连接到Linux实例
准备工作
安装PuTTY:此处下载获得实例ID: Amazon EC2 控制台(位于 Instance ID (实例 ID) 列中)
获得实例的公有DNS名称: Public DNS (IPv4) 列
查找私有密钥: .pem 文件的路径
允许当前IP到实例的入站SSH流量:可以在安全组中设置为“任何位置”,反正需要key才能访问。
使用PuTTYgen转换私有密钥
PuTTY 本身不支持 Amazon EC2 生成的私有密钥格式 (.pem)。需要用PuTTYgen 将密钥转换成所需的 PuTTY 格式 (.ppk)。启动 PuTTYgen。
在 Type of key to generate 下,选择 RSA。
Load .pem 文件。
选择 Save private key,以 PuTTY 可以使用的格式保存密钥。
为该密钥指定与密钥对相同的名称。PuTTY 自动添加 .ppk 文件扩展名。
启动PuTTY会话
启动 PuTTY。在 Category 窗格中,选择 Session 并填写以下字段:
Host Name 框中,输入 user_name@public_dns_name。本例输入
udacity@X.X.X.X(IPv4 Public IP)
对于 Amazon Linux AMI,用户名为 ec2-user。
对于 RHEL AMI,用户名称是 ec2-user 或 root。
对于 Ubuntu AMI,用户名称是 ubuntu 或 root。
对于 Centos AMI,用户名称是 centos。
对于 Fedora AMI,用户名称是 ec2-user。
对于 SUSE,用户名称是 ec2-user 或 root。
在 Connection type 下,选择 SSH。确保 Port 为 22。
在 Category 窗格中,展开 Connection,再展开 SSH,然后选择 Auth。
选择 Browse,添加之前生成的 .ppk 文件。
在 Category 树中选择 Session,在 Saved Sessions 中输入会话名称,然后选择 Save,便于以后使用。(下次重新启动实例时需要更改在 HOST Name 框中更改 IPv4 Public IP)
点击底部
open即可开启窗口,连接到实例。如果AMI设置密码,需要在窗口中输入,这里用密码“udacity”进行身份验证。然后使用 passwd 命令更改密码。
至此,可以通过 PuTTY 的窗口远程运行AWS的实例,类似于远程操作一个网速超快的linux主机。所以需要的资源直接从网上下载,不要从本机传送大文件!!!
在EC2实例上
克隆github上的项目:
git clone ..<url>..
进入资源库目录:
cd deep-learning/intro-to-tensorflow/
激活新的环境:
source activate dl
运行jupyter notebook:
jupyter notebook --ip=0.0.0.0
在本地主机上
通过访问 X.X.X.X:8888(X.X.X.X 是你的 EC2 实例的 IP 地址,IPv4 Public IP)从网络浏览器中访问 Jupyter notebook。
使用 WinSCP 将文件传输到实例
通过 WinSCP,可以将 Windows 计算机中的文件拖放到 Linux 实例或同步这两个系统之间的所有目录结构。操作类似于 total command。下载并安装 WinSCP,文件在此处
打开界面之后会显示登陆窗口(如下图),选择“工具”,“导入站点”,从PuTTY导入即可。
建立连接后,在连接窗口中,实例显示在右侧,本地计算机显示在左侧。可以直接将文件从本地计算机拖放到远程文件系统。
切记,如果要传入大文件,可以先将文件上传至网盘,再从网盘下载到实例中。
当实例处于开启状态时是会一直计费的!
参考资料:
1. https://zhuanlan.zhihu.com/p/25066187?utm_medium=social&utm_source=weibo
2. https://docs.aws.amazon.com/zh_cn/AWSEC2/latest/UserGuide/putty.html
相关文章推荐
- 在Windows 7下如何进行PHP和Apache配置环境
- 如何在Windows环境下进行jni开发--NDK环境配置
- Windows 2008 R2下如何进行Wincache安装与配置教程
- 如何配置 windows 安装盘需要拷贝的文件
- Windows 2008 R2系统开机时如何不让Windows进行磁盘检测?
- 如何在DOS下用TCP/IP协议进行登录Windows 2K?
- quartz.net 3.x版本如何通过xml文件进行Job配置
- 如何关闭windows 2003中ie增强的安全配置
- Windows如何配置Android的adb环境变量
- windows下如何配置apache+php5.4.7+mysql-5.5.27
- windows XP系统搜索无线网络时提示“windows无法配置此无线连接”,如何处理?
- 如何在WINDOWS(XP)下使用copSSH配置GIT服务器+TortiseGIT客户端
- Windows安全认证是如何进行的?[NTLM篇]
- Windows 安全认证是如何进行的?
- 转·如何配置Windows Live Writer
- Windows安全认证是如何进行的?[Kerberos篇]
- WinForm异步:如何:对 Windows 窗体控件进行线程安全调用
- windows 技巧一 ——--域环境下如何将域用户的配置文件转移到c盘外的其他盘符
- 如何在Windows系统中配置Mysql群集(Mysql Cluster)
- 如何关闭windows 2003“IE”增强的安全配置堵塞