Eigen Quickdraw

Kunstmatige Intelligentie/Technieken/Eigen Quickdraw

Creative Commons License
This work is licensed under a
Creative Commons Attribution-NonCommercial-ShareAlike 4.0
International License
.

Na de theorie over neurale netwerken is het tijd om kennis te maken met het trainen en gebruiken van neurale netwerken. In de Quickdraw opdracht heb je een getraind neuraal netwerk gebruikt. Misschien heb je daar doorgeklikt naar de manier waarop Quickdraw is getraind en heb je gelezen dat er miljoenen door gebruikers geleverde plaatjes zijn gebruikt in deze training. In de sectie Ecologische voetafdruk uit de vorige paragraaf heb je gelezen dat veel data veel rekenkracht kost om een model te trainen. De kracht van een gewone PC is niet toereikend, de jouwe dus waarschijnlijk ook niet, om deze training even over te doen. In de app die we je in deze sectie aanbieden gebruiken we wel de afbeeldingen uit de Quickdraw trainingsdataset maar hebben we de informatie behoorlijk verkleind om trainingen in een korte tijd plaats te kunnen laten vinden. In de app is, net als in de Quickdraw app, een schetsblok aanwezig waarmee je kunt kijken of je training een beetje succesvol is.

Stap 1:
download de dieren plaatjes en pak de gecomprimeerde mappen uit in een map naar keuze. Maak een map mixed aan en kopieer een aantal plaatjes van de map cat en de map dog naar de map mixed.
Stap 2:
Ga naar de app , die moet er uitzien als hieronder.
Stap 3:
Selecteer in de map mixed de plaatjes en sleep die in het train veld in het gestippelde kader.
Stap 4:
Druk op train. Je krijgt rechtsboven in het scherm een resultaat te zien.
Stap 5:
Selecteer uit de map cat of dog of de map mixed één plaatje en sleep die naar het test veld in het gestippelde kader. Of maak een eigen tekening in het tekenen veld en druk op inladen.
Stap 6:
Druk op test. Je krijgt rechtsboven in het scherm te zien of de app een kat of een hond detecteert.

Je kunt naar believen de stappen 3/m 6 hierboven herhalen met andere dieren. Ook is er nog een kleine verzameling of deze emoticons die je zou kunnen gebruiken.

Vragen
  1. In de app wordt een neuraal netwerk gebruikt met als input al de pixels (beeldpunten) van het plaatje (ieder pixel is één input), één verborgen laag met 5 knopen. Het aantal uitvoer knopen is gelijk aan het aantal dieren in de trainingsset. Hoeveel pixels bevat een plaatje? Hoeveel parameters moeten er worden geschat bij twee dieren?
    antwoord
    aantal pixels: 64 × 64 = 4096.
    aantal parameters: (4096+1)×5+ 2×6 = 20497
  2. Wordt een plaatje dat je in de training hebt gebruikt altijd juist beoordeeld?
    antwoord
    Hoogstwaarschijnlijk wel, maar als twee plaatjes voor verschillende dieren veel op elkaar lijken kan het best mis gaan.
  3. Wordt een plaatje dat je niet in de training zit altijd juist beoordeeld?
    antwoord
    De kans op een misser is groter dan bij plaatjes die in de training zijn gebruikt. De informatie in de tekening is nog niet door de applicatie gezien. Hopelijk is de overeenkomst met andere plaatjes groot genoeg.
  4. Lukt het om meerdere diersoorten toe te voegen?
    antwoord
    Voor iedere soort komt een extra output knoop.
  5. Voer trainingen uit met respectievelijk 16, 32 en 64 plaatjes per dier uit. Hoe zit het met de trainingstijden in deze gevallen? Herlaad wel na iedere poging de app, de plaatjes worden namelijk toegevoegd.
    antwoord
    Onze poging: 16 minder dan een seconde, 32 net een seconde, 64 ongeveer 6 seconden.