全部產品
Search
文件中心

Platform For AI:使用NAS提交單機PyTorch遷移學習任務

更新時間:Nov 19, 2024

本文介紹如何使用DLC、DSW和NAS,基於PyTorch進行離線遷移訓練。

前提條件

選擇合適的地區,建立通用型NAS檔案系統,詳情請參見通過控制台建立通用型NAS檔案系統

使用限制

本文的操作僅支援通用計算資源公用資源群組的工作叢集。

步驟一:建立資料集

  1. 進入資料集管理頁面。

    1. 登入PAI控制台

    2. 在左側導覽列單擊工作空間列表,在工作空間列表頁面中單擊待操作的工作空間名稱,進入對應的工作空間。

    3. 在左側導覽列,選擇AI資產管理 > 資料集

  2. 建立基礎資料集,其中,儲存類型選擇為檔案儲存體(通用型NAS)

步驟二:建立DSW執行個體

建立DSW執行個體時,您需要在資料集地區單擊添加,選擇步驟一建立的NAS類型資料集,並將掛載路徑配置為/mnt/data/,工作目錄選擇資料集-/mnt/data/

其他參數配置詳情,請參見建立DSW執行個體

image

步驟三:準備資料

本文使用的資料已經存放在公開地址,您可以直接下載(下載資料),解壓後即可使用。

  1. 進入DSW開發環境。

    1. 登入PAI控制台

    2. 在左側導覽列單擊工作空間列表,在工作空間列表頁面中單擊待操作的工作空間名稱,進入對應工作空間內。

    3. 在頁面左上方,選擇使用服務的地區。

    4. 在左側導覽列,選擇模型開發與訓練 > 互動式建模(DSW)

    5. 可選:互動式建模(DSW)頁面的搜尋方塊,輸入執行個體名稱或關鍵字,搜尋執行個體。

    6. 單擊需要開啟的執行個體操作列下的開啟

  2. DSW開發環境的頂部功能表列,單擊Notebook頁簽。

  3. 下載資料。

    1. 單擊左上方工具列中的建立檔案夾表徵圖,建立檔案夾(例如pytorch_transfer_learning)。

    2. DSW開發環境的頂部功能表列,單擊Terminal頁簽,即可開啟Terminal。

    3. 在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表示資料集地址,即從該地址下載資料集。

      image

    4. 使用tar -xf ./data.tar.gz命令解壓資料集。

    5. 切換到Notebook頁簽,在左側分類樹,進入目錄pytorch_transfer_learning中,按右鍵已解壓的資料檔案夾(hymenoptera_data),在捷徑功能表中,單擊Rename將該檔案重新命名為input,以便後續操作。

步驟四:準備訓練代碼和模型隱藏檔夾

  1. 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表示訓練代碼儲存地址。

  2. pytorch_transfer_learning檔案夾下,建立名為output的檔案夾,用於儲存訓練完成的模型。

    mkdir output
  3. 查看pytorch_transfer_learning檔案夾的內容。

    檔案夾下包括如下檔案:

    • input:訓練資料檔案夾。

    • main.py:訓練代碼。

    • output:模型隱藏檔夾。

    最終的檔案夾內容

步驟五:建立任務

  1. 進入建立任務頁面。

    1. 登入PAI控制台

    2. 在左側導覽列單擊工作空間列表,在工作空間列表頁面中單擊待操作的工作空間名稱,進入對應工作空間內。

    3. 在工作空間頁面的左側導覽列選擇模型開發與訓練 > 分布式訓練(DLC),在分布式訓練(DLC)頁面中單擊建立任務,進入建立任務頁面。

  2. 建立任務頁面,配置如下參數。

    地區

    參數

    描述

    基本資料

    任務名稱

    深度學習訓練的任務名稱。

    節點鏡像

    選擇官方鏡像 ,並在下面列表中選擇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。

  3. 單擊確定

步驟六:查看任務詳情和日誌結果

  1. 分布式訓練任務頁面,單擊任務的名稱

  2. 任務詳情頁面,即可查看任務的基本資料基本任務配置等資訊。

  3. 任務詳情頁面底部的執行個體頁簽,單擊目標執行個體操作列下的日誌,即可查看日誌結果。

    日誌結果如下圖所示。image.png