2016-04-08 94 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規格的虛擬機。使用雲實例還有一個好處,可以在運行腳本時關閉它並停止付費。

祝你好運!