本文介紹如何使用DLC、DSW和NAS,基於PyTorch進行離線遷移訓練。
前提條件
選擇合適的地區,建立通用型NAS檔案系統,詳情請參見通過控制台建立通用型NAS檔案系統。
使用限制
本文的操作僅支援通用計算資源公用資源群組的工作叢集。
步驟一:建立資料集
進入資料集管理頁面。
登入PAI控制台。
在左側導覽列單擊工作空間列表,在工作空間列表頁面中單擊待操作的工作空間名稱,進入對應的工作空間。
在左側導覽列,選擇 。
在資料集管理頁面,單擊建立資料集。
在建立資料集頁面,配置如下參數。
參數
描述
名稱
資料名稱。
描述
資料的描述資訊,便於區分不同的資料。
選擇資料存放區
選擇阿里雲檔案儲存體(通用型NAS)。
選擇檔案系統
配置為已建立的NAS檔案系統的ID。您可以登入NAS控制台,在對應的地區,查看NAS檔案系統ID。也可從下拉式清單中查看擁有的NAS檔案系統ID。
檔案系統路徑
掛載的NAS具體的路徑。配置為
/
。預設掛載路徑
掛載的NAS在任務中的路徑,配置為
/mnt/data/
。重要地區必須與DSW執行個體的地區、資料和代碼的儲存地區一致。
單擊提交。
步驟二:建立DSW執行個體
建立DSW執行個體時,您需要在資料集地區單擊添加,選擇步驟一建立的NAS類型資料集,並將掛載路徑配置為/mnt/data/
,工作目錄選擇資料集-/mnt/data/
。
其他參數配置詳情,請參見建立DSW執行個體。
步驟三:準備資料
本文使用的資料已經存放在公開地址,您可以直接下載(下載資料),解壓後即可使用。
進入DSW開發環境。
登入PAI控制台
在左側導覽列單擊工作空間列表,在工作空間列表頁面中單擊待操作的工作空間名稱,進入對應工作空間內。
在頁面左上方,選擇使用服務的地區。
在左側導覽列,選擇 。
可選:在互動式建模(DSW)頁面的搜尋方塊,輸入執行個體名稱或關鍵字,搜尋執行個體。
單擊需要開啟的執行個體操作列下的開啟。
在DSW開發環境的頂部功能表列,單擊Notebook頁簽。
下載資料。
單擊左上方工具列中的表徵圖,建立檔案夾(例如pytorch_transfer_learning)。
在DSW開發環境的頂部功能表列,單擊Terminal頁簽,即可開啟Terminal。
在Terminal中,使用
cd
命令進入已建立的檔案夾,並通過wget
命令下載資料集,如下圖所示。cd /mnt/workspace/pytorch_transfer_learning/ wget https://pai-public-data.oss-cn-beijing.aliyuncs.com/hol-pytorch-transfer-cv/data.tar.gz
其中
https://pai-public-data.oss-cn-beijing.aliyuncs.com/hol-pytorch-transfer-cv/data.tar.gz
表示資料集地址,即從該地址下載資料集。使用
tar -xf ./data.tar.gz
命令解壓資料集。切換到Notebook頁簽,在左側分類樹,進入目錄pytorch_transfer_learning中,按右鍵已解壓的資料檔案夾(hymenoptera_data),在捷徑功能表中,單擊Rename將該檔案重新命名為input,以便後續操作。
步驟四:準備訓練代碼和模型隱藏檔夾
在DSW執行個體的Terminal中,使用
wget
命令將訓練代碼下載到pytorch_transfer_learning
檔案夾下。cd /mnt/workspace/pytorch_transfer_learning/ wget https://pai-public-data.oss-cn-beijing.aliyuncs.com/hol-pytorch-transfer-cv/main.py
其中
https://pai-public-data.oss-cn-beijing.aliyuncs.com/hol-pytorch-transfer-cv/main.py
表示訓練代碼儲存地址。在pytorch_transfer_learning檔案夾下,建立名為output的檔案夾,用於儲存訓練完成的模型。
mkdir output
查看pytorch_transfer_learning檔案夾的內容。
檔案夾下包括如下檔案:
input:訓練資料檔案夾。
main.py:訓練代碼。
output:模型隱藏檔夾。
步驟五:建立任務
進入建立任務頁面。
登入PAI控制台。
在左側導覽列單擊工作空間列表,在工作空間列表頁面中單擊待操作的工作空間名稱,進入對應工作空間內。
在工作空間頁面的左側導覽列選擇 ,在分布式訓練(DLC)頁面中單擊建立任務,進入建立任務頁面。
在建立任務頁面,配置如下參數。
地區
參數
描述
基本資料
任務名稱
深度學習訓練的任務名稱。
節點鏡像
選擇官方鏡像 ,並在下面列表中選擇PyTorch鏡像。例如:選擇
pytorch-training:1.12pai-gpu-py38-cu113-ubuntu20.04
。資料集配置
選擇步驟一建立的NAS類型資料集。
代碼配置
無需配置。
啟動命令
配置為
python /mnt/data/pytorch_transfer_learning/main.py -i /mnt/data/pytorch_transfer_learning/input -o /mnt/data/pytorch_transfer_learning/output
。三方庫配置
選擇三方庫列表,並在下方文字框中輸入以下內容。
numpy==1.16.4 absl-py==0.11.0
資源配置
資源配額
選擇公用資源。
架構
選擇Pytorch。
任務資源
選擇一台合適的伺服器。例如:資源規格選擇CPU下的ecs.g6.xlarge,節點數量配置為1。
單擊確定。
步驟六:查看任務詳情和日誌結果
在分布式訓練任務頁面,單擊任務的名稱。
在任務詳情頁面,即可查看任務的基本資料及基本任務配置等資訊。
在任務詳情頁面底部的執行個體頁簽,單擊目標執行個體操作列下的日誌,即可查看日誌結果。
日誌結果如下圖所示。