Hvordan en energitekniker studerede neurale netværk og anmeldelse af det gratis kursus «Udacity: Introduktion til TensorFlow for Deep Learning»

Hele mit bevidste liv har jeg været energitekniker (nej, denne gang taler vi ikke om en drik med tvivlsomme egenskaber).

Jeg har aldrig rigtig været interesseret i verdenen inden for informationsteknologi, og selv at multiplikere matricer ville jeg næppe kunne gøre på et stykke papir. Og det har aldrig været nødvendigt for mig, men for at give dig en idé om karakteren af mit arbejde, vil jeg dele en fantastisk historie. Engang bad jeg mine kolleger om at udføre et arbejde i Excel – et regneark, og efter halvanden arbejdsdag gik jeg over til dem, og de sad der og summede data op med en lommeregner, ja, ja, en helt almindelig sort lommeregner med knapper. Så hvilken snak om neurale netværk kan der være efter det?.. Derfor har jeg aldrig haft nogen særlig baggrund for at dykke ned i IT-verdenen. Men som man siger, "det er godt der, hvor vi ikke er", mine venner har pestet mig med historier om augmented reality, neurale netværk og programmeringssprog (primært om Python).

På ord lød det ret enkelt, og jeg besluttede, hvorfor ikke mestre denne magiske kunst for at anvende den inden for mit felt.

I denne artikel vil jeg undlade mine forsøg på at lære grundprincippet i Python og dele mine indtryk fra den gratis TensorFlow-kursus fra Udacity.

Hvordan en energitekniker studerede neurale netværk og anmeldelse af det gratis kursus «Udacity: Introduktion til TensorFlow for Deep Learning»

Introduktion

Det er værd at nævne, at efter 11 år i energisektoren, hvor du ved og kan gøre alt og endda lidt mere (i forhold til dit ansvarsområde), så fremkalder det en stormende entusiasme at lære helt nye ting, men på den anden side kan det også være en fysisk smerte "af tandhjulene i hovedet".

Jeg er stadig ikke helt klar over alle grundlæggende koncepter inden for programmering og maskinlæring, så vær venlig ikke at dømme mig for hårdt. Jeg håber, at min artikel vil være interessant og nyttig for dem, der er ligesom mig — langt fra softwareudvikling.

Før jeg går videre til kursusoversigten, vil jeg nævne, at du skal have i det mindste minimum kendskab til Python for at studere det. Du kan læse et par bøger for begyndere (jeg er også begyndt at tage et kursus på Stepic, men har endnu ikke fuldført det).

I selve TensorFlow-kurset vil der ikke være komplekse konstruktioner, men det vil være nødvendigt at forstå, hvorfor biblioteker importeres, hvordan en funktion defineres, og hvorfor der sættes noget ind i den.

Hvorfor TensorFlow og Udacity?

Mit mit mit mit...

Jeg valgte TensorFlow, fordi jeg havde hørt om det fra mine venner. Og som jeg forstod, er dette kursus ret populært.

Jeg forsøgte at starte studiet med den officielle tutorial .

Og jeg stødte straks på to problemer.

  • Der er mange undervisningsmaterialer, og de er usammenhængende. Det var meget svært for mig at danne et mere eller mindre sammenhængende billede af, hvordan man løser billedgenkendelsesopgaven.
  • De fleste af de artikler, jeg havde brug for, er ikke oversat til russisk. Som det er, så lærte jeg tysk som barn, og nu, ligesom mange sovjetiske børn, kender jeg hverken tysk eller engelsk. Jeg har dog forsøgt at lære engelsk i løbet af mit voksne liv, men det gik omtrent som på billedet.

Hvordan en energitekniker studerede neurale netværk og anmeldelse af det gratis kursus «Udacity: Introduktion til TensorFlow for Deep Learning»

Efter at have gravet lidt mere på den officielle hjemmeside, fandt jeg anbefalinger om at tage et af de to onlinekurser.

Som jeg forstod, var kurset på Coursera betalt, mens kurset Udacity: Intro to TensorFlow for Deep Learning kunne gennemføres "gratis, altså uden omkostninger".

Kursusindholdet

Kurset består af 9 lektioner.

Den allerførste sektion er en introduktion, hvor de forklarer, hvad det i princippet er godt for.

Lektion nr. 2 viste sig at være min yndlings. Den var enkel nok til at forstå og viste også videnskabens vidundere. For at opsummere, i denne lektion, ud over de grundlæggende oplysninger om neurale netværk, viser skaberne, hvordan man med et enkelt lag neuralt netværk kan løse opgaven med at omregne temperaturer fra grader Fahrenheit til grader Celsius.

Det er virkelig et meget illustrativt eksempel. Jeg sidder stadig og overvejer, hvordan jeg kan finde på og løse en lignende opgave, men kun inden for elektricitet.

Desværre gik jeg i stå, fordi det er ret svært at lære uforståelige ting på et fremmed sprog. Det, der reddede mig, var, at jeg fandt på Habr oversættelsen af dette kursus til russisk.

Oversættelsen er udført kvalitativt, Colab-noterne er også oversat, så jeg kiggede videre i både originalen og oversættelsen.

Lektion nr. 3 er i det væsentlige en omskrivning af materialerne fra den officielle TensorFlow tutorial. I denne lektion lærer vi at klassificere billeder af tøj (datasættet Fashion MNIST) ved hjælp af et flerlagne neuralt netværk.

Lektionerne nr. 4 til nr. 7 er også en omarbejdning af tutorialen. Men da de er velorganiserede, er der ikke behov for selv at finde ud af rækkefølgen af studiet. I disse lektioner vil vi kort blive introduceret til ultra-præcise neurale netværk, hvordan man forbedrer træningsnøjagtigheden og gemmer modellen. Undervejs vil vi samtidig tackle klassificeringsopgaven af katte og hunde i billeder.

Lektion nr. 8 udgør overhovedet et separat kursus, der har en anden underviser, og selve kurset er ret omfattende. Lektionen er dedikeret til tidsserier. Da jeg ikke er interesseret i dette for nu, har jeg skumlæst den.

Lektion nr. 9 afslutter det hele og inviterer til at tage et gratis kursus i TensorFlow Lite.

Hvad jeg kunne lide og ikke kunne lide

Lad mig starte med fordelene:

  • Kurset er gratis
  • Kurset er om TensorFlow 2. Nogle af de bøger og kurser, jeg har set, var om TensorFlow 1. Jeg ved ikke, hvor stor forskellen er, men det er rart at lære den aktuelle version.
  • Underviserne i videoerne irriterer ikke (selvom de på den russiske version ikke læser lige så livligt som i originalen)
  • Kurset tager ikke meget tid
  • Kurset giver ikke en følelse af tristhed og håbløshed. Opgaverne i kurset er enkle, og der er altid en hjælp i form af Colab med den rigtige løsning, hvis noget er uklart (og halvdelen af opgaverne var uklare for mig)
  • Man skal ikke installere noget, alle laboratorieopgaver i kurset kan løses i browseren

Nu til ulemperne:

  • Der er stort set ingen kontrolmaterialer. Ingen tests, ingen opgaver, intet der kan hjælpe med at vurdere kursusforståelse
  • Ikke alle mine notesbøger virkede som de skulle. Jeg mener, at der i den tredje lektion af det originale kursus på engelsk, Colab gav en fejl, og jeg vidste ikke, hvad jeg skulle gøre ved den
  • Det er bekvemt at se kun på computeren. Måske har jeg ikke helt forstået det, men jeg kunne ikke finde Udacity-app'en på min smartphone. Den mobile version af hjemmesiden er ikke responsiv, så stort set hele skærmen er dækket af navigationsmenuen, og for at se hovedindholdet skal man scrolle til højre ud af synsfeltet. Desuden kan videoen ikke ses på telefonen. På en skærm på lidt over 6 tommer kan man ikke rigtig se noget.
  • Nogle ting i kurset behandles flere gange, men de virkelig nødvendige aspekter ved selve konvolutionsnetværkene bliver ikke uddybet. Jeg forstod stadig ikke det overordnede formål med dele af øvelserne (for eksempel hvorfor Max Pooling er vigtigt).

CV

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

Selvfølgelig kunne jeg ikke selv efter dette løse min opgave med klassificeringen af fotografier af afbrydere og knapper i distributionsudstyr.

Men generelt er kurset nyttigt. Det viser, hvilke ting der kan gøres med TensorFlow, og i hvilken retning man kan bevæge sig videre.

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

Afslutningsvis vil jeg gerne takke mine venner for at have motiveret mig til at skrive den første artikel på "Habr" og hjulpet mig med at formatere den.

P.S. Jeg ser frem til dine kommentarer og enhver konstruktiv kritik.

Kilde: habr.com

Køb pålidelig webhosting med DDoS-beskyttelse, VPS VDS-servere 🔥 Køb pålidelig webhosting med DDoS-beskyttelse, VPS VDS-servere | ProHoster