SageMaker-讓自己的訓練上雲端

更新於 發佈於 閱讀時間約 5 分鐘

一.引言

  上回練習了一個官方示例,但其中對於一些細節沒有練習到的感覺,這次我們實際將之前練習的風格轉換訓練推上去看看,看是否能體驗到更多細節。

二.事前規劃

  既然現在需要使用自己的資料,就得好好規劃,這次希望將成本壓制在免費方案的條件下(或是最低限度),大致需要符合以下內容 :

  • 訓練資料及相關產出資料不能超出S3中的5G免費額度
  • 程式碼及訓練相關檔案不能超過筆記本實例的5G限額
  • 訓練時使用 ml.m5.xlarge 執行個體且不超過50小時
  • 筆記本不能開啟超過250小時(*記得確實停止才不會算時間)

  再來因為筆記本一開就會計時,所以這次將在本機端修改完再一次上傳到筆記本,考慮到只有5G,這次就選擇 Vocus-StyleTransfer-V1 來練習,第一版本的風格轉換只需要兩張圖,且訓練上也不會太久,這次修改大致規劃成下列模式 :

StyleTransferV1 ┬ TrainImg
| ├​ Content.jpg
|​ └ Style.jpg
├ Utils
| ├ __init__.py
| └ common.py
├ VGG19PreTrain
| └ vgg19.pth
├ ResultImg
└ Transform.py

三.實際操作

  首先先上傳這些檔案到筆記本內

raw-image

  然後來處理啟動的部分,新增一個 Transform.ipynb,其中原本想要直接使用上傳到筆記本內的圖片,但嘗試後沒想到不行,只能透過S3容器,所以只能先將圖片先上傳到S3後,再指定對應路徑進行訓練。

import sagemaker
from sagemaker.pytorch import PyTorch

sagemaker_session = sagemaker.Session()
region = sagemaker_session.boto_region_name

bucket = sagemaker_session.default_bucket()
prefix = "sagemaker/StyleTransformV1"

role = sagemaker.get_execution_role()

style_path = 's3://S3-bucket-name/TrainImg/Style'
content_path = 's3://S3-bucket-name/TrainImg/Content'

estimator = PyTorch(
entry_point="Transform.py",
role=role,
py_version="py310",
framework_version="2.2.0",
instance_count=1,
instance_type="ml.m5.xlarge",
output_path="s3://S3-bucket-name/Result/",
hyperparameters={"num-steps": 150},
dependencies=['Utils','VGG19PreTrain']
)

estimator.fit({"content": content_path,
"style": style_path})

  並調整存圖從存本機改成上傳到S3

def save_image_to_s3(tensor, s3_bucket, s3_key):
# 將張量轉換為 PIL 圖片
image = tensor.cpu().clone()
image = image.squeeze(0)
image = unloader(image)

# 將圖片保存到內存中的 BytesIO 對象
buffer = io.BytesIO()
buffer.seek(0)

# 將圖片上傳到 S3
s3.upload_fileobj(buffer, s3_bucket, s3_key)

save_image_to_s3(model_output,'S3-bucket-name','Result/result.jpg')

  確認所有都沒問題後,即可使用Shift+Enter運行Transform.ipynb的整個區塊,S3儲存區便會產出結果圖,同樣相關程式碼於Github

raw-image

四.結語

  本次成功將之前的程式碼推上 SageMaker 進行訓練,對於基本使用有了一定的了解,實際用下來雖然在存儲上有著一定的規定,但在環境及訓練上相對都相對簡單,並且使用上邏輯也足夠清晰,接下來下篇應該會繼續探討 SageMaker 提供的其他功能,讓我們下篇再見。

留言
avatar-img
留言分享你的想法!
avatar-img
貓貓學習筆記
10會員
21內容數
AI、電腦視覺、圖像處理、AWS等等持續學習時的學習筆記,也包含一些心得,主要是幫助自己學習,若能同時幫助到不小心來到這裡的人,那也是好事一件 : )
貓貓學習筆記的其他內容
2024/05/22
  這回來介紹 AWS 在目前生成式 AI 各種群魔亂舞下推出的 Bedrock 服務,其官網說明可以快速且傻瓜式的部屬生成式 AI 到你的應用上,看看是不是如其所述的功能強大。
Thumbnail
2024/05/22
  這回來介紹 AWS 在目前生成式 AI 各種群魔亂舞下推出的 Bedrock 服務,其官網說明可以快速且傻瓜式的部屬生成式 AI 到你的應用上,看看是不是如其所述的功能強大。
Thumbnail
2024/05/21
  前陣子我花了一些時間學習 SageMaker 的相關使用,但除了 SageMaker外,AWS 中尚有大量的機器學習相關服務,剛好趁此機會好好的統整分類一下,後續也能作為選擇學習目標的依據。
Thumbnail
2024/05/21
  前陣子我花了一些時間學習 SageMaker 的相關使用,但除了 SageMaker外,AWS 中尚有大量的機器學習相關服務,剛好趁此機會好好的統整分類一下,後續也能作為選擇學習目標的依據。
Thumbnail
2024/05/20
  在上篇我們介紹了 SageMaker 中 Pipeline 的使用方法,其中的 TuningStep 功能,能夠讓我們能夠指定一連串參數組合進行實驗比對,最終找出最適合的參數組合
Thumbnail
2024/05/20
  在上篇我們介紹了 SageMaker 中 Pipeline 的使用方法,其中的 TuningStep 功能,能夠讓我們能夠指定一連串參數組合進行實驗比對,最終找出最適合的參數組合
Thumbnail
看更多
你可能也想看
Thumbnail
每年4月、5月都是最多稅要繳的月份,當然大部份的人都是有機會繳到「綜合所得稅」,只是相當相當多人還不知道,原來繳給政府的稅!可以透過一些有活動的銀行信用卡或電子支付來繳,從繳費中賺一點點小確幸!就是賺個1%~2%大家也是很開心的,因為你們把沒回饋變成有回饋,就是用卡的最高境界 所得稅線上申報
Thumbnail
每年4月、5月都是最多稅要繳的月份,當然大部份的人都是有機會繳到「綜合所得稅」,只是相當相當多人還不知道,原來繳給政府的稅!可以透過一些有活動的銀行信用卡或電子支付來繳,從繳費中賺一點點小確幸!就是賺個1%~2%大家也是很開心的,因為你們把沒回饋變成有回饋,就是用卡的最高境界 所得稅線上申報
Thumbnail
全球科技產業的焦點,AKA 全村的希望 NVIDIA,於五月底正式發布了他們在今年 2025 第一季的財報 (輝達內部財務年度為 2026 Q1,實際日曆期間為今年二到四月),交出了打敗了市場預期的成績單。然而,在銷售持續高速成長的同時,川普政府加大對於中國的晶片管制......
Thumbnail
全球科技產業的焦點,AKA 全村的希望 NVIDIA,於五月底正式發布了他們在今年 2025 第一季的財報 (輝達內部財務年度為 2026 Q1,實際日曆期間為今年二到四月),交出了打敗了市場預期的成績單。然而,在銷售持續高速成長的同時,川普政府加大對於中國的晶片管制......
Thumbnail
重點摘要: 6 月繼續維持基準利率不變,強調維持高利率主因為關稅 點陣圖表現略為鷹派,收斂 2026、2027 年降息預期 SEP 連續 2 季下修 GDP、上修通膨預測值 --- 1.繼續維持利率不變,強調需要維持高利率是因為關稅: 聯準會 (Fed) 召開 6 月利率會議
Thumbnail
重點摘要: 6 月繼續維持基準利率不變,強調維持高利率主因為關稅 點陣圖表現略為鷹派,收斂 2026、2027 年降息預期 SEP 連續 2 季下修 GDP、上修通膨預測值 --- 1.繼續維持利率不變,強調需要維持高利率是因為關稅: 聯準會 (Fed) 召開 6 月利率會議
Thumbnail
由於去年我是直接從JS直播班出發的,想當然沒參加過體驗營這類的短期嘗鮮課程,就抱著試試看的心態來體驗看看了,也因為我本身有一些些基礎了,這次就果斷幫自己加碼擔任志工,多多少少能幫助到剛開始就卡住的同學,希望能借著多次的經驗累積來增加我的經歷。
Thumbnail
由於去年我是直接從JS直播班出發的,想當然沒參加過體驗營這類的短期嘗鮮課程,就抱著試試看的心態來體驗看看了,也因為我本身有一些些基礎了,這次就果斷幫自己加碼擔任志工,多多少少能幫助到剛開始就卡住的同學,希望能借著多次的經驗累積來增加我的經歷。
追蹤感興趣的內容從 Google News 追蹤更多 vocus 的最新精選內容追蹤 Google News