Machine learning werd lange tijd beperkt door het onvermogen om ruwe gegevens te verwerken. Decennialang was machine learning sterk afhankelijk van features engineering die ruwe gegevens (bijvoorbeeld pixels van een afbeelding) transformeerde in een interne representatie of feature vector op basis waarvan het lerende subsysteem, vaak een classifier, patronen in de input kon detecteren of classificeren. Maar met de overwinning in 2012 van een CNN (Convolutional Neural Network) in een beeldherkenningswedstrijd veranderde alles. Een drie decennia oude techniek waarbij enorme hoeveelheden gegevens en verwerkingskracht computers helpen om problemen op te lossen die mensen bijna intuïtief oplossen, veroorzaakte een rimpeleffect dat steeds meer aan kracht wint.
Diep leren zelf is een heropleving van een ouder idee voor computers: neurale netwerken. Het belangrijkste aspect van deep learning is dat lagen van kenmerken niet worden ontworpen door menselijke ingenieurs - ze worden geleerd door het menselijk leren na te bootsen via neuronachtige verbindingen van gegevens met behulp van een algemene leerprocedure.
Fig.1. Diep leren (van http://www.atelier.net/)
Deep learning heeft zich zo snel ontwikkeld dat het wordt gebruikt in vele aspecten van de moderne samenleving, van zoekopdrachten op het web tot het filteren van inhoud op sociale netwerken, tot aanbevelingen op e-commerce websites, en het is in toenemende mate aanwezig in consumentenproducten, zoals camera's en smartphones. Het blijft records breken in beeldherkenning en spraakherkenning, het heeft andere machine learning technieken verslagen in het voorspellen van de activiteit van potentiële medicijnmoleculen en het voorspellen van de effecten van mutaties in DNA en RNA op genexpressie en ziekte.
De Deep Learning Neurale Netwerken hebben veel voordelen:
- In staat zijn om een groot probleem in kleintjes te ontbinden.
- Neurale netwerken doen geen aannames over de verdeling van de gegevens.
- We hoeven niet handmatig nieuwe ingangen toe te voegen voor elk ander type gegevens dat we moeten analyseren.
- Laat parallelle verwerking toe en daardoor fouttolerantie. Als een element van het neurale netwerk faalt, kan het verdergaan via een ander pad.
- Zijn in staat om functies automatisch te detecteren.
Maar het is niet eenvoudig om er een te implementeren, er zijn geen algemene methoden om het optimale aantal neuronen en lagen te bepalen om een probleem op te lossen en een Deep learning-model is altijd afhankelijk van de kwaliteit en de hoeveelheid van de invoergegevens, zonder gegevens is het onmogelijk om te leren. Neurale netwerken lijken ook erg op zwarte dozen. Na het voeden van het neurale netwerk met de initiële parameters (initialisatie van het gewicht, bijvoorbeeld), weten we niet wat het neurale netwerk aan het doen is. Het is moeilijk om te weten hoe ze het probleem oplossen en om problemen op te lossen als ze niet werken zoals verwacht.
Maar ondanks alles hebben neurale netwerken zoveel moeilijkheden moeten overwinnen om zichzelf te bewijzen met zoveel successen, en Deep Learning staat nog steeds in de kinderschoenen en heeft nog zoveel potentieel te bereiken. In de komende jaren worden veel verbeteringen verwacht in de Deep Learning-algoritmen, die veel vooruitgang zullen brengen op gebieden als data-analyse, computer vision, spraakherkenning, bio-informatica, natuurlijke taalverwerking (onderwerpclassificatie, sentimentanalyse, vraagbeantwoording en taalvertaling), farmaceutica, gezondheid, auto-industrie en ga zo maar door.
De neurale netwerken hebben in het verleden een aantal diepe winters doorgemaakt, maar Deep Learning maakt vandaag deel uit van de wereld van morgen.
RICARDO SANTOS
EAI-consultant en IoT-evangelist bij Polarising
Integrating the world voor meer dan 10 jaar en enthousiast over het Internet of Things.
Hij helpt mee om op Polarising meer bekendheid te geven aan de toekomst van vandaag.
Als vechtsporter en nerd van de geschiedenis hoopt hij dat technologie ons zal helpen om te komen waar we moeten zijn.