Kogu oma teadliku elu olen ma olnud elektrik (ei, praegu ei räägi ma kaheldavate omadustega joogist).
Ma ei ole kunagi eriti ustavalt huvitatud olnud infotehnoloogia maailmast ja isegi maatriksite korrutamine on mulle pigem võõras. Ja mul polnud seda kunagi vaja, et anda teile ülevaade minu töö spetsiifikast, jagan ma ühe suurepärase loo. Kord palusin ma oma kolleegidel teha Excelis tööd – tabelit, pool tööpäeva möödus ja ma lähen nende juurde, ja nad istuvad ja summeerivad andmeid kalkulaatoriga, jah, jah, tavalise musta kalkulaatoriga, kus on nupud. Nii et millest me siis räägime, kui teema on aga neuronvõrgud?.. Seega ei olnud mul kunagi erilisi eelduseid IT maailma sukeldumiseks. Kuid nagu öeldakse, "kus meid pole, seal on hästi", mu sõbrad rääkisid mulle pidevalt lisarealoo, neuronvõrkude ja programmeerimiskeelte (peamiselt Python) kohta.
Kasutuselt nägi see sõnades üsna lihtne välja, ja ma mõtlesin, miks mitte omandada see maagiline kunst, et rakendada seda oma tegevusvaldkonnas.
Selles artiklis jätn ma kõrvale oma katsed õppida Pythonit ja jagan teiega oma muljeid Udacity tasuta TensorFlow kursusest.

Sissejuhatus
Esiteks tasub märkida, et pärast 11 aastat elektritööstuses, kui sa tead ja saad teha kõike, isegi natuke rohkem (oma kohustuste raames), õppimine täiesti uute asjade juurde – ühelt poolt tekitab see suurt entusiashmi, kuid teisalt – osutub see füüsiliseks valuks "hammaste peas".
Ma ei mõista siiani täielikult kõiki programmeerimise ja masinõppe põhikontseptsioone, seega ei tohiks mind rangelt hukka mõista. Loodan, et minu artikkel on huvitav ja kasulik sellistele inimestele nagu mina – kaugelt tarkvaraarendusest.
Enne kui liigun kursuse ülevaate juurde, ütlen, et selle õppimiseks on vajalik vähemalt minimaalne Python'i teadlikkus. Võib lugeda paar raamatut algajatele (ma hakkasin veel Stepic'is kursust läbima, kuid ei ole seda veel lõpuni õppinud).
TensorFlow kursuses ei tule keerulisi struktuure, kuid on vajalik mõista, miks raamatukogud imporditakse, kuidas määratletakse funktsioon ja miks sellele midagi antakse.
Miks TensorFlow ja Udacity?
Minu õppe peamine eesmärk oli õppida tuvastama elektriseadmete elementide fotosid närvivõrkude abil.
Valisin TensorFlow, kuna olin sellest oma sõpradelt kuulnud. Ja nagu ma aru sain, on see kursus piisavalt populaarne.
Püüdsin alustada ametlikust .
Ja seisime silmitsi kahe probleemiga.
- Õppematerjale on palju ja need on segamini. Koostada vähemalt mõningane terviklik pilt piltide tuvastamise ülesande lahendamisest oli mulle väga raske.
- Enamik minu vajalikest artiklitest ei ole vene keelde tõlgitud. Nii on juhtunud, et lapsena õppisin saksa keelt ja nüüd, nagu paljud nõukogude lapsed, ei oska ma ei saksa ega inglise keelt. Loomulikult olen ma püüdnud oma teadlikku elu jooksul inglise keelt õppida, kuid sain hakkama ligikaudu nii nagu pildil.

Kaevates edasi ametlikul veebilehel, leidsin soovituse läbida .
Kuna ma aru sain, oli Courseras kursus tasuline, kuid kursuse võis läbida "tasuta, see tähendab kingitusena".
Kursuse sisu
Kursus koosneb 9 õppetunnist.
Esimene osa on sissejuhatav, seal räägitakse, milleks see üldse vajalik on.
Õppetund nr 2 osutus minu lemmikuks. See oli piisavalt lihtne, et seda mõista, ja samas näitas teaduse imesid. Lühidalt, selles õppetunnis, lisaks põhiteabele närvivõrkude kohta, demonstreerivad loojaid, kuidas ühekihiliste närvivõrkude abil lahendada ülesanne, milleks on temperatuuri teisendamine Fahrenheiti kraadidest Celsiuse kraadidesse.
See on tõeliselt väga arusaadav näide. Siiani mõtlen, kuidas välja mõelda ja lahenda sarnane ülesanne, kuid ainult elektri jaoks.
Kahjuks jäin edasi liikuma, kuna tundmatud asjade õppimine tundmatul keelel on üsna keeruline. Aitas see, et leidsin Habrest .
Tõlge on tehtud kvaliteetselt, Colab'i päevikud on samuti tõlgitud, seega piilusin edasi nii originaali kui ka tõlget.
Õppetund nr 3 on tegelikult ametliku TensorFlow juhendi materjalide ümberpandud versioon. Selles õppetunnis õpime koos mitmekihilise närvivõrguga klassifitseerima riidepildid (andmekogum Fashion MNIST).
Tunnid number 4 kuni number 7 on samuti õpetuse ümberkirjutus. Kuid kuna need on korralikult koostatud, pole vajadust iseseisvalt uurida õpistimise järjestust. Nendes tundides räägitakse meile lühidalt ülipeentest närvivõrkudest, kuidas suurendada õppe täpsust ja säilitada mudel. Samuti lahendame me samal ajal kasside ja koerte pildil klassifitseerimise ülesande.
Tund number 8 on hoopis eraldi kursus, seal on teine õpetaja ja kursus on üsna mahukas. Tund on pühendatud ajasüsteemidele. Kuna see mind praegu ei huvita, vaatasin seda kiiruselt üle.
Kursuse lõpetab tund number 9, mis kutsub üles minema tasuta kursusele TensorFlow lite'i kohta.
Mida meeldis ja ei meeldinud
Alustan plussidest:
- Kursus on tasuta
- Kursus on TensorFlow 2 kohta. Mõned õpikuid, mida olen näinud, ja mõned kursused internetis olid TensorFlow 1 kohta. Ei tea, kui suur vahe on, aga meeldiv on õppida ajakohast versiooni.
- Kursuse videote õpetajad ei häiri (kuigi vene versioonis loetakse mitte nii energiliselt kui originaalis)
- Kursus ei võta palju aega
- Kursus ei tekita masendust ja lootusetust. Kursuse ülesanded on lihtsad ja alati on olemas vihje Colab'ist õige lahenduse näol, kui midagi ei ole selge (aga mulle ei olnud selge hea osa ülesandeid)
- Ühtegi installimist pole vaja, kõik kursuse laboritööd saab teha brauseris
Nüüd miinused:
- Praktiliselt pole kontrollmaterjale. Ei teste, ei ülesandeid, mitte midagi, et kuidagi kursuse omandamist kontrollida
- Mul ei töötinud kõik märkmikud õigesti. Minu arvates kolmandas tunnis originaalkursusest inglise keeles andis Colab vea ja ma ei teadnud, mida sellega teha
- Mugav on vaadata ainult arvutis. Võib olla, et ma ei suutnud lõpuni aru saada, aga ma ei leidnud Udacity rakendust oma nutitelefonile. Ja mobiiliversioon veebilehe ei ole adaptiivne, st peaaegu kogu ekraani ala võtab menüü navigeerimiseks ja põhisisu nägemiseks tuleb libistada paremale välja vaatamisalast. Samuti ei saa videoid telefonis vaadata. 6-tollisel ekraanil ei näe sa suurt midagi selgelt.
- Mõned asjad kursuses selgitatakse mitu korda, kuid tõeliselt vajalikud teemad pakkepõhiste võrkude kohta jäävad puudulikuks. Ma ei saanud aru, mis on globaalse eesmärgi osa harjutustes (näiteks, milleks on vajalik Max Pooling).
Elulookirjeldus
Kindlasti olete juba aru saanud, et ime ei juhtunud. Pärast selle lühikese kursuse läbimist ei ole võimalik tõeliselt mõista, kuidas neuronvõrgud töötavad.
Loomulikult ei suutnud ma pärast seda iseseisvalt lahendada oma ülesannet fotode klassifitseerimisel jaotusseadmete lülitite ja nuppude osas.
Aga kokkuvõttes on kursus kasulik. See näitab, mida saab teha TensorFlow abil ja millises suunas edasi liikuda.
Arvan, et pean esmalt õppima Python'i aluseid ja lugema vene keeles raamatuid neuronvõrkude toimimise kohta, enne kui hakkan TensorFlow'ga tegelema.
Lõpetuseks tahaksin tänada oma sõpru, et nad edendasid mind esimese artikli kirjutamisel 'Habr' lehele ja aitasid selle vormistamisel.
P.S. Olen rõõmus teie kommentaaride ja iga konstruktiivse kriitika üle.
Allikas: habr.com
