IBM Cognitive Masters
Na konci ledna 2018 jsme se zúčastnili třídenního školení IBM Cognitive Masters. Toto školení se konalo v laboratořích IBM v americkém městě Poughkeepsie ve státe New York a byly v něm představeny nové i připravované technologie IBM v oblasti učení strojů a umělé inteligence.
Vedle teoretických prezentací byly představeny i živé ukázky nasazení IBM technologií, diskutovány úspěšné projekty z celého světa a především odkazy na informačních zdroje a školení, kterým se mohou zájemci o další vzdělávání věnovat dále. Některé z nich dále v textu uvedeme.
Ale nejprve si připravme IBM slovníček zkratek a jejich vysvětlení, během školení jich zaznělo opravdu hodně:-).
Slovníček pojmů:
AI — Artificial Intelligence (umělá inteligence)
ML — Machine learning (učení strojů)
DL — Deep Learning (s využitím neuronových sítí)
NN — Neural network (neuronové sítě)
CNN — Convolution Neural network (typ neuronové sítě)
RNN — Recurent Neural Network (typ neuronové sítě)
NVLink — rychlé rozhraní NVIDIA, POWER9
CAPI — rychlé I/O rozhraní POWER9
DLI — Deep Learning Impact
CWS — Conductor for Spark
DSX — Data Science Experience (prostředí pro datové vědce)
LCxxx/Minsky — označení serverů s POWER8 procesory pro DL
AC922/Newel — označení serverů s POWER9 procesory pro DL
HDP — Hortonworks Data Platform — ucelené řešení zpracování velkých dat (i pro platformu POWER)
LMS — Large Model Support — technologie pro škálování výkonu nad grafickými akcelerátory (spojování serverů)
ICP — IBM Cloud Private — platforma pro privátní cloud (využívá Docker a Kubernates).
Co je učení strojů a deep learning?
Hlavním motorem umělé inteligence jsou data a jejich analýza, při které je zásadní role datových inženýrů a vědců (data scientist). Ti nad daty stanovují jejich vlastnosti (features), následně data označují (labeling) a připravují pro další zpracování. Zjednodušeně řešeno, strojové učení je (podobně jako funguje lidský mozek) o rozhodování — ano/ne, klasifikace (třídění), rozpoznávání věcí, určování preferencí apod. a stejně jako lidský mozek záleží na datech, která jsou v době rozhodování k dispozici. V matematické řeči je toto rozhodování popsáno určitými funkcemi, podle kterých dojde k vlastními rozhodnutí. A stejně jako v případě lidského myšlení může být toto rozhodnutí zatíženo větší nebo menší mírou jistoty, že jsme se rozhodli správně.
V oblasti umělé inteligence byly definovány pojmy strojového učení (machine learning) a jeho podmnožina deep learning, která využívá pro učení a vlastní nasazení neuronové sítě. Dříve dostupné výpočetní prostředky byly schopné rozumně zpracovávat neuronové sítě s jednotkami skrytých vrstev. Dnes je možné nasadit neuronové sítě o desítkách skrytých vrstev, což umožňuje jejich praktické nasazení a výsledky jsou velmi přesné. Chybovost těchto sítí je dnes dokonce nižší než u testování stejných úloh na lidech. Při nasazení konvolučních neuronových sítí (CNN) pro rozpoznávání obrazu dnes počítače „vidí“ a analyzují obraz lépe (přesněji a rychleji) než lidé. Proto se při využití umělé inteligence v řízení automobilů předpokládá úbytek dopravních nehod, způsobených chybou řidiče.
IBM POWER AI
Hlavním produkt IBM pro oblast umělé inteligence představuje prostředí IBM POWER AI. Jedná se o výběr open source nástrojů, které IBM poskládala, propojila a vyladila pro svoji hardwarovou platformu POWER. Aktuálně jsou podporovány dva operační systémy Ubuntu a RedHat. IBM POWER AI je nabízeno v základní edici zdarma, volitelně je možné dokoupit podporu celého řešení a existuje také Enterprise edice, která vedle POWER AI zahrnuje i produkty Deep Learning Impact (DLI) nebo IBM Spectrum Conducor with Spark (CwS). IBM představila i roadmapu a další směřování těchto produktů.
Přístup IBM nám přišel velmi sympatický. Díky využití open source technologií a běžně dostupných prostředí (frameworků) je možné nasadit nejnovější technologie do provozu velmi rychle. Uživatelé tak mohou připravovat modely a data na svých noteboocích/PCčkách a v případě reálného využití je pak snadno přenést na výkonné prostředí a řešit tak mnohem větší problémy, nebo rychleji a přesněji. Jedná celá prezentace byla věnována dostupným ML frameworkům (TensorFlow, Caffee, Theano, Torch, ….), jejich vlastnostem, příkladům nasazení nebo oblíbenosti.
Následovala praktická ukázka nástroje IBM POWER AI Vision. Ten má pomoci zrychlit práci datových analytiků, popř. zpřístupnit datovou vědu (data science) i začátečníkům. V ukázce se zpracovávalo video z kamer na ulici. Ve fázi učení se definovali vlastnosti člověk a auto a na několika snímcích videa se obdélníčkem označili lidé a auta. Tento model se uložil a následně se video spustilo (s aplikovaným modelem) a na něm byly označováni lidé a auta, kteří se na videu objevili.
Další nástroje pro učení strojů
Výše v textu jsme nenápadně zmínili další produkty IBM — IBM Deep Learning Impact (DLI) a IBM Spectrum Conductor for Spark (CwS).
IBM Spectrum Conductor Deep Learning Impact (DLI) je add-on do software IBM Spectrum Conductoru a představuje kompletní platformu pro deep learning aplikace.
IBM Spectrum Conductor with Spark (CwS) je robustní platforma pro „předzpracování“ dat. Základem je open source řešení pro zpracování Apache Spark — dnes pravděpodobně nejvyužívanější open source platforma pro zpracování velkých dat — které je naimplementováno nad IBM technologií Spectrum Scale (GPFS). Díky IBM technologiím je zaručena škálovatelnost (výkon), dostupnost celého prostředí a paralelní přístup uživatelů nebo vědeckých skupin. Jedná se v podstatě o referenční architekturu pro zpracování velkých dat (big data) včetně referenčních konfigurací serverů.
Dalším IBM nástrojem pro datové vědce je Data Science Experience (DSX). Jedná se o soubor nástrojů (open source), poskládaných do jedné webové aplikace pro zjednodušení práce s daty. Vyzkoušeli jsme si práci s jednoduchou neuronovou sítí pro rozpoznávání psaných textů za využití databáze MNIST s již předpřipravenými daty pro učení. Ukázková úloha byla zpracována Jupyter notebooků, neuronové sítě byly modelovány v prostředí Tensorflow. Nástroj DSX je dostupný na https://datascience.ibm.com/.
V další prezentaci byly zmíněné hlavní výhody hardwarové platformy IBM AC922 s procesory IBM POWER9 a GPU akcelerátory NVIDIA V100. O nich pojednává samostatný článek.
Zajímavou částí byly odkazy na další informační zdroje a demo ukázky v oblasti IBM umělé inteligence a souvisejících technologií (Power AI, Watson). Mezi nejzajímavější patří on-line kurzy MOOC (https://cognitiveclass.ai/) určené pro datové vědce. Po jejich absolvování lze získat IBM Open Badge.
Děkujeme společnosti IBM za pozvánku na školení IBM Cognitive Masters. Nabyté znalosti a zkušenosti rádi předáme našim zákazníkům při testování POWER AI platformy a dalších IBM technologií na testovacím serveru IBM AC922, který máme od IBM zapůjčený.