Wat is Deep Learning en wanneer gebruik je het?

blog-header

Deep Learning is al een aantal jaren een hot topic binnen Data Science. De potentie van Deep Learning is enorm en het wordt daarom steeds meer toegepast. Maar wat is Deep learning nou precies, en hoe moet het in de praktijk worden toegepast? In deze blog bespreken we hoe Deep Learning het best kan worden toegepast, en wanneer je het juist beter niet kunt gebruiken.

 

Wat is Deep Learning?

Deep Learning is een subonderdeel van Machine Learning, dat weer een subonderdeel is van Artificial Intelligence.

AI vs ML vs Deep Learning-2

Met behulp van computers zijn Deep Learners in staat patronen te leren van grote hoeveelheden data. Deep Learning is eigenlijk een term om een specifiek type neurale netwerken en gerelateerde algoritmen te beschrijven die vaak onbewerkte invoergegevens verbruiken. Hoe meer knooppunten en lagen zich in het neurale netwerk begeven, hoe meer geavanceerde patronen het model kan ontdekken. Voorbeelden van toepassingen van Deep lLearning zijn beeldherkenning, spraakherkenning, bordspel programma’s of vertalingen.

In traditionele Machine Learning algoritmen past een domeinexpert eerst feature engineering en feature selectie toe om de complexiteit van de data te verminderen. Dit maakt het voor traditionele Machine Learning algoritmen makkelijker om patronen te vinden. Echter, een groot voordeel van Deep Learners is dat ze op een incrementele manier zelf de relevante features uit gegevens kunnen leren.

 

Wanneer moet je Deep Learning wel gebruiken?

Deep Learning is aan te raden wanneer je een grote set data hebt waarvan je kan leren. Met een grote data set worden honderdduizenden, of misschien wel miljoenen datapunten bedoeld. Wanneer je zo veel data hebt zijn Deep Learners goed in staat accurate voorspellingen te leveren.

Hoe meer lagen en knooppunten de deep learner bevat, hoe `dieper’ het netwerk wordt. Hierdoor is het model in staat complexe patronen te ontdekken. Deep Learning blinkt daarom echt uit als het gaat om complexe taken, waarbij vaak veel ongestructureerde gegevens moeten worden verwerkt. Denk aan beeldclassificatie, taalverwerking of spraakherkenning. Deep Learners kunnen zelf de relevante features in de dataset ontdekken, wat er voor zorgt dat ze voor zulke complexe problemen accurater zijn dan standaard Machine Learning algoritmen.

De complexiteit van Deep Learners, het grote aantal lagen, de knooppunten en data die nodig zijn, zorgen ervoor dat Deep Learners erg traag zijn om te trainen. Daarbij vereisen ze veel rekenkracht. Wanneer je naast een grote dataset en een complex probleem ook nog de over de vereiste rekenkracht beschikt is Deep Learning waarschijnlijk de geschikte keuze om jouw probleem zo succesvol mogelijk op te lossen!

 

Wanneer moet je Deep Learning niet gebruiken?

Deep Learning is indrukwekkend, maar is zeker niet geschikt voor elke situatie. Er zijn bepaalde omstandigheden waarin Deep Learning waarschijnlijk niet de beste weg naar succes is!

Ten eerste werken Deep Learners niet goed met kleine data sets. Om een hoge accuraatheid te bereiken hebben Deep Learners extreem veel datapunten nodig om van te leren. Hoe meer gelabelde data er is, hoe beter het model presteert. Goed geannoteerde data kan duur en tijdrovend zijn om te verkrijgen. Mensen inhuren om handmatig data te verzamelen en te labelen niet efficient. Wanneer je niet beschikt over zo’n grote dataset is Deep Learning waarschijnlijk geen goede keuze. Voor kleinere datasets zijn klassieke Machine Learning algoritmen, zoals regressie en random forest, vaak een betere keuze dan Deep Learners.

Daarnaast is het gebruik van Deep Learners duur. Wanneer je iets redelijk op maat wilt doen zullen services als AutoML niet aan alle behoeftes voldoen. Voor meer op maat gemaakte modellen zul je bereid moeten zijn geld aan onderzoek te besteden. Daarnaast is het implementeren ook duurder omdat het veel rekenkracht kost om een Deep Learning netwerk te runnen. Deep Learners zijn erg tijd- en resource-intensief. Het gebruik van GPUs is tegenwoordig praktisch een vereiste geworden om Deep Learning algoritmen te gebruiken. Deep Learning is dus niet geschikt als je niet over deze benodigde rekenkracht beschikt.

Ten slotte zijn Deep Learners niet makkelijk te interpreteren. Deep Learners zijn in staat accurate voorspellingen te maken en de menselijke inspanning van feature engineering vermindert. Echter, het vergroot ook de moeilijkheid voor mensen om het model te begrijpen en te interpreteren. De interpreteerbaarheid van deze modellen is zelfs een van de grootste uitdagingen van Deep Learning! Het tunen van de hyper-parameters en het netwerkdesign (het aantal knooppunten en lagen in het netwerk) is vaak ook een uitdaging, vanwege het ontbreken aan een theoretische basis.

 

Conclusie

Deep Learning is wellicht de ideale oplossing voor je bedrijfsprobleem als de omstandigheden aan bovengenoemde criteria voldoen. Samengevat kunnen we de volgende conclusies trekken:

  • Deep Learning presteert beter dan andere technieken als de hoeveelheid data extreem groot is. Maar, met kleinere data sets werken traditionele Machine Learning algoritmen beter.
  • Deep Learning technieken hebben een hoogwaardige infrastructuur nodig om binnen een redelijke tijd te kunnen trainen. Wanneer dit niet mogelijk is kan beter worden afgezien van Deep Learning.
  • Wanneer er een gebrek is aan domeinexpertise voor feature-engineering, zijn Deep Learners in staat om zélf op incrementele wijze feature-engineering uit te voeren.
  • Wanneer je een complex probleem hebt, zoals afbeelding classificatie en spraakherkenning blinken Deep Learners echt uit en zullen ze traditionele Machine Learning technieken veruit verslaan in accuraatheid
  • Wanneer interpretatie van belang is zijn Deep Learners niet goed geschikt, en kun je beter overgaan op traditionele Machine Learning

Echter, of je nu kiest voor klassieke Machine Learning of Deep Learning, dé rode draad naar een succesvol project is dat er bij elke stap van het proces menselijk toezicht, evaluatie en besluitvorming moet zijn.

Meer weten?

Wil je meer weten over de voordelen van Deep Learning? Download dan de whitepaper "De 6 basisprincipes van een Data Science Project".

De 6 Basisprincipes van een Data Science Project