AWS vs Paperspace vs FloydHub: Výběr partnera pro cloudové GPU

Díky hlubokému učení, které je dnes známkou téměř ve všech průmyslových odvětvích, došlo k nebývalému nárůstu poptávky a zájmu o role jako „Data Scientist“, „ML / DL engineer“, „AI Scientist“ atd. Stále více studentů, čerstvých absolventů a profesionálů z oboru si uvědomuje, že je třeba držet krok s těmito novými technologiemi a přijímat kurzy, certifikace a pracovní místa v těchto oborech. Jakmile se rozhodnete skočit do domény, první věcí, kterou musíte dostat, je vysoký výpočetní výkon. Tam přicházejí GPU.

Budování vlastního hlubokého učení je však drahá záležitost. Faktor nákladů na rychlý a výkonný grafický procesor, procesor, SSD, kompatibilní základní desku a napájení, účty za klimatizaci, údržbu a poškození součástí. Kromě toho riskujete, že v tomto rychle se rozvíjejícím odvětví zaostává na nejnovějším hardwaru.

Kromě toho nestačí jen montáž součástí. Než začnete trénovat svůj první model, musíte nastavit všechny potřebné knihovny a kompatibilní ovladače. Lidé stále jdou touto cestou, a pokud plánujete rozsáhlé využívání hlubokého učení (> 150 hodin / měsíc), může být správným krokem budování vlastní hluboké učebny.

Lepší a levnější alternativou je použití cloudových GPU serverů poskytovaných společnostmi jako Amazon, Google, Microsoft a dalšími, zejména pokud se právě vcházíte do této domény a plánujete využití výpočetní síly pro učení a experimentování. Posledních 4–5 měsíců používám AWS, Paperspace a FloydHub. Google Cloud Platform a Microsoft Azure byly podobné AWS ve svých cenách a nabídkách, proto jsem se držel výše zmíněných tří.

AWS: Nejoblíbenější poskytovatel cloudových služeb. Nabízí bezpečné a škálovatelné instance GPU a další integrace AI, jako jsou Polly, Rekognition, Lex a AWS Machine Learning (k dispozici v některých regionech).

Paperspace: Cloud VM s podporou GPU pro potřeby hraní, navrhování a programování (ML / DL). Nabízí nejnovější grafické karty NVIDIA spolu s předinstalovanými balíčky a několika rámci DL za konkurenceschopné ceny.

FloydHub: FloydHub, prodávaný jako „Heroku for DL“, podporuje spolupráci na otevřených zdrojích zavedením veřejných projektů a datových sad. Má vlastní CLI pro tréninkové modely využívající Caffe, PyTorch, Chainer, MxNet, TF, Keras a další.

Vyberte si p2.xlarge instanci s elastickým objemem IP a 30 GB EBS (součást Free Tier) na AWS, Ubuntu ML-in-a-box GPU + VM s 50 GB SSD na Paperspace a plánu vědců na základních datech bez jakýchkoli Powerupů na FloydHubu.

Porovnání mezi těmito třemi může být rozsáhlé, přičemž každá z nich nabízí jedinečné výhody. Budu ji však omezovat na šest klíčových aspektů, které by byly nejvhodnější pro začátečníky v této oblasti nebo někoho, kdo plánuje tyto platformy použít pro malé hobby projekty.

[AKTUALIZACE | Květen 2018]: Tento příspěvek je nyní starší než 6 měsíců. V této éře neustále se měnící technologie s upgradem hardwaru / softwaru se jakékoli srovnání mezi různými technologickými platformami rychle zastaralo. Přidal jsem tedy úryvky sekcí UPDATE na relevantní místa tohoto příspěvku a na závěr je shrnout všechny. Aktualizace by však v žádném případě neměly být považovány za vyčerpávající.

Snadné nastavení:

Nastavení plně nakonfigurované instance na AWS je obtížné, navzdory tomu, že na webu jsou rozsáhlé instalační návody. Pro konfiguraci svazku EBS, nastavení vyhrazených adres IP a instalaci požadovaných balíků, softwarových nástrojů a knihoven DL je třeba spustit příslušné skripty prostředí. Samozřejmě můžete použít některé z volně dostupných AMI pro Deep Learning. Nicméně stále vyžadují trochu úsilí.

Na druhou stranu jsou Paperspace a FloydHub hrdí na to, že svým uživatelům umožňují nastavení instancí během několika minut. U FloydHub musíte nainstalovat samostatné CLI. Poskytnuté pokyny jsou však zcela jasné a jakmile se přihlásíte, ocitnete se vítáni v mnoha různých prostředích DL. Instalace dalších balíčků také není příliš obtížná. Také v Paperspace můžete svou instanci spustit několika kliknutími, i když některé další balíčky a rámce mohou vyžadovat ruční instalaci, aby bylo dosaženo dokonalého prostředí.

Uživatelská zkušenost :

Nahrávání / stahování datových sad je největším bodem bolesti při používání cloudových služeb GPU. S AWS lze FileZilla Client použít k přenosu souborů. Používání příkazů jako curl a wget z terminálu nefunguje vždy a na jiné hackery s otevřeným zdrojovým kódem je třeba se spolehnout. AWS však umožňuje snadné stahování / nahrávání dat pro soutěže Kaggle prostřednictvím kaggle-cli. Paperspace poskytuje vláknový internet 1Gbps a webový prohlížeč. V současné době také poskytuje funkci přetahování pro počítače se systémem Windows (již brzy pro Linux) pro přímý přenos souborů z vašeho místního počítače do virtuálního počítače. Při používání FloydHubu je třeba datovou sadu stáhnout lokálně a poté ji nahrát na jejich účet. Kód a data musí být ve vašem lokálním systému uchovávány odděleně, protože při každém spuštění skriptu se nahraje celý obsah složky.

Paperspace a FloydHub jsou novými účastníky bloku a zaostávají za AWS, pokud jde o podporu komunit s otevřeným zdrojovým kódem, dostupnost výukových programů a video experimentů. Jejich oficiální dokumentace a příklady jsou však poměrně komplexní.

Co je třeba poznamenat: Floyd CLI zabere trochu času, než si na to zvykne. Spousta procesů se liší od běžného použití terminálů nebo stolních počítačů. Proto je dobré nábožensky projít dokumentaci FloydHub a časté dotazy. Pokud jste uživatelem Paperspace daleko od USA (východní Evropa / Asie), očekávejte při používání desktopového prostředí určitou latenci.

Nabízený hardware / software:

AWS a FloydHub používají Tesla K80 GPU (12 GB vRAM) a 61 GB RAM, zatímco Paperspace má možnosti pro Quadro M4000 (8 GB vRAM), pár ze série Pascal (16–24 GB vRAM) a dokonce i nejnovější řadu Volta, Tesla V100 (16 GB vRAM) ), každá s 30 GB RAM. Pro hrubý odhad jsou GPU řady Pascal 3x rychlejší než K80s, zatímco V100 je 6x rychlejší než K80s. AWS a Paperspace také používají instance SSD a vyhrazené GPU, zatímco FloydHub nabízí výběr mezi předběžnými a vyhrazenými GPU.

Obvyklý způsob spouštění skriptů v těchto službách je prostřednictvím notebooků Jupyter nebo přímo pomocí terminálu. Paperspace, díky poskytování desktopového prostředí, také umožňuje IDE jako Spyder a další softwarové nástroje. Přítomnost stolního počítače Linux je velmi výhodná.

[AKTUALIZACE | Květen 2018]: Všichni tři z nich (AWS / Paperspace / FloydHub) se nyní upgradovali na GPID NVIDIA Volta, čímž nyní umožňují superrychlé školení a odvozování. Pokud jde o software a rámce, AWS aktualizoval svůj Deep Learning AMI, který zahrnuje předinstalované rámce jako Chainer, TensorFlow, Keras, PyTorch. FloydHub již obsahuje nejnovější verze všech těchto rámců.

Výkon:

Jako srovnávací cvičení jsem porovnával trénink více modelů na všech třech platformách ve stejném prostředí (Keras + Theano na Jupyteru).
AWS - p2.xlarge (Tesla K80, 12 GB vRAM, 61 GB RAM)
Paperspace - GPU + VM (Quadro M4000, 8 GB vRAM, 30 GB RAM)
FloydHub - Tesla K80, 12 GB vRAM, 61 GB (odpovídá základnímu plánu)

Byly proškoleny dva modely - hluboký model CNN s datovým sadou Dropout on Fashion MNIST a jemně vyladěnou předem vyškolenou síť VGG16 na úkolu klasifikace obrázků potravin. Jejich výkon je uveden níže.

Výkon modelu na různých platformách (menší je lepší)

AWS p2.xlarge a Paperspace GPU + mají téměř stejný výkon s AWS těsně před sebou. Pokud použijeme verze Pascalu na Paperspace, které jsou stále levnější než AWS, očekává se, že výkon modelu bude 3x tak rychlejší než AWS. Navzdory použití stejného hardwaru je FloydHub na ~ 0,75x AWS, pravděpodobně kvůli nižší rychlosti čtení disku.

[AKTUALIZACE | Květen 2018]: Toto je pravděpodobně nejzajímavější aktualizace. Při provádění stejných experimentů / skriptů, jaké byly zmíněny výše, jsem nedávno zjistil obrovské zlepšení tréninkového času na FloydHubu. Poslední čísla ukazují, že jsou na stejné úrovni jako AWS nebo Paperspace GPU + nebo dokonce lepší. Zdá se, že FloydHub vyřešil problémy s I / O a po upgradu na nejnovější verze TensorFlow, Keras a PyTorch se zdá, že pro tuto platformu udělal zázraky. Skript Fashion MNIST nyní trvá 8 s / epochu, zatímco předškolený VGG16 skript nyní trvá mnohem méně (~ 100 s / epocha). I když jsem nekontroloval, zda Paperspace příliš nepřinesl nějaké zlepšení, AWS rozhodně ne. Takže prozatím se FloydHub objevuje jako nejrychlejší ze všech tří.

Další funkce :

Paperspace i FloydHub nabízejí týmům vlastní plány. Funkce Floyd's asociované jako centrální sdílení datových sad / projektů, verzování různých běhů úloh pro snadnou reprodukovatelnost a podporu pro fast.ai a MOOCs Udacity usnadňují spolupráci a příznivou atmosféru otevřeného zdroje. Floyd také umožňuje souběžné provádění úloh. AWS nabízí instance s více GPU, zatímco FloydHub a Paperspace podporují pouze jednotlivé systémy GPU.

[AKTUALIZACE | Květen 2018]: AWS se zaměřuje více na postranní aplikace upřednostňující podnikové a produkční systémy, Paperspace a FloydHub však zavedly řadu nových funkcí, které zlepšují snadnost použití a snadný přístup GPU k široké veřejnosti. Některé z nich byly:
[FloydHub]: Slack integrace, zvýhodňující využití napříč týmy
[FloydHub]: uživatelské rozhraní pro správu úloh, řídicí panel metrik
[FloydHub]: Beta verze nového interaktivního prostředí (podobná VM v cloudu), nazvaná Workspace
[Paperspace]: Spolupráce jako oficiální partner pro rychlý kurz Jeremyho Howarda
[Paperspace]: Paperspace Gradient a API, spolu s jejich vlastním CLI, které jsou příslušnými nástroji pro efektivní provádění vašich úloh v cloudu a devkit pro automatizaci vašich VM / úloh (vhodné pro DevOps!)
Díky spolupráci Workspace, Gradient a fast.ai se FloydHub a Paperspace posunuly blíže k nabídce podobných funkcí.

Ceny:

Stanovení ceny je pravděpodobně nejdůležitějším kritériem výběru. V současné době je fakturace rozdělena na sekundu za AWS a FloydHub a za milisekundovou granularitu pro Paperspace.

AWS GPU instance začínají na 0,9 $ / h s 30 GB volného EBS objemu v rámci programu Free Tier. 100 GB SSD svazek + elastická IP bude stát dalších 13 $ / měsíc. AWS také poskytuje okamžité výskyty, které jsou mnohem levnější, ale vysoce citlivé na kolísání cen, a proto nejsou spolehlivou možností.

Paperspace nabízí GPU řady Maxwell za 0,4 $ / h a Pascal GPU od 0,65 $ / h. 100 GB SSD s veřejnou IP bude stát 7 $ / měsíc. K dispozici jsou také další služby.

Společnost FloydHub se nedávno přestěhovala z placeného modelu na přesně definované měsíční plány. Plán Data Data Scientist stojí 14 $ / měsíc za 10 hodin GPU a 100 GB úložiště. Další předvolitelné hodiny GPU lze zakoupit od 0,59 $ / h. Za vyhrazené instance GPU se účtuje příplatek.

[AKTUALIZACE | Květen 2018]: Cenová struktura FloydHubu se výrazně změnila, zatímco struktura AWS a Paperspace zůstává téměř stejná. Paperspace stále zůstává nejdostupnější možností.

Rozvinutí :

Na některou z nich jsem nezkoušel nasadit model. Floyd poskytuje jednorázový příkaz k nasazení modelu jako REST API. AWS má řadu přidružených služeb, které dále vylepšují prostředí nasazení aplikace. Aktualizuji se, jakmile je prozkoumám.

Shrnutí klíčových aspektů v níže uvedené tabulce.

Porovnání klíčových aspektů poskytovatelů služeb GPU na cloudu
[AKTUALIZACE | Květen 2018]: Ve výše uvedeném grafu není mnoho změn, kromě sekce Výkon, kde je FloydHub nyní nejrychlejší. Na přední straně hardwaru / softwaru jsou všechny tři na úrovni vázání.

Pokud jste některou z těchto služeb už dříve využili, podělte se o své zkušenosti. Pokud tak neučiníte, jděte na to hned teď. Bylo by hezké mít níže uvedené návrhy.