Q:
Jak může být kontejnerizace dobrou volbou pro projektové prostředí strojového učení?
A:Některé společnosti směřují k kontejnerizaci pro projekty strojového učení na základě některých výhod, které nastavení kontejnerů nabízejí, pokud jde o platformy a softwarové prostředí.
Strojové učení je složité - samotné algoritmy provádějí na datech spoustu velmi podrobných a komplikovaných akcí. Návrh hodnoty je však v některých ohledech docela jednoduchý - algoritmy strojového učení pracují na datech přicházejících z úložných prostředí.
Zdarma ke stažení: Strojové učení a proč to záleží |
Použití kontejnerů zahrnuje to, jak inženýři vkládají data do prostředí strojového učení a jak fungují algoritmy.
Inženýři mohou virtualizaci kontejnerů použít buď k uložení dat, nebo k zavedení kódu, který spouští algoritmy. Ačkoli kontejnery mohou být užitečné pro data, jejich hlavní výhoda pravděpodobně přichází v jejich použití k uložení kódu algoritmu.
Architektury kontejnerů obsahují samostatné aplikace a kódové základny. Každý kontejner má vlastní klon operačního systému a získává úplné operační prostředí pro sadu funkcí aplikace nebo kódu, která v něm žije.
Výsledkem je, že jednotlivé aplikace, mikroskopické služby nebo kódové základny, které jsou v každém kontejneru, mohou být nasazeny velmi univerzálním způsobem. Mohou být nasazeny na různých platformách a v různých prostředích.
Předpokládejme, že se pokoušíte vylepšit projekt strojového učení, ve kterém různé algoritmy musí pracovat na různých kusech dat iteračním způsobem. Pokud vás unaví řešení problémů napříč platformami nebo problémů závislostí nebo situací, kdy je nasazení holých kovů obtížné, řešením mohou být kontejnery.
Kontejnery v zásadě poskytují způsob, jak hostit kód. Odborníci hovoří o nasazení kontejnerů proti uloženým datům, aby dosáhli dobrých výsledků.
„(Aplikace) lze kombinovat a přizpůsobovat na libovolném počtu platforem, aniž by bylo zapotřebí prakticky žádné portování ani testování, “ píše David Linthicum v článku TechBeacon, který vysvětluje hodnotu kontejnerů pro projekty strojového učení, „protože existují v kontejnerech, mohou pracovat ve vysoce distribuovaném prostředí a tyto kontejnery můžete umístit v blízkosti dat, která aplikace analyzují. “
Linthicum dále hovoří o odhalení služeb strojového učení jako mikroservisů. To umožňuje externím aplikacím - založeným na kontejnerech nebo ne - využívat tyto služby kdykoli, aniž by bylo nutné přesouvat kód uvnitř aplikace.
Ve velmi základním smyslu je nasazení kontejnerů především o přizpůsobení funkčnosti programu strojového učení - odstranění sil a zbytečných spojení - a opět závislostí - které mohou projekt ochromit. V případě štíhlého, průměrného projektu strojového učení, pokud jsou jednotlivé části algoritmů nebo aplikací nebo funkcí umístěny uvnitř kontejnerů, je snadné mikromanažovat tyto samostatné kusy a podle toho vytvářet složité projekty produktů strojového učení.