Deep Learning

‘Deep learning’ is het toverwoord uit de Kunstmatige Intelligentie hoek, die de belofte met zich meebrengt op termijn ‘ware intelligentie’ te produceren. ‘Zelflerende systemen’ die met het tonen van enkele voorbeelden begrijpen wat je bedoelt én wilt. En waarom waarschuwen mensen zoals Elon Musk, Bill Gates en Stephen Hawking tegen de gevaren van het bereiken van de ‘singularity’? Laten we feiten van fictie scheiden.

Wat wordt er bedoeld

Eerst maar even over dat ‘singularity’ ding. Hiermee wordt bedoeld het punt in de, volgens Ray Kurzweil, nabije toekomst waarop de K.I. het intelligentieniveau van de mens overschrijdt. Dus een computer die slimmer is dan de mens. Het gevaar waarvoor ze, Elon, Bill en Stephen, waarschuwen is het feit dat de K.I. steeds beter wordt en dat wij de ontwikkeling ervan niet meer in de hand kunnen houden, waarbij er gemakshalve vanuit wordt gegaan dat de K.I. ons als gevaar gaat zien en zou willen uitroeien.

van-rooij

Ray Kurzweil, de auteur van het boek ‘The Singularity Is Near: When Humans Transcend Biology’, duidt het moment dat de K.I. ons eigen kunnen passeert, op ergens in het jaar 2045.

De basisgedachte achter dit alles is gebaseerd op feiten. Maak een grafiek van de rekenkracht van de gemiddelde computer als functie van de tijd. Bepaal hoeveel rekenkracht je nodig denkt te hebben voor een doel, zeg het simuleren van het menselijk brein, zoek dit punt op in je grafiek, na eventueel vakkundig extrapoleren, en je hebt een mooie voorspelling. Computers worden inderdaad steeds krachtiger en sneller. Met de huidige capaciteiten zijn er inderdaad al ‘intelligente’ resultaten, zoals de resultaten van IBM’s Watson in Jeopardy, de computer die Go grootmeesters verslaat en de talloze computers die diverse spelletjes uit de jaren ’70, ’80 en ’90 inmiddels op expertniveau spelen. Deze laatste computers werken veelal op basis van zogenaamde ‘Deep Learning’.

Moeten we ons oprecht zorgen maken? Hoe werkt Deep learning dan? En kan ik het misschien toepassen in mijn producten, om niet achterop te raken?

Werking van een neuraal netwerk

‘Deep Learning’ refereert naar een topologie van een neuraal netwerk. Een neuraal netwerk bestaat uit identieke rekenunits, ook wel neuronen genoemd, die een relatief eenvoudig rekensommetje uitrekenen. Aan de ingang wordt een getal, typisch tussen de 0 en de 1, aangeboden. Deze wordt vermenigvuldigd met een getal, ook wel gewicht genoemd. Een aantal van deze gewogen getallen wordt bij elkaar opgeteld en door een ‘activatie’ functie gehaald. Deze functie heeft als doel het resultaat te begrenzen tussen typisch 0 en 1 zodat de uitgang van een neuron als ingang van een ander kan dienen. Een neuraal netwerk wat uit drie opeenvolgende lagen bestaat, dus 3 neuronen achter elkaar, is in staat een willekeurige functie te leren. Het leren gaat als volgt in zijn werk: Het neuraal netwerk wordt van willekeurige gewichten voorzien. Vervolgens worden er voorbeelden van ingangssignalen aangeboden. Het uitgangssignaal dat het netwerk geeft wordt vergeleken met het gewenste signaal. Eventuele verschillen worden gecorrigeerd door met kleine beetjes de gewichten bij te stellen. Door dit proces veelvuldig te herhalen en ook met voorbeelden te werken die ongewenste resultaten geven, de zogenaamde negatieve voorbeelden, ‘leert’ het netwerk een functie na te bootsen die in de data verborgen zit. Omdat dit voor ieder willekeurige functie geldt, kan een enkel netwerk alles leren door simpelweg voorbeelden aan te leveren.

Standaard bestaat een neuraal netwerk uit slechts 3 lagen. Een Deep Network bestaat uit echter veel meer lagen, denk aan 7, 8 of soms wel 25. Hoewel de extra lagen verschillen van de lagen zoals zojuist beschreven, is het belangrijk te onthouden dat het ‘leren’ het instellen van gewichten is aan de hand van voorbeelden.

De praktijk

Wie even ‘Googelt’ komt al snel mooie resultaten tegen. Vele wetenschappers hebben zich op het ontwerp gestort. Er worden auto’s bestuurd, videospelletjes gespeeld, spelkampioenen verslagen, handschriften gelezen, et cetera. Dus als dit nu allemaal al kan, wat is er dan allemaal wel niet mogelijk, straks als computers nog krachtiger zijn?

Wie kritisch naar de technologie kijkt, ziet dat er van intelligentie geen sprake is. Plaatjes van katten worden gefilterd op een specifiek pixel patroon. Komt dit patroon voor dan is het een kat, anders niet. Dit betekent dat een brandweerauto die toevallig dit specifieke kenmerk bezit, dan ook als kat wordt aangezien, met meer dan 99,5% vertrouwen. Begrip van zaken zoals vacht, snorharen, positie van oren en ogen worden niet geleerd of gecategoriseerd. Deze vorm van technologie zal nooit ‘echte’ intelligentie bereiken, ongeacht de hoeveelheid rekenkracht die je er tegenaan gooit.

Daarentegen was het verhaal van zowel Ray, Elon, Bill en Stephen niet gebaseerd op ‘Deep Learning’ maar meer op de mogelijkheid dat er in de toekomst wel een technologie ontstaat die wel degelijk ‘echt’ intelligent te noemen is. Er zijn reeds voorbeelden van alternatieven die met dramatisch minder voorbeelden dingen kunnen leren en wel degelijk contextuele zaken leren en categoriseren. En deze systemen worden inderdaad enkel begrensd door veel te krappe rekenmogelijkheden van huidige computers.

Conclusie

Als Deep Learning dan ‘veilig’ is, kunnen we het dan al toepassen in de huidige industrie? De firma MVTec heeft in hun nieuwste Halcon softwarepakket een letter/cijfer herkenningsmodule gebaseerd op Deep Learning. En de meeste ervaring is dat met name letters en cijfers goed zijn te herkennen op basis van Deep Learning. Dus deze technologie kan wel degelijk nuttig worden ingezet voor problemen van vandaag. Zoals met elke nieuwe technologie is het van belang dat deze zorgvuldig wordt uitgekozen en ingezet. Mits goed toegepast, kan het voor, met name visie gebaseerde problemen, een alternatief zijn dat de moeite van het proberen waard is. Wie weet, misschien leert u er wel van.

Max van Rooij, van Rooij Electronics Design & Software Engineering

Geef een reactie

Het e-mailadres wordt niet gepubliceerd. Vereiste velden zijn gemarkeerd met *