Kaip energetikos inžinierius studijavo neuroninius tinklus ir nemokamo kurso „Udacity: Intro to TensorFlow for Deep Learning“ apžvalgą

Visą savo suaugusiojo gyvenimą buvau energetinis gėrimas (ne, dabar mes nekalbame apie gėrimą su abejotinomis savybėmis).

Niekada ypatingai nesidomėjau informacinių technologijų pasauliu ir vargu ar galiu padauginti matricas ant popieriaus lapo. O man šito niekada nereikėjo, kad šiek tiek suprastumėte mano darbo specifiką, galiu pasidalinti nuostabia istorija. Kartą paprašiau kolegų atlikti darbą Excel skaičiuokle, praėjo pusė darbo dienos, priėjau prie jų, o jie sėdėjo ir sumuoja duomenis skaičiuotuvu, taip, ant paprasto juodo skaičiuotuvo su mygtukais. Na, o apie kokius neuroninius tinklus po šito galima kalbėti?.. Todėl niekada neturėjau ypatingų prielaidų pasinerti į IT pasaulį. Bet, kaip sakoma, „gerai ten, kur mūsų nėra“, mano draugai ūžė ausimis apie papildytą realybę, apie neuroninius tinklus, apie programavimo kalbas (daugiausia apie Python).

Žodžiais tai atrodė labai paprasta, ir aš nusprendžiau, kodėl neįvaldžius šio magiško meno, kad pritaikyčiau jį savo veiklos srityje.

Šiame straipsnyje praleisiu bandymus įsisavinti Python pagrindus ir pasidalinsiu su jumis įspūdžiais iš nemokamo „TensorFlow“ kurso iš „Udacity“.

Kaip energetikos inžinierius studijavo neuroninius tinklus ir nemokamo kurso „Udacity: Intro to TensorFlow for Deep Learning“ apžvalgą

įvedimas

Pirmiausia verta paminėti, kad po 11 metų energetikos pramonėje, kai žinai ir gali viską ir net šiek tiek daugiau (pagal savo pareigas), išmokti radikaliai naujų dalykų – viena vertus, kelia didelį entuziazmą, bet kita vertus - virsta fiziniu skausmu " krumpliaračiai mano galvoje ".

Vis dar iki galo nesuprantu visų pagrindinių programavimo ir mašininio mokymosi sąvokų, todėl nevertėtų manęs vertinti per griežtai. Tikiuosi, kad mano straipsnis bus įdomus ir naudingas tokiems žmonėms kaip aš, kurie toli nuo programinės įrangos kūrimo.

Prieš pereinant prie kurso apžvalgos, pasakysiu, kad norint jį studijuoti reikės bent minimalių Python žinių. Galite perskaityti porą knygų manekenams (aš taip pat pradėjau lankyti Stepic kursą, bet dar iki galo neįvaldžiau).

Pačiame TensorFlow kurse nebus sudėtingų konstrukcijų, tačiau reikės suprasti, kodėl bibliotekos importuojamos, kaip apibrėžiama funkcija ir kodėl kažkas į ją pakeičiama.

Kodėl TensorFlow ir Udacity?

Pagrindinis mano mokymų tikslas buvo noras atpažinti elektros instaliacijos elementų nuotraukas naudojant neuroninius tinklus.

Pasirinkau TensorFlow, nes apie tai girdėjau iš savo draugų. Ir, kaip suprantu, šis kursas yra gana populiarus.

Bandžiau pradėti mokytis iš valdininko pamoka .

Ir tada aš susidūriau su dviem problemomis.

  • Mokomosios medžiagos yra labai daug, jos būna įvairių. Man buvo labai sunku susikurti bent daugiau ar mažiau pilną vaizdo atpažinimo problemos sprendimo vaizdą.
  • Dauguma man reikalingų straipsnių nebuvo išversti į rusų kalbą. Taip atsitiko, kad vaikystėje išmokau vokiečių kalbą ir dabar, kaip ir daugelis sovietinių vaikų, nemoku nei vokiečių, nei anglų kalbos. Žinoma, visą savo suaugusiojo gyvenimą bandžiau išmokti anglų kalbą, bet pasirodė kažkas panašaus į paveikslėlį.

Kaip energetikos inžinierius studijavo neuroninius tinklus ir nemokamo kurso „Udacity: Intro to TensorFlow for Deep Learning“ apžvalgą

Pasigilinęs oficialioje svetainėje radau rekomendacijų, į kurias reikia atsižvelgti vienas iš dviejų internetinių kursų.

Kaip suprantu, Coursera kursai buvo mokami ir kursai „Udacity“: „TensorFlow“ įvadas giliam mokymuisi buvo galima praeiti „nemokamai, tai yra už dyką“.

Kurso turinys

Kursą sudaro 9 pamokos.

Pats pirmas skyrius yra įvadinis, kuriame bus pasakyta, kam iš principo to reikia.

2 pamoka buvo mano mėgstamiausia. Tai buvo pakankamai paprasta suprasti ir taip pat parodė mokslo stebuklus. Trumpai tariant, šioje pamokoje, be pagrindinės informacijos apie neuroninius tinklus, kūrėjai demonstruoja, kaip naudojant vieno sluoksnio neuroninį tinklą išspręsti temperatūros konvertavimo iš Farenheito į Celsijaus problemą problemą.

Tai tikrai labai aiškus pavyzdys. Vis dar sėdžiu ir galvoju, kaip sugalvoti ir išspręsti panašią problemą, bet tik elektrikams.

Deja, sustingau toliau, nes išmokti nesuprantamų dalykų nepažįstama kalba yra gana sunku. Mane išgelbėjo tai, ką radau Habré šio kurso vertimas į rusų kalbą.

Vertimas atliktas kokybiškai, „Colab“ sąsiuviniai taip pat buvo išversti, todėl tada žiūrėjau ir originalą, ir vertimą.

Pamoka Nr. 3 iš tikrųjų yra medžiagos iš oficialios TensorFlow mokymo programos pritaikymas. Šioje pamokoje naudojame daugiasluoksnį neuroninį tinklą, kad sužinotume, kaip klasifikuoti drabužių nuotraukas (Fashion MNIST duomenų rinkinys).

Pamokos nuo 4 iki 7 taip pat yra mokymo programos pritaikymas. Tačiau dėl to, kad jie yra teisingai išdėstyti, nereikia patiems suprasti studijų sekos. Šiose pamokose trumpai papasakosime apie itin tikslius neuroninius tinklus, kaip padidinti mokymo tikslumą ir išsaugoti modelį. Tuo pačiu metu mes išspręsime kačių ir šunų klasifikavimo vaizde problemą.

8 pamoka yra visiškai atskiras kursas, ten yra kitas mokytojas, o pats kursas yra gana platus. Pamoka yra apie laiko eilutes. Kadangi dar nesidomiu, nuskenavau įstrižai.

Tai baigiasi 9 pamoka, kuri yra kvietimas lankyti nemokamą TensorFlow lite kursą.

Kas patiko ir kas nepatiko

Pradėsiu nuo privalumų:

  • Kursas nemokamas
  • Kursas skirtas TensorFlow 2. Kai kurie vadovėliai, kuriuos mačiau, ir kai kurie kursai internete buvo apie TensorFlow 1. Nežinau, ar yra didelis skirtumas, bet malonu išmokti dabartinę versiją.
  • Mokytojai vaizdo įraše neerzina (nors rusiškoje versijoje jie skaito ne taip linksmai, kaip originale)
  • Kursas neužima daug laiko
  • Kursas neverčia jaustis liūdnas ar beviltiškas. Kurso užduotys yra paprastos ir visada yra užuomina „Colab“ pavidalu su teisingu sprendimu, jei kažkas neaišku (o man nebuvo aiškios geros pusės užduočių)
  • Nieko diegti nereikia, visus kurso laboratorinius darbus galima atlikti naršyklėje

Dabar minusai:

  • Kontrolinės medžiagos praktiškai nėra. Jokių testų, jokių užduočių, nieko, kas kažkaip patikrintų kurso įvaldymą
  • Ne visi mano užrašų knygelės veikė taip, kaip turėtų. Manau, kad trečioje originalaus anglų kalbos kurso pamokoje „Colab“ padarė klaidą ir nežinojau, ką su ja daryti
  • Patogu žiūrėti tik kompiuteryje. Gal ne iki galo supratau, bet išmaniajame telefone nepavyko rasti programėlės Udacity. Ir mobilioji svetainės versija nereaguoja, tai yra, beveik visą ekrano plotą užima naršymo meniu, tačiau norint pamatyti pagrindinį turinį, reikia slinkti į dešinę už žiūrėjimo srities. Be to, vaizdo įrašo negalima žiūrėti telefonu. Ekrane, kurio įstrižainė yra šiek tiek daugiau nei 6 coliai, tikrai nieko nematote.
  • Kai kurie dalykai kurse yra sukramtomi kelis kartus, bet tuo pačiu metu tikrai būtini dalykai pačiuose konvoliuciniuose tinkluose nėra sukramtomi. Vis dar nesupratau bendro kai kurių pratimų tikslo (pavyzdžiui, kam skirtas Maxas Poolingas).

Santrauka

Tikrai jau atspėjote, kad stebuklas neįvyko. Ir baigus šį trumpą kursą neįmanoma iš tikrųjų suprasti, kaip veikia neuroniniai tinklai.

Žinoma, aš negalėjau savarankiškai išspręsti savo problemos, susijusios su skirstomųjų įrenginių jungiklių ir mygtukų nuotraukų klasifikavimu.

Bet apskritai kursas naudingas. Tai parodo, ką galima padaryti naudojant „TensorFlow“ ir kokia kryptimi toliau elgtis.

Manau, kad pirmiausia reikia išmokti Python pagrindus ir rusų kalba perskaityti knygas apie neuroninių tinklų veikimą, o tada imtis TensorFlow.

Baigdamas norėčiau padėkoti savo draugams, kurie paskatino mane parašyti pirmąjį straipsnį apie Habrą ir padėjo man jį suformatuoti.

PS Man bus malonu matyti jūsų pastabas ir bet kokią konstruktyvią kritiką.

Šaltinis: www.habr.com

Добавить комментарий