10 platforem AI pro vytvoření vaší moderní aplikace

Dnes, kdy už víme, že Terminátoři si nás nepřijdou podmanit, je na čase se s umělou inteligencí spřátelit a začít z ní těžit!

Oblast umělé inteligence (AI) a její nejpopulárnější odvětví, strojové učení (ML), byly dlouhou dobu zahaleny tajemstvím. Média nás bombardovala články, které předpovídaly nástup superinteligentních, nezávislých a zlých strojů, což mnoho lidí (včetně mě) dohnalo k zoufalství.

Ale co nám po tom všem humbuku a kouři zbylo? Technologie AI, která má k dokonalosti daleko, je plná trapných selhání a máme tu i omezeného, nefunkčního robota, který byl téměř násilím povýšen na občana. A abychom nezapomněli, nemáme ani slušný algoritmus pro jazykový překlad.

Pokud i dnes někdo tvrdí, že se blíží soudný den, odpovídám:

Co tedy AI, ML a všechna ta žargonová slova skutečně znamenají, pokud ne konec naší civilizace?

Znamenají nové metody programování počítačů k řešení problémů s klasifikací a predikcí. A co je nejlepší, existuje spousta služeb umělé inteligence, které můžete ihned začít využívat ve svých firemních aplikacích a čerpat z jejich nesmírných výhod.

Jaké možnosti tedy dnes platformy umělé inteligence firmám nabízejí?

To je výborná otázka!

Využití umělé inteligence je tak univerzální (alespoň teoreticky), že je obtížné specifikovat jediný účel, pro který byla vyvinuta. Je to podobné jako ptát se, k čemu byl vytvořen stůl a co se s ním dá dělat. Ano, původně byl určen pro účetnictví, ale dnes jeho využití daleko přesahuje tuto oblast. A účetnictví není jeho jedinou funkcí – lidé jej využívají k řízení projektů, jako seznam úkolů, databázi a mnoho dalšího.

Totéž platí i pro AI.

Obecně lze říci, že AI je užitečná pro úlohy, které jsou nejasně definované a spoléhají na učení se ze zkušeností. Ano, to je i to, co děláme my lidé, ale AI má výhodu v tom, že dokáže zpracovat obrovské množství dat v okamžiku a dospět k závěrům mnohem, mnohem rychleji. Některé typické aplikace AI zahrnují:

  • Detekce obličejů na fotografiích, videích atd.
  • Klasifikace a označování obrázků, například pro účely rodičovské kontroly
  • Převod řeči na text
  • Detekce objektů v médiích (např. auto, osoba atd.)
  • Předvídání pohybu cen akcií
  • Odhalování financování terorismu (mezi miliony transakcí denně)
  • Doporučovací systémy (nakupování, hudba, přátelé atd.)
  • Prolomování captch
  • Filtrování spamu
  • Detekce narušení sítě

Mohl bych pokračovat donekonečna, dokud by mi nedošly stránky (obrazně řečeno), ale myslím, že už chápete. Jedná se o problémy, které se lidé snažili řešit tradičními výpočetními metodami. Přesto jsou důležité, protože v podnikání i v reálném světě je po nich obrovská poptávka.

Pojďme se tedy bez dalších okolků podívat na seznam našich nejlepších platforem umělé inteligence a prozkoumat jejich nabídku.

Služby Amazon AI

Stejně jako Amazon likviduje konkurenci, je AWS jako platforma tak dominantní, že je těžké najít cokoli srovnatelného. Totéž platí i pro služby Amazon AI, které nabízejí spoustu neuvěřitelně užitečných nástrojů umělé inteligence.

Zde je několik pozoruhodných služeb, které AWS nabízí:

Amazon Comprehend: Umožňuje vám porozumět obrovským objemům nestrukturovaných textových dat. Můžete jej například použít k analýze stávajících chatů zákaznické podpory a zjistit, jak se v čase měnila úroveň spokojenosti, jaké jsou hlavní obavy zákazníků, jaká klíčová slova se nejčastěji používají atd.

Amazon Forecast: Služba, která vám umožňuje využít stávající data časových řad a převést je na přesné předpovědi do budoucna bez nutnosti konfigurace. Pokud vás zajímají data časových řad, doporučuji vám přečíst si můj nedávný článek (hledejte databázi s názvem Timescale na konci článku).

Amazon Lex: Vytvářejte konverzační rozhraní (textové a/nebo vizuální) pro své aplikace. V zákulisí běží trénované modely strojového učení od Amazonu, které dekódují záměr a za běhu převádějí řeč na text.

Amazon Personalize: Jednoduchá služba bez nutnosti infrastruktury pro vytváření doporučení pro vaše zákazníky nebo pro vás! Nahrajte data z e-commerce nebo jakákoli jiná data a získávejte vysoce přesné a relevantní návrhy. Samozřejmě, čím větší datový soubor máte, tím budou doporučení lepší.

Amazon má k dispozici mnohem více služeb umělé inteligence a jejich prozkoumáváním byste mohli strávit prakticky celý den. Nicméně je to činnost, kterou vám vřele doporučuji! 🙂

Poznámka: Souhrn všech těchto služeb v dokumentaci AWS se hledá těžko, ale pokud přejdete na https://aws.amazon.com/machine-learning, najdete je v rozbalovacím seznamu v části „Služby AI“.

TensorFlow

TensorFlow je knihovna (a zároveň platforma) vytvořená týmem Google Brain. Jedná se o implementaci subdomény ML nazvané Deep Learning Neural Networks; jinými slovy, TensorFlow představuje přístup společnosti Google k dosažení strojového učení pomocí neuronových sítí s využitím techniky hlubokého učení.

Samozřejmě, TensorFlow není jediný způsob, jak používat neuronové sítě – existuje spousta dalších knihoven, z nichž každá má své výhody a nevýhody.

Obecně vám TensorFlow nabízí funkce strojového učení pro mnoho různých programovacích prostředí. Základní platforma je poměrně vizuální a spoléhá se většinou na grafy a vizualizace dat. I když nejste programátor, s trochou snahy můžete s TensorFlow dosáhnout dobrých výsledků.

Historicky se TensorFlow zaměřoval na „demokratizaci“ strojového učení. Podle mých informací to byla první platforma, která učinila ML tak jednoduchým, vizuálním a přístupným. Díky tomu se používání ML rozšířilo a lidé mohli snadno trénovat modely.

Nejvýznamnějším prodejním argumentem TensorFlow je Keras, což je knihovna pro efektivní programovou práci s neuronovými sítěmi. Zde je ukázka, jak snadné je vytvořit jednoduchou, plně propojenou síť (perceptron):

model = tf.keras.Sequential()
# Adds a densely-connected layer with 64 units to the model:
model.add(layers.Dense(64, activation='relu'))
# Add another:
model.add(layers.Dense(64, activation='relu'))
# Add a softmax layer with 10 output units:
model.add(layers.Dense(10, activation='softmax'))

Samozřejmě je třeba provést i další konfiguraci, školení atd., ale i ty jsou stejně jednoduché.

Je těžké najít na TensorFlow chybu, vzhledem k tomu, že přenesl ML do JavaScriptu, mobilních zařízení a dokonce i do řešení IoT. Nicméně, z pohledu puristů se stále jedná o „méně“ platformu, se kterou si může hrát každý. Buďte tedy připraveni na určitý odpor, až budete stoupat po žebříčku dovedností a setkávat se s „osvícenějšími“ dušemi. 🙂

Pokud jste nováček, podívejte se na tento úvodní online kurz TensorFlow.

Poznámka: Některé kritiky TensorFlow uváděly, že nemůže používat GPU, což už není pravda. Dnes TensorFlow funguje nejen s GPU, ale Google vyvinul i svůj vlastní specializovaný hardware s názvem TPU (TensorFlow Processing Unit), který je dostupný jako cloudová služba.

Služby Google AI

Stejně jako Amazon, má i Google sadu cloudových služeb zaměřených na AI. Nebudu zde vypisovat všechny služby, protože jsou velmi podobné nabídkám Amazonu. Zde je snímek obrazovky toho, co mohou vývojáři sestavit, pokud mají zájem:

Obecně platí, že existují dva způsoby, jak můžete využívat služby umělé inteligence od Google. Prvním je využití modelu, který již byl vyškolen společností Google, a začít ho používat ve svých produktech. Druhým je služba AutoML, která automatizuje několik přechodných fází strojového učení a pomáhá i běžným vývojářům s menšími znalostmi ML vytvářet a trénovat modely.

H2O

„2“ v H2O má být dolní index (jako v chemickém vzorci vody), ale je otravné to psát. Doufám, že lidem ze společnosti H2O to nebude vadit!

H2O je open-source platforma pro strojové učení, kterou využívají velké společnosti z žebříčku Fortune 500.

Hlavní myšlenkou je zpřístupnit špičkový výzkum AI široké veřejnosti, a ne aby zůstal v rukou společností s velkým kapitálem a vlivem. V rámci platformy H2O se nabízí několik produktů, jako například:

  • H2O: Základní platforma pro zkoumání a používání strojového učení.
  • Sparkling Water: Oficiální integrace s Apache Spark pro zpracování velkých datových souborů.
  • H2O4GPU: Verze platformy H2O akcelerovaná GPU.

H2O také vytváří řešení šitá na míru podnikům, mezi která patří:

  • Driverless AI: Ne, Driverless AI nemá nic společného se samořídícími auty! 🙂 Jedná se spíše o nabídku AutoML od Google – většina fází AI/ML je automatizovaná, což vede k jednodušším a rychlejším vývojovým nástrojům.
  • Placená podpora: Jako podnik nemůžete čekat, až nahlásíte problémy na GitHubu a doufat, že budou brzy vyřešeny. Pokud jsou čas peníze, nabízí H2O placenou podporu a poradenství pro velké společnosti.

Petuum

Společnost Petuum vyvíjí platformu Symphony, která má za cíl, aby mě umělá inteligence nenutila moc přemýšlet. Jinými slovy, pokud vás nebaví kódování nebo si nechcete pamatovat další knihovny a formáty, s platformou Symphony se budete cítit jako na dovolené v Alpách!

I když na platformě Symphony není nic „otevřeného“, její funkce stojí za to:

  • Uživatelské rozhraní s přetahováním
  • Snadné sestavování interaktivních datových kanálů
  • Spousta standardizovaných a modulárních stavebních bloků pro vytváření sofistikovanějších aplikací umělé inteligence
  • Programovací a API rozhraní, která jsou vizuálně srozumitelná, ale přesto dostatečně výkonná
  • Automatická optimalizace s GPU
  • Distribuovaná, vysoce škálovatelná platforma
  • Agregace dat z více zdrojů

Existuje spousta dalších funkcí, díky kterým budete mít pocit, že vstupní bariéra byla výrazně snížena. Vřele doporučuji!

Polyaxon

Největší výzvou v oblasti strojového učení a umělé inteligence není dnes nalézt vhodné knihovny a algoritmy (nebo dokonce studijní zdroje), ale zajistit kvalitní inženýrství, které je nutné pro řešení složitých systémů a obrovských datových toků.

I pro zkušené softwarové inženýry to může být příliš náročné. Pokud se tak cítíte i vy, platforma Polyaxon stojí za vyzkoušení.

Polyaxon není knihovna ani framework, ale komplexní řešení pro správu všech aspektů strojového učení, jako jsou:

  • Datová připojení a streamování
  • Hardwarová akcelerace
  • Kontejnerizace a orchestrace
  • Plánování, ukládání a zabezpečení
  • Pipelining, optimalizace, sledování atd.
  • Dashboarding, API, vizualizace atd.

Je do značné míry nezávislá na knihovnách a poskytovatelích, protože podporuje velké množství oblíbených (jak open-source, tak closed-source) řešení.

Samozřejmě, že stále musíte řešit nasazení a škálování na určité úrovni. Pokud se chcete vyhnout i tomu, nabízí Polyaxon řešení PaaS, které vám umožní elasticky využívat jejich infrastrukturu.

DataRobot

Zjednodušeně řečeno, DataRobot je řešení zaměřené na strojové učení pro podniky. Je plně vizuální a navržené tak, aby rychle porozumělo vašim datům a pomohlo vám s jejich obchodním využitím.

Rozhraní je intuitivní a elegantní, takže i netechnici se mohou snadno orientovat a získávat smysluplné poznatky.

DataRobot nemá obrovské množství funkcí, ale zaměřuje se na tradiční smysl pro data a poskytuje spolehlivé možnosti v oblasti:

  • Automatizovaného strojového učení
  • Regrese a klasifikace
  • Časových řad

Ve většině případů je to vše, co pro svůj podnik potřebujete. To znamená, že ve většině případů je DataRobot vše, co potřebujete. 🙂

NeuralDesigner

Když už mluvíme o snadno použitelných a výkonných platformách umělé inteligence, platforma NeuralDesigner si zaslouží zvláštní zmínku.

O NeuralDesigneru se toho nedá moc říci, ale je toho s ním hodně co dělat! Vzhledem k tomu, že neuronové sítě víceméně ovládly moderní metodologii strojového učení, má smysl pracovat s platformou, která se zaměřuje výhradně na neuronové sítě. Žádné zbytečné možnosti, žádné rozptylování – kvalita nad kvantitou.

NeuralDesigner vyniká v mnoha ohledech:

  • Není potřeba žádné programování. Vůbec.
  • Není potřeba žádné složité vytváření rozhraní. Vše je uspořádáno v logických, snadno pochopitelných a systematických krocích.
  • Sbírka nejpokročilejších a propracovaných algoritmů specifických pro neuronové sítě.
  • Paralelizace CPU a akcelerace GPU pro vysoký výkon.

Stojí za to se na podívat? Rozhodně!

Prevision.io

Pervision.io je platforma pro správu všech aspektů strojového učení, od zpracování dat až po nasazení ve velkém měřítku.

PredictionIO

Pokud jste vývojář, PredictionIO je neuvěřitelně užitečná platforma, kterou byste si měli prohlédnout. PredictionIO je platforma pro strojové učení, která dokáže zpracovat data z vaší aplikace (webové, mobilní nebo jiné) a rychle vytvářet předpovědi.

Nenechte se zmást názvem – PredictionIO není jen o předpovědích, ale podporuje celé spektrum strojového učení. Zde je několik skvělých důvodů, proč si ho zamilovat:

  • Podpora pro klasifikaci, regresi, doporučení, NLP a další.
  • Sestavení pro zvládání náročných pracovních úloh v prostředí Big Data.
  • Několik předpřipravených šablon pro ty, kteří spěchají.
  • Dodává se s Apache Spark, MLlib, HBase, Akka HTTP a Elasticsearch, aby vyhověl všem možným potřebám robustní a moderní aplikace.
  • Kombinované přijímání dat z více zdrojů, ať už v dávkovém nebo real-time režimu.
  • Nasazeno jako typická webová služba – snadné použití a dodávání.

U většiny webových projektů nechápu, proč by se PredictionIO nemělo vyplatit. Určitě ho vyzkoušejte!

Závěr

Dnes není nouze o frameworky nebo platformy pro AI a ML. Když jsem začal s rešerší pro tento článek, byl jsem ohromen nabídkou. Proto jsem se snažil tento seznam zúžit na ty jedinečné nebo zajímavé. Pokud si myslíte, že jsem něco důležitého opomenul, prosím, dejte mi vědět.

Na Coursera najdete některé z vynikajících kurzů strojového učení, takže pokud máte zájem se učit, podívejte se na ně.

Která platforma je tedy nejlepší? Bohužel neexistuje jednoznačná odpověď. Jedním z důvodů je, že většina těchto služeb je vázána na konkrétní technologický zásobník nebo ekosystém (většinou budování toho, čemu se říká „oplocená zahrada“). Druhým, důležitějším důvodem je, že technologie AI a ML byly komoditizovány a probíhá závod o to, kdo nabídne nejvíce funkcí za co nejnižší cenu. Žádný prodejce si nemůže dovolit nenabízet to, co nabízejí ostatní, a každá nová nabídka je zkopírována a dodána konkurencí téměř přes noc.

Vše tedy závisí na vašem technologickém zásobníku, vašich cílech, jak intuitivní se vám daná služba zdá, jak vnímáte společnosti, které za ní stojí, a tak dále.

Ale ať je to jakkoli, je zřejmé, že AI je konečně dostupná jako služba a bylo by velice nerozumné ji nevyužít. 🙂