Jako energetik jsem studoval neuronové sítě a přehled na bezplatný kurz „Udacity: Intro to TensorFlow for Deep Learning“

Celý svůj vědomý život jsem byl energetikem (ne, nyní nejde o nápoj se spornými vlastnostmi).

Nikdy mě zvlášť nezajímaly technologie informačních technologií, a dokonce bych asi ani na papíře neuměl vynásobit matice. A to mi nikdy ani nebylo potřeba, abyste pochopili něco o specifikách mé práce, mohu sdílet skvělý příběh. Jednou jsem požádal své kolegy, aby udělali práci v Excelu – tabulce, uplynula polovina pracovního dne, přistoupil jsem k nim a oni si sedí a sčítají údaje na kalkulačce, ano, na obyčejné černé kalkulačce s tlačítky. A o jakých neuronových sítích se po tom může mluvit?… Proto jsem nikdy neměl žádné zvláštní předpoklady k tomu, abych se ponořil do světa IT. Ale, jak se říká, „dobře tam, kde nás není“, moji přátelé mi stále vyprávěli o rozšířené realitě, neuronových sítích, programovacích jazycích (zejména o Pythonu).

Na slovech to vypadalo velmi jednoduše, a tak jsem se rozhodl, proč se nenaučit toto magické umění, abych ho mohl použít ve své sféře činnosti.

V tomto článku přeskočím mé pokusy zvládnout základy Pythonu a podělím se s vámi o své dojmy z bezplatného kurzu o TensorFlow od Udacity.

Jako energetik jsem studoval neuronové sítě a přehled na bezplatný kurz „Udacity: Intro to TensorFlow for Deep Learning“

Úvod

Nejprve si musím uvědomit, že po 11 letech v energetice, kdy víte a umíte všechno a dokonce o kousek víc (podle svých povinností), učení se zcela novým věcem – na jedné straně vyvolává bouřlivý nadšení, ale na druhé straně obratem způsobuje fyzickou bolest „ozubených koleček v hlavě“.

Stále si ještě zcela neuvědomuji všechny základní koncepty programování a strojového učení, proto mě prosím přísně nesuďte. Doufám, že můj článek bude zajímavý a užitečný lidem, jako jsem já – vzdáleným od vývoje softwaru.

Než přejdu k přehledu kurzu, řeknu, že k jeho studiu budete potřebovat alespoň minimální znalosti Pythonu. Můžete si přečíst pár knih pro začátečníky (ještě jsem začal absolvovat kurz na Stepic, ale zatím ho nedokončil).

V samotném kurzu o TensorFlow nebudou složité konstrukce, ale pochopit, proč se importují knihovny, jak se určuje funkce a proč se do ní něco dosazuje, bude nutné.

Proč TensorFlow a Udacity?

Hlavním cílem mého studia bylo naučit se rozpoznávat fotografie prvků elektroinstalací pomocí neuronových sítí.

TensorFlow jsem si vybral, protože jsem o něm slyšel od svých přátel. A jak jsem pochopil, tento kurz je celkem populární.

Snažil jsem se začít studium s oficiálním taughtorem. .

A hned jsem narazil na dvě problémy.

  • Studijních materiálů je hodně, a jsou neuspořádané. Sestavit alespoň relativně ucelený obraz řešení úlohy rozpoznávání obrazů bylo pro mě velmi obtížné.
  • Většina potřebných článků není přeložena do ruštiny. Tak se stalo, že jsem v dětství studoval němčinu a nyní, jako mnozí sovětští děti, nevím ani německy, ani anglicky. Samozřejmě jsem se během svého vědomého života snažil ovládnout angličtinu, ale povedlo se to přibližně tak, jako na obrázku.

Jako energetik jsem studoval neuronové sítě a přehled na bezplatný kurz „Udacity: Intro to TensorFlow for Deep Learning“

Po prozkoumání oficiálního webu jsem našel doporučení absolvovat jeden ze dvou online kurzů..

Jak jsem pochopil, kurz na Courcera byl placený, zatímco kurz Udacity: Úvod do TensorFlow pro hluboké učení bylo možné absolvovat "bez nákladů, tedy zdarma".

Obsah kurzu

Kurz se skládá z 9 lekcí.

Nejprve sekce je úvodní, tam se říká, k čemu je vlastně potřeba.

Lekce č. 2 se ukázala jako moje oblíbená. Byla dost jednoduchá na to, aby se dala pochopit, a zároveň demonstrovala zázraky vědy. Stručně řečeno, v této lekci kromě základních informací o neuronových sítích autoři ukazují, jak pomocí jednovrstvé neuronové sítě vyřešit úlohu převodu teploty z Fahrenheita do Celsia.

To je opravdu velmi názorný příklad. Pořád přemýšlím, jak vymyslet a vyřešit podobnou úlohu, ale jen pro elektrotechniku.

Bohužel jsem se zasekl, protože učit se neznámé věci v cizím jazyce je docela obtížné. Zachránilo mě, že jsem našel na Habru překlad tohoto kurzu do ruštiny..

Překlad byl proveden kvalitně, také byly přeloženy poznámkové bloky Colab, takže jsem dále nahlížel jak do originálu, tak do překladu.

Lekce č. 3 je v podstatě převyprávění materiálů oficiálního tutoriálu TensorFlow. V této lekci se pomocí vícerozměrné neuronové sítě učíme klasifikovat obrázky s oděvy (dataset Fashion MNIST).

Lekce číslo 4 až 7 jsou také přepracováním tutoriálu. Díky tomu, že jsou dobře uspořádány, není nutné se sám zabývat pořadím učení. V těchto lekcích nám stručně představí vysoce přesné neuronové sítě, jak zvýšit přesnost učení a uchovat model. Přitom se budeme zároveň zabývat úkolem klasifikace koček a psů na obrázcích.

Lekce číslo 8 představuje samostatný kurz s jiným lektorem a je dost obšírná. Tato lekce je věnována časovým řadám. Protože mě to zatím nezajímá, prošel jsem to jen zběžně.

Všechny lekce uzavírá lekce číslo 9, která je pozvánkou na bezplatný kurz o TensorFlow lite.

Co se mi líbilo a co ne

Začnu s klady:

  • Kurz je zdarma
  • Kurz je o TensorFlow 2. Některé učebnice, které jsem viděl, a některé kurzy na internetu byly o TensorFlow 1. Nevím, jestli je mezi nimi velký rozdíl, ale je příjemné učit se aktuální verzi.
  • Lektor na videu mě neruší (i když v ruské verzi čtou méně energicky než v originále)
  • Kurz nebere moc času
  • Kurz nevytváří pocit smutku a beznaděje. Úkoly v kurzu jsou jednoduché a vždy je k dispozici nápověda ve formě Colab s správným řešením, pokud něco není jasné (a polovina úloh mi jasná nebyla)
  • Není třeba nic instalovat, všechny laboratorní práce kurzu lze udělat v prohlížeči

Teď mínusy:

  • Skoro nejsou žádné kontrolní materiály. Žádné testy, ani úkoly, nic, co by pomohlo ověřit osvojení kurzu
  • Ne všechny notebooky mi pracovaly tak, jak měly. Myslím, že ve třetí lekci originálního kurzu v angličtině Colab vyhazoval chybu, a nevěděl jsem, co s ní dělat
  • Pohodlně se to sleduje jen na počítači. Možná jsem se v tom dostatečně nevyznal, ale nenašel jsem aplikaci Udacity na svém chytrém telefonu. A mobilní verze webu není adaptivní, takže většinu obrazovky zabírá navigační menu, ale abyste viděli hlavní obsah, musíte listovat doprava za zorné pole. Také videa nelze sledovat na telefonu. Na obrazovce o velikosti šest palců nic pořádně nerozlišíte.
  • Některé věci v kurzu jsou rozebírány několikrát, ale skutečně potřebné informace o samých konvolučních sítích nejsou dostatečně vysvětleny. Tak jsem ani nepochopil globální cíl některých cvičení (například, k čemu je Max Pooling).

Shrnutí

Jistě jste už uhádli, že kouzlo se nekonalo. A po absolvování tohoto krátkého kurzu není možné opravdu pochopit, jak fungují neuronové sítě.

Samozřejmě, že jsem po tomto nedokázal sám vyřešit svůj úkol s klasifikací fotografií vypínačů a tlačítek v rozvodných zařízeních.

Ale celkově je kurz užitečný. Ukazuje, jaké věci lze udělat pomocí TensorFlow a jakým směrem se dá pokračovat dál.

Myslím, že se nejprve musím naučit základy Pythonu a přečíst si knihy v češtině o tom, jak fungují neuronové sítě, a až potom se pustit do TensorFlow.

Na závěr bych chtěl poděkovat svým přátelům za to, že mě povzbudili k napsání prvního článku na "Habr" a pomohli mi s jeho úpravou.

P.S. Budu rád za vaše komentáře a jakoukoli konstruktivní kritiku.

Zdroj: habr.com

Koupit spolehlivý hosting pro webové stránky s ochranou proti DDoS, VPS VDS servery 🔥 Koupit spolehlivý hosting pro webové stránky s ochranou proti DDoS, VPS VDS servery | ProHoster