2016-04-08 58 views
-1

我刚刚进入机器学习,我有一些需要运行的大型程序。他们需要大约10个小时,但目前我只有一台MacBook Pro才能运行它们。我周游许多,因此无法让我的程序在白天运行。我对服务器有点不熟悉,有人能指点我一些资源的方向,或者提供一些信息给我可以远程运行python程序的地方,以及我需要这样做的基础设施吗?为大型机器学习程序远程运行python程序

+0

一种解决方案可能是在某处找到便宜的台式电脑(便宜的二手电脑可能与MacBook Pro一样快),并将其留在家中。然后,您可以安装Linux并设置ssh访问权限。如果你以前从未设置过ssh,那这将是一个下午的项目。另一种解决方案可能是像Sabalcore这样的专用HPC服务。 – Steve

+0

假设我有一个mac mini,是否需要在其上安装Linux以用于SSH访问,或者是否有任何用于OSX的良好SSH工具? –

+0

OSX带有ssh支持(客户端和服务器),所以你不需要Linux。您在设置ssh时要小心,因为您可以通过公共互联网访问它。我不熟悉在Mac上执行此操作的步骤,但最重要的是使用身份验证密钥而不是密码(并禁用SSH密码登录),并确保只设置了一个用户帐户为ssh访问。互联网上有很多网页解释了Linux上的步骤。它们在Mac上也应该非常相似。 – Steve

回答

1

尝试这种情况:

  • 订阅AWS
  • 创建一个虚拟服务器(使用EC2服务),可能的Linux实例,例如亚马逊默认一个
  • 管理登录到该虚拟服务器
  • 安装屏风(控制台,它可以在后台运行)
  • 安装你的Python程序有
  • 使用屏风控制台启动代码和关闭屏风无关闭会议。

后来

  • 登录到虚拟服务器
  • 开始屏风
  • 看到的结果。

如果您确实需要更长时间运行服务,您可以稍后安装supervisord并将程序配置为在其下运行。它将允许您启动/停止/重新启动并查看程序创建的日志。

AWS的一个优点是,您可以在不需要的时候停止服务器,并且只需支付您使用它的小时数。其他虚拟服务器提供商可能会提供类似的服务(我有时使用Digital Ocean,但还有更多)。

0

这是基于云的虚拟机的完美用例。就我个人而言,我已经使用AWS多次启动虚拟实例。一旦服务器正在运行,所有你需要做的就是将你的文件放到虚拟机中,然后像从Mac那样通过终端运行它们。

我建议您选择一个Ubuntu服务器AMI作为您的起始位置,因为来自终端的命令会比另一个发行版更熟悉您。作为一个附带的好处,python已经安装在Ubuntu上,所以你不得不做一件事。

虚拟机运行起来相当便宜(只要你不发疯)。有很多复杂的方法可以远程运行脚本,但我自己喜欢简单的解决方案,除非需要更复杂的解决方案。简单地将您的文件FTP到服务器,并通过SSH进行远程访问。

一旦你安装一个虚拟机的步骤可能是这样的:

sftp [email protected]cdns.amazon.com 
cd /appropriateFolder/ 
put *.py 
bye 
ssh [email protected] 
cd /appropriateFolder/ 
python myScript.py > output.log & 

最后一行将在后台运行python脚本和转储任何你打印到文件。查看亚马逊的定价清单,您可以轻松找到符合或优于MBP规格的虚拟机。使用云实例还有一个好处,可以在运行脚本时关闭它并停止付费。

祝你好运!