Ako energetický inžinier študoval neurónové siete a prehľad bezplatného kurzu „Udacity: Intro to TensorFlow for Deep Learning“

Celý svoj dospelý život som bol energetický nápoj (nie, teraz nehovoríme o nápoji s pochybnými vlastnosťami).

Svet informačných technológií ma nikdy nijako zvlášť nezaujímal a matice na papieri neviem takmer ani násobiť. A toto som nikdy nepotreboval, aby ste trochu pochopili špecifiká mojej práce, môžem sa podeliť o úžasný príbeh. Raz som poprosil kolegov, aby urobili prácu v excelovskej tabuľke, prešla polovica pracovného dňa, podišiel som k nim a oni sedeli a spočítavali údaje na kalkulačke, áno, na obyčajnej čiernej kalkulačke s tlačidlami. No a o akých neurónových sieťach sa po tomto môžeme baviť?... Nikdy som preto nemal špeciálne predpoklady ponoriť sa do sveta IT. Ale ako sa hovorí, „je dobre tam, kde nie sme“, moji priatelia mi bzučali v ušiach o rozšírenej realite, o neurónových sieťach, o programovacích jazykoch (hlavne o Pythone).

Slovami to vyzeralo veľmi jednoducho a ja som sa rozhodol, prečo nezvládnuť toto magické umenie, aby som ho uplatnil vo svojom odbore.

V tomto článku preskočím svoje pokusy o zvládnutie základov Pythonu a podelím sa s vami o moje dojmy z bezplatného kurzu TensorFlow od Udacity.

Ako energetický inžinier študoval neurónové siete a prehľad bezplatného kurzu „Udacity: Intro to TensorFlow for Deep Learning“

Úvod

Na začiatok stojí za zmienku, že po 11 rokoch v energetike, keď viete a môžete robiť všetko a dokonca aj trochu viac (podľa vašich povinností), učenie sa radikálne novým veciam - na jednej strane spôsobuje veľké nadšenie, ale na druhej strane - mení sa na fyzickú bolesť " ozubené kolesá v mojej hlave."

Stále úplne nerozumiem všetkým základným pojmom programovania a strojového učenia, takže by ste ma nemali súdiť príliš tvrdo. Dúfam, že môj článok bude zaujímavý a užitočný pre ľudí ako ja, ktorí sú ďaleko od vývoja softvéru.

Predtým, ako prejdem k prehľadu kurzu, poviem, že na jeho štúdium budete potrebovať aspoň minimálne znalosti jazyka Python. Môžete si prečítať pár kníh pre figuríny (aj ja som začal chodiť na kurz Stepic, ale ešte som ho úplne nezvládol).

Samotný kurz TensorFlow nebude obsahovať zložité konštrukcie, ale bude potrebné pochopiť, prečo sa importujú knižnice, ako je definovaná funkcia a prečo sa do nej niečo nahrádza.

Prečo TensorFlow a Udacity?

Hlavným cieľom môjho školenia bola túžba rozpoznávať fotografie elektroinštalačných prvkov pomocou neurónových sietí.

Vybral som si TensorFlow, pretože som o ňom počul od svojich priateľov. A ako som pochopil, tento kurz je veľmi populárny.

Snažil som sa začať učiť od úradníka tutoriál .

A potom som narazil na dva problémy.

  • Existuje veľa vzdelávacích materiálov a prichádzajú v rôznych variantoch. Bolo pre mňa veľmi ťažké vytvoriť si aspoň viac-menej úplný obraz o riešení problému s rozpoznávaním obrazu.
  • Väčšina článkov, ktoré potrebujem, nebola preložená do ruštiny. Náhodou som sa ako dieťa naučil po nemecky a teraz, ako mnoho sovietskych detí, neviem ani po nemecky, ani po anglicky. Samozrejme, celý svoj dospelý život som sa snažil ovládať angličtinu, ale dopadlo to asi ako na obrázku.

Ako energetický inžinier študoval neurónové siete a prehľad bezplatného kurzu „Udacity: Intro to TensorFlow for Deep Learning“

Po prehrabávaní sa na oficiálnej webovej stránke som našiel odporúčania, ktorými by som si mal prejsť jeden z dvoch online kurzov.

Ak tomu dobre rozumiem, kurz na Coursera bol zaplatený a kurz Udacity: Úvod do TensorFlow pre hlboké učenie bolo možné prejsť „zadarmo, teda za nič“.

Obsah kurzu

Kurz pozostáva z 9 lekcií.

Hneď prvá časť je úvodná, kde vám povedia, prečo je to v zásade potrebné.

Lekcia č. 2 sa ukázala ako moja najobľúbenejšia. Bolo to dosť jednoduché na pochopenie a tiež demonštrovalo zázraky vedy. Stručne povedané, v tejto lekcii tvorcovia okrem základných informácií o neurónových sieťach demonštrujú, ako pomocou jednovrstvovej neurónovej siete vyriešiť problém prevodu teploty z Fahrenheita na stupne Celzia.

Toto je skutočne veľmi jasný príklad. Stále tu sedím a rozmýšľam, ako vymyslieť a vyriešiť podobný problém, ale len pre elektrikárov.

Bohužiaľ som sa zasekol ďalej, lebo naučiť sa nezrozumiteľné veci v neznámom jazyku je dosť ťažké. Zachránilo ma to, čo som našiel na Habré preklad tohto kurzu do ruštiny.

Preklad bol urobený kvalitne, preložené boli aj zošity Colab, tak som si potom pozrel originál aj preklad.

Lekcia č. 3 je v skutočnosti adaptáciou materiálov z oficiálneho návodu TensorFlow. V tomto návode používame viacvrstvovú neurónovú sieť, aby sme sa naučili klasifikovať obrázky oblečenia (údajový súbor Fashion MNIST).

Lekcie č. 4 až č. 7 sú zároveň adaptáciou tutoriálu. Ale vzhľadom na to, že sú správne usporiadané, nie je potrebné chápať postupnosť štúdia sami. V týchto lekciách si stručne povieme o ultra-presných neurónových sieťach, ako zvýšiť presnosť tréningu a uložiť model. Zároveň budeme súčasne riešiť problém zaradenia mačiek a psov na obrázku.

Lekcia č. 8 je úplne samostatný kurz, je tam iný lektor a samotný kurz je dosť rozsiahly. Lekcia je o časových radoch. Keďže ma to zatiaľ nezaujíma, oskenoval som to diagonálne.

Toto končí lekciou č. 9, ktorá je pozvánkou na bezplatný kurz TensorFlow lite.

Čo sa vám páčilo a čo nie

Začnem plusmi:

  • Kurz je bezplatný
  • Kurz je na TensorFlow 2. Niektoré učebnice, ktoré som videl a niektoré kurzy na internete boli na TensorFlow 1. Neviem, či je tam veľký rozdiel, ale je fajn naučiť sa aktuálnu verziu.
  • Učitelia vo videu nie sú otravní (hoci v ruskej verzii nečítajú tak veselo ako v origináli)
  • Kurz nezaberie veľa času
  • Kurz vo vás nevyvolá smútok ani beznádej. Úlohy v kurze sú jednoduché a vždy sa nájde nápoveda vo forme Colab so správnym riešením, ak niečo nie je jasné (a dobrá polovica úloh mi nebola jasná)
  • Nie je potrebné nič inštalovať, všetky laboratórne práce na kurze je možné vykonať v prehliadači

Teraz mínusy:

  • Neexistujú prakticky žiadne kontrolné materiály. Žiadne testy, žiadne úlohy, nič, čo by nejako preverilo zvládnutie kurzu
  • Nie všetky moje poznámkové bloky fungovali tak, ako mali. Myslím, že v tretej lekcii pôvodného kurzu angličtiny mi Colab vyhadzoval chybu a ja som nevedel, čo s ňou
  • Pohodlné sledovanie iba na počítači. Možno som tomu úplne nerozumel, ale aplikáciu Udacity som na svojom smartfóne nenašiel. A mobilná verzia stránky nie je responzívna, to znamená, že takmer celú plochu obrazovky zaberá navigačná ponuka, ale aby ste videli hlavný obsah, musíte sa posunúť doprava za oblasť zobrazenia. Video sa tiež nedá zobraziť na telefóne. Na obrazovke s uhlopriečkou viac ako 6 palcov skutočne nič nevidíte.
  • Niektoré veci v kurze sa niekoľkokrát prežúvajú, no zároveň sa v kurze neprežúvajú skutočne potrebné veci na samotných konvolučných sieťach. Stále som nepochopil celkový účel niektorých cvičení (napríklad na čo slúži Max Pooling).

Zhrnutie

Určite ste už uhádli, že zázrak sa nestal. A po absolvovaní tohto krátkeho kurzu je nemožné skutočne pochopiť, ako neurónové siete fungujú.

Samozrejme, nebol som schopný samostatne vyriešiť svoj problém s klasifikáciou fotografií spínačov a tlačidiel v rozvádzači.

Celkovo je však kurz užitočný. Ukazuje, čo sa dá robiť s TensorFlow a akým smerom sa vydať ďalej.

Myslím, že sa najprv potrebujem naučiť základy Pythonu a prečítať si knihy v ruštine o tom, ako fungujú neurónové siete, a potom sa pustiť do TensorFlow.

Na záver by som sa chcel poďakovať svojim priateľom, že ma dotlačili k napísaniu prvého článku o Habrovi a pomohli mi ho sformátovať.

PS Budem rád, keď si pozriem vaše komentáre a konštruktívnu kritiku.

Zdroj: hab.com

Pridať komentár