sme.it Rozhovor Martin Spano: jedine umelá inteligencia dokáže mamutie objemy dát zmysluplne analyzovať a...

Martin Spano: jedine umelá inteligencia dokáže mamutie objemy dát zmysluplne analyzovať a využívať

Martin Spano je autorom bestselleru na amazon.com The Artificial Intelligence in a Nutshell a programátorom, ktorý má vášeň pre umelú inteligienciu. 
S Martinom si už nejaký čas píšem, žeby sme pre robime.it pripravili rozhovor. Napadlo náš, že by sme sa mohli viac venovať programovaniu AI a témam ako machine learning a deep learning. Martin je ochotný odpovedať na vaše otázky, napíšte ich do komentára. 
 
Aký je rozdiel medzi machine learning, deep learning, neural networks? Čo si môžeme pod tým predstaviť?
 
Umelá inteligencia je oblasť štúdia v informatike, zaoeberajúca sa, zjednodušene povedané, reprodukciou ľudskej inteligencie. Spôsob, ako umelú inteligenciu vytvárame, sa volá machine learning a najrozšírenejším algoritmov machine learning je deep learning, ktorý funguje pomocou neural network.
 
Počul som, že v princípe netušíme ako neural networks fungujú, je to pravda? 
 
Princíp fungovania neurónových sietí sme odpozorovali z predpokladaného fungovania mozgu. Tvoria ju umelé neuróny prepojené spojeniami. V prípade deep learning má niekoľko vrstiev – vstupnú a výstupnú vrstvu, medzi ktorými sa nachádzajú skryté vrstvy. Vstup prichádza vstupnou vrstvou, výstup každej skrytej vrstvy smeruje do vstupu priľahlej skrytej vrstvy až po výstupnú vrstvu, ktorá povie výsledok. Ako príklad môžeme použiť neuronovú sieť na detekciu psa na obrázku. Vstupná vrstva dostane obrázok, počiatočné vrstvy pracujú s jednotlivými pixelmi, neskoršie s tvarmi, a tak sa zvyšuje úroveň abstrakcie až napokon výstupná vrstva povie či sa na obrázky nachádza pes. To, čo častokrát nevieme je, prečo sa neurónová vrstva rozhodla tak ako sa rozhodla, keďže si sama vytvára vnútornú štruktúru, na základe ktorej sa rozhoduje.
 
Vedel by si viac objasniť, čo je to tá vnútorná štruktúra? Je to niečo ako jej skúsenosť, ktorú si pamätá?
 
Pravdupovediac nie, pretože skutočné vnútorné fungovanie neurálnej siete nie je ľahké objasniť. Existujú však prístupy, ktoré sa v prípade chybného fungovania snažia odhaliť dôvod chyby. Známy je príklad neurálnej siete na rozoznanie psa od vlka, kedy však v jednom prípade s nevysvetliteľných príčin sieť detekovala vlka. Spätným hľadaním chyby sa zistilo, že to bolo nie kvôli črtám zvieraťa, ale prostrediu, v ktorom sa nachádzalo – za psom sa nachádzal sneh, pri čom sa sneh v trénovacích dátach vyskytoval vždy iba pri vlkoch.
 
Čo to je TensorFlow? Sú aj ine platformy na vývoj AI?
 
Tensorflow je najobľúbenejší framework pre deep learning. Google ho vytvoril pre potreby strojového učenia vo svojich produktoch ako prekladač či vyhľadávač, v roku 2015 ho open-sourcoval. Beží na osobnom počítači alebo na Google Cloude. Na jeho používanie sa preferovane používa Python, ale má podporu aj pre ostatné jazyky. Významné technologické firmy nasledovali Google a vydali vlastné deep learning frameworky, Facebook vydal Cafe2, Microsoft ML.NET. K tomu sa pridávajú rôzne nezávislé frameworky ako Keras, Scikit-Learn, PyTorch, Deeplearning4j. Každé má svoje za a proti, ale keby som mal vybrať jedno, s ktorým začať tak by to bol práve TensorFlow kvôli jeho rozšírenosti a developerskej podpore.
Chcem programovať AI, ako a kde začať?
 
Pozrime sa na požiadavky pre prácu v DeepMinde, podľa môjho názor najpokročilejšej spoločnosti v oblasti umelej inteligencie na svete. Vyžadované je bakalárske vzdelanie v informatike alebo príbuzných vedách, teoretické znalosti informatiky a matematiky a pokročilá znalosť Pythonu. Ak ste teda informatici, matematici alebo fyzici, ste vo výhode. Ale machine learning software developerom sa môžete stať aj poctivým samoštúdium, nakoľko kurzy z každej relevatnej oblasti sú voľne dostupné. 
 
Odporučil by si nejaký konkrétný kurz, alebo zdroj?
 
Pripravujem 6-12 mesačné online curriculum, ktoré pripraví záujmemcov o strojové učenie na prácu v tejto oblasti. Ako zdroje budú použité voľne prístupné kurzy univerzít ako MIT prípadne inštruktážne YouTube videá. Curriculum bude pokrývať všetky potrebné časti a nebude iba pre technické publikum.
 
Aké sú požiadavky na AI programátora? 
 
Oproti klasikému programovaniu ide v princípe hlavne o zmenu paradigmatu, kedy namiesto klasického rozhodovacieho programovania (if-else) necháte neurálnu sieť rozhodnúť, čo je relevantné. Vyžadujú sa okrem programátorských zručností (preferovane Python) dobré znalosti relevatnej matematiky ako lineárna algebra, kalkulus, kombinatorika a štatistika.
 
Prečo je hlavným programovacím jazykom AI python? 
 
Python je univerzálny, viete ním naprogramovať jednoduchý skript, ktorý vám zautomazuje rutinnú činnosť na počítači, cez web, aplikáciu, až po autonómne auto. V porovnaní s ostatnými univerzálnymi programovacími jazykmi je pomerne jednoduchý na osvojenie, a to aj pre neprogramátorov. Jeho knižnice vytvárajú ekosystém schopný rýchlo implementovať akýkoľvek projekt. Medzi takéto knižnice patria aj tie uľahčujúce prácu so strojovým učením ako Pandas pre manipuláciu big data, Keras pre vývoj neurónových sietí, či Scikit-learn pre klacifikáciu a regresiu.
Python je teda akoby “vreckovým nožíkom” strojového učenia. Ja som odchovaný na Jave, ale kvôli tomu, že som z klasického programovania prešiel na strojové učenie programujem teraz už iba výhradne v Pythone a to aj klasické projekty.
 
Ktoré firmy sa najviac venujú vývoju AI a s akým cieľom?
 
Prvá päťka najväčších firiem na svete podľa trhovej hodnoty – Microsoft, Amazon, Apple, Alphabet a Facebook zhodne vyhlasujú, že vo svojich produktoch značne využívajú umelú inteligenciu. Všetky tieto firmy poskytujú službu generujúce veľké obiemy dát zvaných big data, ktoré by bola škoda nechať len tak ľadom. Avšak jedine umelá inteligencia dokáže tieto mamutie objemy dát zmysluplne analyzovať a využívať. Z toho dôvodu je všadeprítomne nasadzovaná.
 
 
Ďakujem za rozhovor.
 
Svoje otázky na Martina píšte do komentára. Odpovie na ne v ďalšom rozhovore. 

Dobrý článok? Chceš dostávať ďalšie?

Už viac ako 6 200 ITečkárov dostáva správy e-mailom. Nemusíš sa báť, nie každé ráno. Len občasne.

Súhlasím so spracovaním mojich osobných údajov. ( Viac informácií. )

Tvoj email neposkytneme 3tím stranám. Posielame naňho len informácie z robime.it. Kedykoľvek sa môžeš odhlásiť.

Senior SAP XI/PI/PO Konzultant

Základné informáciePozícia: Senior SAP XI/PI/PO Konzultant Pracovný pomer:  TPP, Živnosť Miesto práce: 95% Homeoffice - 5% on-site - Bratislava/nemecko Plat: od 2500...

Junior/Senior SAP ABAP Developer

Základné informáciePozícia: Junior/Senior SAP ABAP Developer/Konzultant Pracovný pomer:  TPP, Kontrakt Miesto práce: 95% Homeoffice - 5% On-site - Bratislava/Nemecko Plat: Junior od 1.000...

Senior SAP Basis Consultant / 95% Home-Office – 5% on-site

Základné informáciePozícia: SAP Basis Consultant Pracovný pomer:  TPP, Živnosť Miesto práce: 95% Home-Office - 5% on-site Btaislava/Nemecko Plat: od 2.800+ EUR/Brutto/mesačne Jazyk: Nemecký...

DBA Admin / 95% Home-Office – 5% on-site

Základné informáciePozícia: DBA Admin Pracovný pomer:  TPP, Živnosť Miesto práce: 95% Home-Office - 5% on-site - Bratislava/Nemecko Plat: od 2400 - 4000+...

Java Developer / Energerické odvetie / Košice

PRÁCA Pozícia: Java developer Pracovný pomer: TPP, Kontrakt Miesto práce: Košice, on-site Plat: Medior od 1.500 EUR Senior od 2.200 EUR FIRMA Odvetvie: Energetika Tím: 3-5 ľudí Firma: 70-80...

Jurior/Senior CRM ABAP Developer

Základné informáciePozícia:  CRM ABAP Developer Pracovný pomer:  TPP Miesto práce: Bratislava Plat: od 2000+ EUR/mesačneČo by si mal vedieť:aspoň 3-ročné skúsenosti...

SCCM Specialist

Základné informáciePozícia: SCCM Specialist Pracovný pomer:  TPP, Živnosť Miesto práce: 95% Home-Office - 5% on-site Bratislava/Nemecko Plat: Medior od 2400+ EUR/Brutto/mesačne Senior od 4000+...

Slovensko.digital: Rezort kultúry podľa ÚVO nepostupoval v súlade so zákonom

slovensko.digitalÚrad pre verejné obstarávanie vykonal kontrolu dodatkov zmluvy na telekomunikačné služby, ktoré...

Scratch Match 2020 priviedol k záujmu o IT ďalšie nádejné programátorky

Vo štvrtok 28. mája 2020 porota celoslovenskej súťaže Scratch Match 2020 už po štvrtý raz ocenila nádejné...

Čítaj ďalej:

Dobrý článok? Chceš dostávať ďalšie?

Už viac ako 6 200 ITečkárov dostáva správy e-mailom. Nemusíš sa báť, nie každé ráno. Len občasne.

Súhlasím so spracovaním mojich osobných údajov. ( Viac informácií. )

Tvoj email neposkytneme 3tím stranám. Posielame naňho len informácie z robime.it. Kedykoľvek sa môžeš odhlásiť.