În toată conștientizarea mea, am fost electrician (nu, acum nu vorbesc despre o băutura cu proprietăți discutabile).
Nu m-am interesat prea mult de lumea tehnologiilor informației, iar și matricele cred că greu le-aș putea înmulți pe o foaie de hârtie. Și nu mi-a fost niciodată necesar, pentru a înțelege puțin din specificul muncii mele, pot împărtăși o poveste minunată. Odată am cerut colegilor mei să facă o lucrare în Excel – o tabelă, a trecut jumătate din ziua de lucru, mă apropii de ei, iar ei stăteau și sumau datele pe un calculator, da- da, pe un calculator obișnuit, cu butoane negre. Deci, despre ce rețele neuronale ar putea fi vorba după aceasta?… Prin urmare, nu am avut niciodată premise speciale pentru a pătrunde în lumea IT. Dar, cum se spune, „bine este acolo unde nu suntem”, prietenii mei m-au bombardat cu povestiri despre realitatea augmentată, despre rețele neuronale, despre limbaje de programare (în principal despre Python).
Pe hârtie părea destul de simplu, așa că am decis de ce să nu stăpânesc această artă magică pentru a o aplica în domeniul meu de activitate.
În acest articol voi omite încercările mele de a învăța bazele Python și voi împărtăși cu voi impresiile mele despre cursul gratuit de TensorFlow de la Udacity.

Introducere
În primul rând, este important de menționat că după 11 ani în domeniul energetic, când știi și poți face totul și chiar puțin mai mult (în cadrul responsabilităților tale), învățarea de lucruri complet noi – pe de o parte, provoacă un entuziasm puternic, dar pe de altă parte – se transformă într-o durere fizică a „rotițelor din cap”.
În continuare, nu înțeleg complet toate conceptele de bază ale programării și învățării automate, așa că nu ar trebui să mă judeci strict. Sper că articolul meu va fi interesant și util pentru cei ca mine – îndepărtați de dezvoltarea software.
Înainte de a trece la review-ul cursului, voi spune că pentru a-l studia este necesară cel puțin o cunoștință minimă de Python. Poți citi câteva cărți pentru începători (eu am început să urmez un curs pe Stepic, dar nu l-am terminat încă).
În cursul de TensorFlow nu vor fi structuri complexe, dar va fi necesar să înțelegi de ce se importă bibliotecile, cum se definește o funcție și de ce i se introduce ceva.
De ce TensorFlow și Udacity?
Obiectivul principal al studiului meu a fost dorința de a recunoaște fotografiile elementelor instalațiilor electrice cu ajutorul rețelelor neuronale.
Am ales TensorFlow pentru că am auzit despre el de la prietenii mei. Și, după cum am înțeles, acest curs este destul de popular.
Am încercat să încep studiul cu oficialul .
Și m-am confruntat imediat cu două probleme.
- Există multe materiale de învățare, iar acestea sunt haotice. A fost foarte greu pentru mine să îmi formez o imagine mai mult sau mai puțin coerentă asupra soluției pentru recunoașterea imaginilor.
- Majoritatea articolelor de care aveam nevoie nu erau traduse în rusă. Așa s-a întâmplat că, în copilărie, am învățat germană și acum, la fel ca mulți copii sovietici, nu cunosc nici germana, nici engleza. Desigur, în timpul vieții conștiente am încercat să stăpânesc engleza, dar a ieșit cam așa cum este în imagine.

După ce am căutat mai departe pe site-ul oficial, am găsit recomandări pentru a urma .
Din câte am înțeles, cursul de pe Coursera era plătit, iar cursul poate fi urmat „fără plată, adică gratuit”.
Cuprinsul cursului
Cursul constă din 9 lecții.
Prima secțiune este introductivă, acolo se va explica pentru ce este necesar în general.
Lecția nr. 2 s-a dovedit a fi preferata mea. A fost suficient de simplă pentru a fi înțeleasă și a demonstrat minuni ale științei. Pe scurt, în această lecție, pe lângă informațiile de bază despre rețelele neuronale, creatorii demonstrează cum, folosind o rețea neuronală unică, se poate rezolva problema conversiei temperaturii din grade Fahrenheit în grade Celsius.
Este într-adevăr un exemplu foarte concludent. Încă mă gândesc cum să inventez și să rezolv o problemă similară, dar pentru electricitate.
Din păcate, mai departe m-am împotmolit, pentru că este destul de dificil să înveți lucruri necunoscute într-o limbă străină. M-a salvat faptul că am găsit pe Habr .
Traducerea a fost realizată bine, notele Colab au fost de asemenea traduse, așa că am continuat să verific atât originalul, cât și traducerea.
Lecția nr. 3 este, de fapt, o reformulare a materialelor tutorialului oficial TensorFlow. În această lecție, învățăm cum să clasificăm imaginile cu haine (setul de date Fashion MNIST) folosind o rețea neuronală multilayer.
Lectiile cu numerele 4 până la 7 sunt, de asemenea, o adaptare a tutorialului. Dar, datorită modului în care sunt structurate, nu este necesar să te ocupi singur de ordinea studiului. În aceste lecții, ne vor vorbi pe scurt despre rețele neuronale super precise, despre cum să creștem precizia învățării și să conservăm modelul. În același timp, vom rezolva problema clasificării pisicilor și câinilor în imagini.
Lecția nr. 8 reprezintă, de fapt, un curs separat, având un alt instructor, iar cursul este destul de cuprinzător. Lecția este dedicată seriilor temporale. Deoarece acest subiect nu mă interesează încă, l-am răsfoit pe fugă.
Ultima lecție, nr. 9, este o invitație de a urma un curs gratuit despre TensorFlow lite.
Ce mi-a plăcut și ce nu mi-a plăcut
Voi începe cu plusurile:
- Cursul este gratuit
- Cursul este despre TensorFlow 2. Unele manuale pe care le-am văzut și unele cursuri online erau despre TensorFlow 1. Nu știu cât de mare este diferența, dar este plăcut să înveți versiunea actuală.
- Instructorii din videoclipuri nu sunt deranjanți (deși în versiunea rusă citesc nu atât de energic ca în original)
- Cursul nu durează mult timp
- Cursul nu îți dă o senzație de tristețe și deznădejde. Sarcinile din curs sunt simple și există întotdeauna o sugestie sub forma unui Colab cu soluția corectă, dacă ceva nu este clar (și jumătate dintre sarcini nu au fost clare pentru mine)
- Nu trebuie să instalezi nimic, toate lucrările de laborator ale cursului pot fi realizate în browser
Acum despre minusuri:
- Nu există practic niciun material de control. Nici teste, nici sarcini, nimic pentru a verifica cum am învățat cursul
- Nu toate blocnotes-urile au funcționat cum trebuie. Cred că, în lecția a treia a cursului original în engleză, Colab a dat o eroare, și nu am știut ce să fac cu ea
- Este confortabil să te uiți doar pe computer. Poate că nu m-am descurcat pe deplin, dar nu am găsit aplicația Udacity pe smartphone-ul meu. Iar versiunea mobilă a site-ului nu este adaptivă, adică aproape întreaga zonă de pe ecran este ocupată de meniul de navigare, iar pentru a vedea conținutul principal trebuie să derulezi spre dreapta dincolo de zona de vizionare. De asemenea, videoclipurile nu pot fi vizionate pe telefon. Pe un ecran de aproximativ 6 inci nu poți distinge nimic clar.
- Unele concepte din curs sunt explicate de mai multe ori, dar aspectele cu adevărat importante legate de rețelele convoluționale nu sunt adesea discutate. Nu am înțeles scopul global al unei părți a exercițiilor, de exemplu, de ce este necesar Max Pooling.
Rezumat
Probabil că ați ghicit că minunea nu s-a întâmplat. După parcurgerea acestui curs scurt, nu este posibil să înțelegem cu adevărat cum funcționează rețelele neuronale.
Desigur, nu am reușit singur să îmi rezolv problema clasificării fotografiilor întrerupătoarelor și butoanelor în dispozitivele de distribuție.
Dar, în ansamblu, cursul este util. Arată ce lucruri pot fi realizate cu ajutorul TensorFlow și în ce direcție să ne îndreptăm mai departe.
Cred că, pentru început, ar trebui să învăț bazele Python și să citesc cărți în limba română despre cum funcționează rețelele neuronale, după care voi aborda TensorFlow.
În final, vreau să le mulțumesc prietenilor mei pentru că m-au încurajat să scriu primul articol pe "Habr" și m-au ajutat să îl structurez.
P.S. Aș fi bucuros să primesc comentarii și orice critică constructivă.
Sursa: habr.com
