自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

新入坑的SageMaker Studio Lab和Colab、Kaggle相比,性能如何?

開發(fā) 開發(fā)工具
本文我使用圖像和 NLP 分類任務(wù),比較了在 SageMaker Studio Lab 和 Colab、Colab Pro 以及 Kaggle 上訓(xùn)練神經(jīng)網(wǎng)絡(luò)的效果。

一周前,亞馬遜啟動(dòng)了 SageMaker Studio 的免費(fèi)簡(jiǎn)化版 SageMaker Studio Lab,提供了一個(gè)時(shí)限為12小時(shí)的 CPU 實(shí)例和一個(gè)時(shí)限為 4 小時(shí)的 GPU 實(shí)例。SageMaker Studio Lab 成為繼 Google Colab、Kaggle 和 Paperspace 之后的又一個(gè)免費(fèi)深度學(xué)習(xí)計(jì)算空間。

[[440558]]

Studio Lab 為用戶提供了所有入門 AI 所需的基礎(chǔ)能力,包括 JupyterLab IDE、CPU 和 GPU 模型訓(xùn)練算力以及 15 GB 的永久存儲(chǔ)。

那么,SageMaker Studio Lab 如何與競(jìng)爭(zhēng)對(duì)手抗衡?它是否值得使用?

現(xiàn)在一位名為 Benjamin Warner 的博主已經(jīng)申請(qǐng)使用了 SageMaker Studio Lab,并為大家撰寫了一篇博客「開箱測(cè)評(píng)」。以下是博客原文。

本文我使用圖像和 NLP 分類任務(wù),比較了在 SageMaker Studio Lab 和 Colab、Colab Pro 以及 Kaggle 上訓(xùn)練神經(jīng)網(wǎng)絡(luò)的效果。

與 Colab 和 Kaggle 的比較

與 Colab 和 Kaggle 一樣,Studio Lab 提供 CPU 和 GPU 實(shí)例:運(yùn)行時(shí)間為 12 小時(shí)的 T3.xlarge CPU 實(shí)例和運(yùn)行時(shí)間為 4 小時(shí)的 G4dn.xlarge GPU 實(shí)例。比較結(jié)果如下表所示:

在測(cè)試比較中我發(fā)現(xiàn):

  • SageMaker 只有持久存儲(chǔ),但與 Google Drive 不同的是,它的速度足以訓(xùn)練;
  • Colab 暫存盤因?qū)嵗?
  • Colab 的持久存儲(chǔ)是 Google Drive 免費(fèi)分配的;
  • Colab Pro 可以分配 Tesla T4 或 Tesla K80;
  • 免費(fèi)版 Colab 也可以分配 Tesla T4 或 Tesla P100;
  • Kaggle 的持久存儲(chǔ)為每個(gè)筆記本 20GB;
  • Kaggle 有一個(gè)每周 GPU 運(yùn)行時(shí)間上限,它根據(jù)總使用量而變化,每周大約 40 小時(shí)。

啟動(dòng) SageMaker Studio Lab 后將獲得稍有修改的 JupyterLab 實(shí)例,其中安裝了一些擴(kuò)展,例如 Git。

SageMaker JupyterLab 環(huán)境

在我的測(cè)試中,SageMaker Studio Lab 的 JupyterLab 的行為與在自己系統(tǒng)上正常安裝 JupyterLab 完全相同。甚至之前對(duì) JupyterLab 做的修改和已安裝的 python 包都還在。

例如,我能夠從 Jupyterlab Awesome List 中安裝 python 語言服務(wù)器和 markdown 拼寫檢查器。但這也帶來了一個(gè)問題,即亞馬遜是否會(huì)更新像 PyTorch 這樣的預(yù)安裝包,或者維護(hù)更新的環(huán)境是否完全依賴于用戶。

亞馬遜后續(xù)可能會(huì)銷毀我的實(shí)例,或者將來會(huì)升級(jí)底層映像,刪除自定義安裝的包和擴(kuò)展。但就目前而言,相比于 Colab 和 Kaggle,Studio Lab 是三者中可定制程度最高的服務(wù)。

基準(zhǔn)

數(shù)據(jù)集和模型

我選擇了兩個(gè)小數(shù)據(jù)集來對(duì) SageMaker 和 Colab 進(jìn)行基準(zhǔn)測(cè)試:Imagenette 以及 IMDB。Imagenette 數(shù)據(jù)集用于計(jì)算機(jī)視覺,Hugging Face 的 IMDB 用于 NLP。為了減少訓(xùn)練時(shí)間,在訓(xùn)練 IMDB 時(shí),我隨機(jī)抽取了 20% 的測(cè)試集。

對(duì)于計(jì)算機(jī)視覺,模型選擇 XResNet 和 XSE-ResNet,即 ResNet 的 fast.ai 版本;對(duì)于 NLP,我選擇 Hugging Face 實(shí)現(xiàn)的 RoBERTa。

  • Imagenette 地址:https://github.com/fastai/imagenette#imagenette
  • IMDB 地址:https://huggingface.co/datasets/imdb
  • fast.ai 地址:https://docs.fast.ai/

訓(xùn)練設(shè)置

訓(xùn)練 Imagenette 采用 fast.ai ,其在進(jìn)行數(shù)據(jù)擴(kuò)充時(shí),可以對(duì)圖像進(jìn)行隨機(jī)調(diào)整 crop 和隨機(jī)水平翻轉(zhuǎn)。

訓(xùn)練 IMDB 采用 blurr 庫,該庫將 fast.ai 和 Hugging Face Transformers 集成在一起。除了向 fast.ai 添加 Transformers 訓(xùn)練和推理支持外,blurr 還集成了每 batch token 化和 fast.ai 文本數(shù)據(jù)加載器,后者根據(jù)序列長度對(duì)數(shù)據(jù)集進(jìn)行隨機(jī)排序,以最大限度地減少訓(xùn)練時(shí)的填充(padding)。

XSE-ResNet50 和 RoBERTa 采用單精度和混合精度訓(xùn)練的方式 。XSE-ResNet50 訓(xùn)練圖像大小為 224 像素,混合精度 batch 大小為 64,單精度 batch 大小為為 32。RoBERTa 混合精度 batch 大小為 16,單精度 batch 大小為 8。

為了探索 CPU 使用極限,我還訓(xùn)練了一個(gè) XResNet18 模型,圖像大小為 128 像素,batch 大小為 64。

blurr 地址:https://ohmeow.github.io/blurr/

結(jié)果

當(dāng)進(jìn)行混合精度訓(xùn)練時(shí),SageMaker Studio Lab 的 Tesla T4 優(yōu)于 Google Colab 的 Tesla P100,但在訓(xùn)練全單精度模型時(shí)表現(xiàn)稍差。

XSE-ResNet50

在相似的設(shè)置下,Colab Pro High RAM 和 SageMaker 比較,XSE-ResNet50 在 SageMaker 上的總體訓(xùn)練速度提高了 17.4%。僅查看訓(xùn)練循環(huán)(training loop)時(shí),SageMaker 比 Colab Pro 快 19.6%。SageMaker 在所有操作中都更快,但有一個(gè)明顯的例外:在向后傳遞中,SageMaker 比 Colab Pro 慢 10.4%。

當(dāng)以單精度訓(xùn)練 XSE-ResNet50 時(shí),結(jié)果相反,SageMaker 的執(zhí)行速度比 Colab Pro High RAM 慢 95.9%, 訓(xùn)練循環(huán)比 Colab Pro 慢 93.8%。

XSE-ResNet50 Imagenette 簡(jiǎn)單分析器結(jié)果

RoBERTa

混合精度訓(xùn)練 RoBERTa, SageMaker 進(jìn)一步領(lǐng)先 Colab Pro,執(zhí)行速度提高了 29.1%。SageMaker 在訓(xùn)練循環(huán)期間比 Colab Pro 快 32.1%,并且在所有操作中 SageMaker 都更快,除了在計(jì)算損失時(shí),SageMaker 比 Colab Pro 慢 66.7%。

在單精度下,SageMaker 訓(xùn)練的結(jié)果再次翻轉(zhuǎn),總體上 SageMaker 比 Colab Pro 慢 72.2%。訓(xùn)練循環(huán)比 Colab Pro 慢 67.9%。當(dāng)以單精度訓(xùn)練 XSE-ResNet50 時(shí),由于向后傳遞和優(yōu)化器步驟,SageMaker 比 Colab Pro 慢了 83.0%,而 SageMaker 執(zhí)行所有其他操作的速度快了 27.7%。

奇怪的是,Colab Pro High RAM 實(shí)例的訓(xùn)練速度比普通 Colab Pro 實(shí)例慢,盡管前者有更多的 CPU 核和 CPU RAM 以及相同的 GPU。然而,它們之間的差異并不大。

表 3:RoBERTa 基準(zhǔn)結(jié)果

XResNet18

對(duì)于 XResNet18 基準(zhǔn)測(cè)試,了解繪制動(dòng)作測(cè)量內(nèi)容很關(guān)鍵。XResNet18 基準(zhǔn)測(cè)試是從數(shù)據(jù)加載器繪制 batch 之前到開始 batch 操作之間的時(shí)間。數(shù)據(jù)加載器的 prefetch_factor 設(shè)置為默認(rèn)值 2,這意味著研究者嘗試在訓(xùn)練循環(huán)調(diào)用它們之前提前加載兩個(gè) batch。其中包括前向和后向傳遞、損失和優(yōu)化器 step 和零梯度操作。

繪制動(dòng)作越低,實(shí)例 CPU 就越能滿足需求。

這里的結(jié)果符合預(yù)期,更多的 CPU 核意味著更少的繪制時(shí)間,并且在相同的核數(shù)下,較新的 CPU 的性能優(yōu)于較舊的 CPU。

表 4:XResNet18 基準(zhǔn)結(jié)果

Colab Tesla K80

由于免費(fèi) Colab 實(shí)例的 Tesla K80 的 RAM 比其他 GPU 少四分之一,因此我將混合精度 batch 大小也減少了四分之一。此外,我沒有運(yùn)行任何單精度測(cè)試。

我運(yùn)行了兩個(gè) epoch 的 Imagenette 基準(zhǔn)測(cè)試,并將 IMDB 數(shù)據(jù)集從 20% 的樣本減少到 10% 的樣本,并將訓(xùn)練長度減少到一個(gè) epoch。

Colab K80 在半數(shù) Imagenette epoch 上進(jìn)行訓(xùn)練花費(fèi)的時(shí)間大約是 Colab Pro 實(shí)例的兩倍。與 Colab P100 相比,在 Colab K80 上進(jìn)行等效的 IMDB 訓(xùn)練時(shí)間要長 3 倍。如果可能的話,應(yīng)避免使用 K80 對(duì)除小型模型以外的任何其他模型進(jìn)行訓(xùn)練。

XResNet & RoBERTa Colab K80 基準(zhǔn)結(jié)果

總的來說,我認(rèn)為 SageMaker Studio Lab 是免費(fèi)計(jì)算資源領(lǐng)域一個(gè)強(qiáng)有力的競(jìng)爭(zhēng)對(duì)手。特別是對(duì)于一直在 K80 上使用免費(fèi) Colab 和訓(xùn)練模型的用戶來說,SageMaker Studio Lab 將給你全面的升級(jí)體驗(yàn)。

SageMaker Studio Lab 可以作為機(jī)器學(xué)習(xí)工作流程的有用補(bǔ)充和 Kaggle 或 Colab Pro 的增強(qiáng)版?;旌暇鹊挠?xùn)練速度比 Kaggle 或 Colab Pro 快了 17.4% 到 32.1%,這意味著迭代時(shí)的等待時(shí)間更少。

此外,更快的訓(xùn)練速度和持久存儲(chǔ)讓 SageMaker Studio Lab 對(duì)于深度學(xué)習(xí)初學(xué)者也非常友好,因?yàn)檫@意味著環(huán)境只需要設(shè)置一次,讓學(xué)生能夠?qū)W⒂趯W(xué)習(xí)而不是持續(xù)的包管理。

原文鏈接:https://benjaminwarner.dev/2021/12/08/testing-amazon-sagemaker-studio-lab

【本文是51CTO專欄機(jī)構(gòu)“機(jī)器之心”的原創(chuàng)譯文,微信公眾號(hào)“機(jī)器之心( id: almosthuman2014)”】  

戳這里,看該作者更多好文 

責(zé)任編輯:趙寧寧 來源: 51CTO專欄
相關(guān)推薦

2010-04-12 08:43:45

Visual Stud

2018-08-22 12:35:01

Amazon Sage機(jī)器學(xué)習(xí)

2009-07-14 17:58:55

Jython性能

2010-07-27 14:36:31

Flex Array

2021-03-25 10:14:10

自動(dòng)化運(yùn)營人工智能AIOps

2020-06-18 14:39:42

MongoDB數(shù)據(jù)數(shù)據(jù)庫

2015-09-24 18:25:23

RxSwift

2016-09-22 15:50:38

JavascriptRedux源碼解析

2018-09-06 14:29:13

容器主機(jī)存儲(chǔ)

2023-04-27 08:35:20

Webpack 4性能優(yōu)化

2023-05-31 08:19:23

Webpack4Webpack 5

2018-11-07 09:00:00

機(jī)器學(xué)習(xí)模型Amazon Sage

2023-10-17 08:00:00

人工智能ColabMusicGen

2020-08-18 10:16:35

Python數(shù)據(jù)浮點(diǎn)數(shù)

2009-07-14 18:45:26

Jython開發(fā)特性

2010-02-22 10:37:31

CCIE R&S La

2020-06-01 13:52:15

AWSSageMaker

2015-04-28 14:55:01

HadoopSpark技術(shù)

2023-09-06 08:14:34

性能優(yōu)化模式

2009-11-23 16:17:02

Visual Stud
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)