Als engineer heb ik neurale netwerken bestudeerd en een overzicht van de gratis cursus 'Udacity: Intro to TensorFlow for Deep Learning'

Gedurende mijn hele bewuste leven ben ik energietechnicus geweest (nee, dit gaat nu niet over een drankje met twijfelachtige eigenschappen).

Ik heb me nooit Ć©cht geĆÆnteresseerd in de wereld van de informatietechnologie. Zelfs wiskundige matrices kan ik waarschijnlijk niet op een briefje vermenigvuldigen. En dat heb ik ook nooit nodig gehad. Om een beetje inzicht te geven in de specifiĆ«ke aard van mijn werk, kan ik een geweldig verhaal delen. Op een dag vroeg ik een paar van mijn collega's om een klus in Excel te doen. Halverwege de werkdag kwam ik bij hen, en ze zaten data op een rekenmachine te tellen, ja, op zo'n gewone zwarte rekenmachine met knoppen. Dus over neural networks hoeven we het dan niet eens te hebben… Vandaar dat ik nooit bijzondere aanleiding heb gehad om me in de wereld van IT te verdiepen. Maar zoals men zegt: "het gras is altijd groener aan de andere kant", mijn vrienden hebben me de oren van het hoofd gepraat over augmented reality, neural networks en programmeertalen (vooral over Python).

Klinkt eenvoudig, en ik besloot: waarom niet dit magische vakgebied te leren om het in mijn eigen werkveld toe te passen.

In dit artikel zal ik mijn pogingen om de basisprincipes van Python te leren overslaan en mijn indrukken van de gratis TensorFlow-cursus van Udacity met jullie delen.

Als engineer heb ik neurale netwerken bestudeerd en een overzicht van de gratis cursus 'Udacity: Intro to TensorFlow for Deep Learning'

Inleiding

Om te beginnen moet ik zeggen dat, na 11 jaar in de energietechniek, wanneer je alles weet en kunt (en zelfs een beetje meer binnen jouw verantwoordelijkheden), het leren van totaal nieuwe dingen – aan de ene kant veel enthousiasme oproept, maar aan de andere kant ook fysieke pijn in de "tandwielen van je hoofd".

Ik besef nog steeds niet volledig alle basisconcepten van programmeren en machine learning, dus oordeel alsjeblieft niet te streng over mij. Ik hoop dat mijn artikel interessant en nuttig zal zijn voor anderen zoals ik – mensen die ver van softwareontwikkeling afstaan.

Voordat ik over de cursus ga spreken, wil ik zeggen dat je minimaal enige kennis van Python nodig hebt om deze te volgen. Je kunt een paar boeken voor beginners lezen (ik ben ook begonnen met een cursus op Stepic, maar heb die nog niet afgerond).

De cursus over TensorFlow bevat geen gecompliceerde constructies, maar het is noodzakelijk om te begrijpen waarvoor bibliotheken worden geĆÆmporteerd, hoe een functie wordt gedefinieerd en waarom daar iets in wordt geplaatst.

Waarom TensorFlow en Udacity?

Het belangrijkste doel van mijn studie was de wens om foto's van elektrische installaties te herkennen met behulp van neurale netwerken.

Ik heb voor TensorFlow gekozen omdat ik erover had gehoord van vrienden. En zoals ik begreep, is deze cursus behoorlijk populair.

Ik probeerde mijn studie te beginnen met de officiƫle tutorial .

En daar stuitte ik onmiddellijk op twee problemen.

  • Er is veel studiemateriaal, en het is in de war. Het was erg moeilijk voor mij om zelfs maar een ietwat samenhangend beeld te vormen van het oplossen van het probleem van het herkennen van beelden.
  • De meeste artikelen die ik nodig had, zijn niet in het Russisch vertaald. Het is zo gegaan dat ik in mijn kindertijd Duits leerde en nu, net als veel Sovjetkinderen, geen Duits of Engels weet. Natuurlijk heb ik in de loop van mijn bewustzijnsleven geprobeerd Engels te leren, maar het ging ongeveer zoals op de afbeelding.

Als engineer heb ik neurale netwerken bestudeerd en een overzicht van de gratis cursus 'Udacity: Intro to TensorFlow for Deep Learning'

Na wat verder te hebben gezocht op de officiƫle site, vond ik de aanbevelingen om een van de twee online cursussen.

te volgen. Zoals ik begreep, was de cursus op Coursera betaald, terwijl de cursus Udacity: Intro to TensorFlow for Deep Learning gratis, dat wil zeggen zonder kosten, kon worden gevolgd.

De inhoud van de cursus

De cursus bestaat uit 9 lessen.

De eerste sectie is een inleiding, daar wordt verteld waarvoor het eigenlijk nodig is.

Les nummer 2 bleek mijn favoriete te zijn. Hij was eenvoudig genoeg om te begrijpen en toonde ook wonderen van de wetenschap. Kortom, in deze les demonstreren de makers naast de basisinformatie over neurale netwerken hoe je met behulp van een enkelvoudig neuraal netwerk de temperatuur van Fahrenheit naar Celsius kunt vertalen.

Dit is echt een heel overzichtelijk voorbeeld. Tot nu toe zit ik na te denken over hoe ik een soortgelijke taak kan bedenken en oplossen, maar dan voor elektriciteit.

Helaas ben ik daarna vastgelopen, omdat het heel moeilijk is om onbekende dingen in een onbekende taal te leren. Wat me hielp, was dat ik een vertaling van deze cursus in het Russisch op Habr vond. De vertaling is van hoge kwaliteit, de Colab-notebooks zijn ook vertaald, dus verder keek ik zowel naar het origineel als naar de vertaling..

Les nummer 3 is in wezen een herstructurering van het materiaal van de officiƫle TensorFlow-tutorial. In deze les leren we met behulp van een meervoudig neuraal netwerk kledingafbeeldingen te classificeren (de dataset Fashion MNIST).

Les les nr. 3 is in feite een herschrijving van de materialen van de officiƫle TensorFlow-tutorial. In deze les leren we met behulp van een gelaagde neurale netwerk om afbeeldingen van kleding te classificeren (de Fashion MNIST-dataset).

De lessen van nummer 4 tot en met 7 vormen ook een variant op de tutorial. Maar omdat ze goed zijn samengesteld, is het niet nodig om zelf de volgorde van het leren uit te zoeken. In deze lessen wordt kort verteld over uiterst nauwkeurige neurale netwerken, hoe de leerprecisie kan worden verhoogd en hoe je het model kunt behouden. Daarbij gaan we tegelijkertijd de taak van het classificeren van katten en honden op een afbeelding oplossen.

Les nummer 8 is een geheel aparte cursus, met een andere docent, en de cursus is vrij omvangrijk. Deze les is gewijd aan tijdreeksen. Aangezien dat me voorlopig niet interesseert, heb ik het vluchtig doorgenomen.

De laatste les is nummer 9, die uitnodigt om een gratis cursus over TensorFlow Lite te volgen.

Wat leuk was en wat niet leuk was

Ik begin met de pluspunten:

  • De cursus is gratis
  • De cursus is over TensorFlow 2. Sommige boeken die ik heb gezien en sommige cursussen op internet waren over TensorFlow 1. Ik weet niet of het een groot verschil is, maar het is prettig om de actuele versie te leren.
  • De docenten in de video zijn niet irritant (hoewel ze in de Russische versie niet zo energiek lezen als in het origineel)
  • De cursus neemt niet veel tijd in beslag
  • De cursus zorgt niet voor een gevoel van somberheid of hopeloosheid. De opdrachten in de cursus zijn eenvoudig en er is altijd een aanwijzing in de vorm van Colab met de juiste oplossing, als iets niet duidelijk is (vooral de helft van de taken was voor mij niet duidelijk)
  • Je hoeft niets te installeren, alle laboratoriumwerkzaamheden van de cursus kunnen in de browser worden uitgevoerd

Nu de minpunten:

  • Er zijn praktisch geen controlematerialen. Geen toetsen, geen opdrachten, niets om de beheersing van de cursus op enige manier te controleren
  • Niet al mijn notebooks werkten zoals het hoort. Volgens mij gaf Colab in de derde les van de originele cursus in het Engels een foutmelding, en ik wist niet wat ik ermee moest doen
  • Het is alleen handig om op de computer te bekijken. Misschien begrijp ik het niet helemaal, maar ik heb de Udacity-app op mijn smartphone niet gevonden. De mobiele versie van de site is niet responsief, wat betekent dat het navigatiemenu bijna het hele scherm beslaat, maar om de hoofdinhoud te zien moet je naar rechts scrollen buiten het zichtbare gebied. Ook kunnen de video's niet op de telefoon worden bekeken. Op een scherm van net iets meer dan 6 inch kun je niets fatsoenlijk zien.
  • Sommige dingen in de cursus worden meerdere keren uitgelegd, maar echt belangrijke informatie over convolutionele netwerken wordt niet behandeld. Ik heb de globale doelstelling van een deel van de oefeningen (bijvoorbeeld waarom Max Pooling nodig is) niet begrepen.

Samenvatting

Zeker heb je al kunnen raden dat er geen wonder heeft plaatsgevonden. En na het volgen van deze korte cursus is het onmogelijk om echt te begrijpen hoe neurale netwerken werken.

Natuurlijk kon ik na dit niet zelfstandig mijn taak met de classificatie van foto’s van schakelaarknoppen en -knoppen in elektrische apparaten oplossen.

Maar over het algemeen is de cursus nuttig. Hij laat zien welke dingen je kunt doen met TensorFlow en in welke richting je verder kunt gaan.

Ik denk dat ik in eerste instantie de basis van Python moet bijleren en boeken in het Nederlands moet lezen over hoe neurale netwerken werken, en pas daarna aan TensorFlow moet beginnen.

Tot slot wil ik mijn vrienden bedanken voor het duwtje dat ze me gaven om mijn eerste artikel op 'Habr' te schrijven en voor hun hulp bij het opmaken ervan.

P.S. Ik kijk uit naar jullie opmerkingen en elke constructieve kritiek.

Bron: habr.com

Koop betrouwbare webhosting met bescherming tegen DDoS, VPS VDS servers šŸ”„ Koop betrouwbare webhosting met bescherming tegen DDoS, VPS VDS servers | ProHoster