Razmestite in uporabite platformo za globoko učenje z več okviri na Kubernetesu

Izvorno vozlišče: 1580762

Opis

Kot praktik poglobljenega učenja želite zanesljivost in razširljivost med orkestriranjem svojih nalog usposabljanja. Poleg tega bi želeli to narediti na dosleden način v več knjižnicah. S Fabric for Deep Learning (FfDL) na Kubernetesu lahko to dosežete tako, da uporabnikom omogočite, da izkoristijo knjižnice globokega učenja, kot so Caffe, Torch in TensorFlow v oblaku, na prožen način z minimalnim naporom. Platforma uporablja distribucijsko in orkestracijsko plast, ki omogoča učenje iz velike količine podatkov v razumnem času v računalniških vozliščih. Plast zagotavljanja virov omogoča prilagodljivo upravljanje opravil na heterogenih virih, kot so grafične procesne enote (GPU) in centralne procesne enote (CPE), v oblaku infrastrukture kot storitve (IaaS).

Pregled

Usposabljanje globokih nevronskih mrež, znanih kot globoko učenje (del metod strojnega učenja), je zelo zapleteno in računalniško intenzivno. Tipičen uporabnik globokega učenja je po nepotrebnem izpostavljen podrobnostim osnovne infrastrukture strojne in programske opreme, vključno s konfiguriranjem dragih strojev GPU, nameščanjem knjižnic globokega učenja in upravljanjem opravil med izvajanjem za obravnavo napak in obnovitev. Kljub enostavnosti pridobivanja strojne opreme iz oblakov IaaS in plačevanju po urah mora uporabnik še vedno upravljati te stroje, namestiti zahtevane knjižnice in zagotoviti odpornost delovnih mest usposabljanja za globoko učenje.

Tu je priložnost globokega učenja kot storitve. V tem vzorcu kode vam pokažemo, kako razmestiti Fabric za globoko učenje v Kubernetesu. Z uporabo izvornih arhitekturnih artefaktov v oblaku, kot so Kubernetes, mikrostoritve, grafikoni Helm in shranjevanje predmetov, vam pokažemo, kako razmestiti in uporabljati Fabric za globoko učenje. Ta Fabric zajema več mehanizmov za globoko učenje, kot so TensorFlow, Caffe in PyTorch. Združuje prilagodljivost, enostavnost uporabe in ekonomičnost storitve v oblaku z močjo globokega učenja. Ugotovili boste, da je enostaven za uporabo in z uporabo REST API-jev lahko prilagodite usposabljanje z različnimi viri glede na zahteve uporabnika ali proračun. Omogočite uporabnikom, da se osredotočijo na poglobljeno učenje in aplikacije namesto osredotočanja na napake.

Pretok

Pretok

  1. Program za uvajanje FfDL razmesti osnovo kode FfDL v gručo Kubernetes. Grozd Kubernetes je konfiguriran za uporabo grafičnih procesorjev, procesorjev ali obojega in ima dostop do shrambe objektov, združljive s S3. Če ni podano, se ustvari lokalno simuliran sklop S3.
  2. Ko je razporejen, podatkovni znanstvenik naloži podatke o usposabljanju modela v shrambo objektov, združljivo s S3. FfDL predvideva, da so podatki že v zahtevanem formatu, kot ga predpisujejo različni okviri globokega učenja.
  3. Uporabnik ustvari datoteko manifesta modela FfDL. Datoteka manifesta vsebuje različna polja, ki opisujejo model v FfDL, njegove informacije o shrambi objektov, njegove zahteve glede virov in več argumentov (vključno s hiperparametri), ki so potrebni za izvajanje modela med usposabljanjem in testiranjem. Uporabnik nato komunicira s FfDL z uporabo CLI/SDK ali uporabniškega vmesnika za razmestitev datoteke manifesta modela FfDL z datoteko definicije modela. Uporabnik zažene opravilo usposabljanja in spremlja njegov napredek.
  4. Uporabnik prenese usposobljeni model in povezane dnevnike, ko je opravilo usposabljanja končano.

navodila

Poiščite podrobne korake za ta vzorec v README. Koraki vam bodo pokazali, kako:

  1. Prevedite in kodirajte ter zgradite slike Docker.
  2. Namestite komponente FfDL z namestitvijo krmila.
  3. Zaženite skript za konfiguracijo Grafane za spremljanje FfDL.
  4. Pridobite svoje končne točke Grafana, FfDL Web UI in FfDL REST API.
  5. Zaženite nekaj preprostih opravil za usposabljanje konvolucijskega omrežnega modela z uporabo TensorFlow in Caffe.

Vir: https://developer.ibm.com/patterns/deploy-and-use-a-multi-framework-deep-learning-platform-on-kubernetes/

Časovni žig:

Več od IBM razvijalec