Hvordan en strømingeniør studerede neurale netværk og en gennemgang af det gratis kursus "Udacity: Intro to TensorFlow for Deep Learning"

Hele mit voksne liv har jeg været en energidrikker (nej, nu taler vi ikke om en drink med tvivlsomme egenskaber).

Jeg har aldrig været særlig interesseret i informationsteknologiens verden, og selv matricer kan jeg næsten ikke gange på et stykke papir. Ja, og jeg har aldrig haft brug for det, så du forstår lidt om det specifikke ved mit arbejde, jeg kan dele en vidunderlig historie. Jeg bad engang mine kollegaer om at lave arbejde i Excel – et regneark, halvdelen af ​​arbejdsdagen er gået, jeg går hen til dem, og de sidder og opsummerer dataene på en lommeregner, ja, på en almindelig sort lommeregner med knapper. Jamen, hvad er det for nogle neurale netværk, vi kan tale om bagefter?.. Derfor har jeg aldrig haft særlige forudsætninger for at fordybe mig i IT-verdenen. Men, som de siger, "det er godt, hvor vi ikke er," mine venner summede mine ører om augmented reality, om neurale netværk, om programmeringssprog (mest om Python).

Med ord så det meget simpelt ud, og jeg besluttede mig for, hvorfor ikke mestre denne magiske kunst for at anvende den i mit aktivitetsområde.

I denne artikel vil jeg springe over mine forsøg på at lære det grundlæggende i Python og dele mine indtryk af det gratis TensorFlow-kursus fra Udacity med dig.

Hvordan en strømingeniør studerede neurale netværk og en gennemgang af det gratis kursus "Udacity: Intro to TensorFlow for Deep Learning"

Indledning

Til at begynde med er det værd at bemærke, at efter 11 år i energibranchen, når du ved og kan alt og endda lidt mere (inden for dit ansvarsområde), giver det at lære radikalt nye ting på den ene side stor entusiasme, men på den anden side bliver til fysisk smerte "gear i hovedet."

Jeg forstår stadig ikke helt alle de grundlæggende begreber inden for programmering og maskinlæring, så dømme mig ikke hårdt. Jeg håber, at min artikel vil være interessant og nyttig for folk som mig - langt fra softwareudvikling.

Før jeg går videre til kursusoversigten, vil jeg sige, at for at studere det, skal du i det mindste have et minimalt kendskab til Python. Du kan læse et par bøger for dummies (jeg begyndte også at tage et kursus om Stepic, men jeg har ikke mestret det endnu).

Selve TensorFlow-kurset vil ikke indeholde komplekse strukturer, men det vil være nødvendigt at forstå, hvorfor biblioteker importeres, hvordan en funktion defineres, og hvorfor noget erstattes i den.

Hvorfor TensorFlow og Udacity?

Hovedmålet med min uddannelse var ønsket om at genkende fotografier af elektriske installationselementer ved hjælp af neurale netværk.

Jeg valgte TensorFlow, fordi jeg hørte om det fra mine venner. Og som jeg forstår det, er dette kursus ret populært.

Jeg prøvede at begynde at lære af embedsmanden tutorial .

Og så løb jeg ind i to problemer.

  • Der er mange undervisningsmaterialer, og de går i strid. Det var meget svært for mig at lave i det mindste et mere eller mindre komplet billede af løsningen af ​​problemet med billedgenkendelse.
  • De fleste af de artikler, jeg har brug for, er ikke oversat til russisk. Det skete sådan, at jeg som barn lærte tysk og nu, som mange sovjetiske børn, kan jeg hverken tysk eller engelsk. Jeg forsøgte selvfølgelig gennem hele mit bevidste liv at mestre engelsk, men det blev omtrent som på billedet.

Hvordan en strømingeniør studerede neurale netværk og en gennemgang af det gratis kursus "Udacity: Intro to TensorFlow for Deep Learning"

Efter at have gravet på den officielle hjemmeside fandt jeg anbefalinger til at bestå et af to onlinekurser.

Som jeg forstår det, var kurset på Coursera betalt, og kurset Udacity: Introduktion til TensorFlow for Deep Learning det var muligt at passere "gratis, altså for ingenting."

Kursusindhold

Kurset består af 9 lektioner.

Det allerførste afsnit er et indledende afsnit, de vil fortælle dig, hvorfor det i princippet er nødvendigt.

Lektion nummer 2 viste sig at være min enhver. Det var enkelt nok til at blive forstået og demonstrerede også videnskabens vidundere. Kort sagt, i denne lektion demonstrerer skaberne, ud over grundlæggende oplysninger om neurale netværk, hvordan man bruger et enkeltlags neuralt netværk til at løse problemet med at konvertere temperatur fra grader Fahrenheit til grader Celsius.

Dette er virkelig et meget tydeligt eksempel. Jeg tænker stadig på, hvordan jeg kan finde på og løse et lignende problem, men kun for elektrikere.

Så gik jeg desværre i stå, for at lære uforståelige ting på et ukendt sprog er ret svært. Reddede mig, hvad jeg fandt på Habré oversættelse af dette kursus til russisk.

Oversættelsen blev udført med høj kvalitet, Colab-notesbøgerne blev også oversat, så jeg kiggede nærmere i både originalen og oversættelsen.

Lektion #3 er faktisk en transskription af materialerne fra den officielle TensorFlow-tutorial. I denne tutorial lærer vi at klassificere billeder med tøj ved hjælp af et flerlags neuralt netværk (Fashion MNIST-datasæt).

Lektion #4 til #7 er også transskriptioner af selvstudiet. Men på grund af det faktum, at de er korrekt arrangeret, er der ingen grund til selv at forstå rækkefølgen af ​​undersøgelsen. I disse lektioner vil vi kort tale om ultrapræcise neurale netværk, hvordan man forbedrer træningsnøjagtigheden og gemmer modellen. Samtidig vil vi samtidig løse problemet med at klassificere katte og hunde i billedet.

Lektion nr. 8 er generelt et separat kursus, der er en anden lærer, og selve kurset er ret omfangsrigt. Lektionen handler om tidsserier. Da jeg ikke er interesseret endnu, scannede jeg den diagonalt.

Lektion 9 afslutter alt, hvilket er en invitation til at tage et gratis kursus i TensorFlow lite.

Hvad du kunne lide og ikke kunne lide

Jeg starter med fordelene:

  • Kurset er gratis
  • Kurset er på TensorFlow 2. Nogle af de tutorials, jeg så, og nogle af kurserne på internettet var på TensorFlow 1. Jeg ved ikke, om der er den store forskel, men det er rart at lære den nuværende version.
  • Lærerne i videoen er ikke irriterende (selvom de i den russiske version ikke læser så muntert som i originalen)
  • Kurset tager ikke lang tid.
  • Forløbet kører ikke ind i en følelse af melankoli og håbløshed. Opgaverne i kurset er enkle, og der er altid et hint i form af Colab med den rigtige løsning, hvis noget ikke er klart (og jeg forstod ikke godt halvdelen af ​​opgaverne)
  • Ingen installation nødvendig, alle kursuslaboratorier kan udføres i browseren

Nu ulemperne:

  • Der er praktisk talt ingen kontrolmaterialer. Ingen test, ingen opgaver, intet for på en eller anden måde at kontrollere beherskelsen af ​​kurset
  • Ikke alle notesbøger fungerede for mig, som de burde. Efter min mening gav Colab i den tredje lektion af det originale kursus på engelsk en fejl, og jeg vidste ikke, hvad jeg skulle gøre med det
  • Det er praktisk kun at se på en computer. Måske forstod jeg det ikke helt, men jeg fandt ikke Udacity-appen til min smartphone. Og mobilversionen af ​​siden er ikke-adaptiv, det vil sige, at næsten hele skærmområdet er optaget af navigationsmenuen, men for at se hovedindholdet skal du scrolle til højre ud over oversigtsområdet. Videoen kan heller ikke ses på telefonen. Du kan ikke rigtig se noget på en 6-tommer skærm
  • Nogle ting i forløbet tygges flere gange, men samtidig bliver de virkelig nødvendige ting på selve foldningsnetværkene ikke tygget i forløbet. Jeg forstod stadig ikke det globale mål med delen af ​​øvelserne (for eksempel hvad er Max Pooling til).

Resumé

Du har sikkert allerede gættet, at miraklet ikke skete. Og efter at have taget dette korte kursus, er det umuligt rigtigt at forstå, hvordan neurale netværk fungerer.

Efter det kunne jeg selvfølgelig ikke løse mit problem med klassificeringen af ​​billeder af kontakter og knapper i koblingsudstyr på egen hånd.

Men generelt er kurset nyttigt. Det viser, hvilke ting der kan gøres med TensorFlow, og hvor man skal hen.

Jeg tror, ​​at jeg først skal lære det grundlæggende i Python og læse bøger på russisk om, hvordan neurale netværk fungerer, og derefter tage TensorFlow på.

Afslutningsvis vil jeg gerne sige tak til mine venner for at presse mig til at skrive den første artikel om Habr og hjælpe med at arrangere den.

PS Jeg vil være glad for dine kommentarer og enhver konstruktiv kritik.

Kilde: www.habr.com

Tilføj en kommentar