Artificial Intelligence, Machine Learning en Deep Learning: wat zijn de verschillen?

De één zegt machine learning te gebruiken, de ander noemt het artificial intelligence en weer een ander spreekt over ‘deep learning’. Je hoort en ziet deze termen ongetwijfeld erg vaak voorbijkomen. Maar wat betekent het allemaal? In dit blog kijken we naar de verschillen en overeenkomsten.

artificial intelligence, machine learning, deep learning

Wat is Artificial Intelligence?

Artificial intelligence is meer dan een buzzword. Zelfs jaren geleden werd de term al gebruikt. Maar de manier waarop is door de tijd heen wel veranderd. In de tijd van Alan Turing’s paper ‘Computing machinery and Intelligence’ in 1950 was de uitdrukking artificial intelligence grotendeels ‘gereserveerd’ voor een technologie die de intelligentie van mensen in grote lijnen kon nabootsen.

Tegenwoordig wordt de uitdrukking artificial intelligence, of gewoon AI, breed en vrij algemeen gebruikt. Artificial intelligence is de wetenschap die zich bezighoudt met -zover mogelijk- de computer te voorzien van menselijke intelligentie. Artificial intelligence is zelflerend en leert, net als mensen, om keuzes te maken. De technologieën die daarbij helpen zijn machine learning en deep learning. Machine learning is een tak van artificial intelligence. Deep learning is vervolgens weer een vorm van machine learning.

Wat is Machine Learning?

Op het meest basale niveau verwijst machine learning naar elk type computerprogramma dat zelfstandig kan 'leren' zonder expliciet door een mens te hoeven worden geprogrammeerd. Kort gezegd: machine learning leert machines hoe ze moeten leren. De uitdrukking en het onderliggende idee heeft zijn oorsprong in Turing's baanbrekende paper ‘Computing machinery and Intelligence’ in 1950.

In de afgelopen tien jaar heeft machine learning ons veel opgeleverd, zoals zelfrijdende auto's, effectief zoeken op het web, spamfilters, en praktische spraakherkenning bij bijvoorbeeld Google Assistent, Siri en Alexa. Machine learning is tegenwoordig zo doordrongen in het dagelijks leven dat je het waarschijnlijk tientallen keren per dag gebruikt zonder het te weten. Ook in de toekomst zal machine learning een belangrijke rol blijven spelen.

Er zijn verschillende machine learning methodes die onder te verdelen zijn in de volgende typologieën: supervised learning en unsupervised learning, en combinaties van beiden.

Supervised learning

Bij supervised learning traint de gebruiker het programma om een antwoord te genereren op basis van een bekende en gelabelde dataset. Hierbij krijgt het algoritme voorbeelden van invoer en bijbehorende uitvoer. Het leert op basis van deze voorbeelden hoe de eigenschappen van de invoer bepalend zijn voor de uitvoer. Na de leerfase kan het algoritme ook voor nieuwe invoer zelfstandig de juiste uitvoer produceren. Een veel gebruikte vorm is classificatie, waarbij de invoerelementen ingedeeld worden in groepen. Voorbeelden zijn beslisboomalgoritmes en Support Vector Machines

Unsupervised learning

Bij unsupervised learning genereren de algoritmen antwoorden op onbekende en niet-gelabelde data. Data scientists gebruiken doorgaans unsupervised technieken om patronen in nieuwe datasets te ontdekken. Bij unsupervised learning zijn geen voorbeelden van de gewenste uitvoer; het algoritme ontdekt zelf een structuur in de gegeven invoer. Dit kan bijvoorbeeld door de invoer te verdelen in groepen van elementen die op elkaar lijken, zoals bij de k-gemiddeld clusteranalyse.

Algoritmen voor machine learning worden geprogrammeerd door data scientists. In principe kan hiervoor bijna elke programmeertaal gebruikt worden. Ook zijn er vooraf gebouwde frameworks voor machine learning die te gebruiken zijn om het proces te versnellen, zoals MLlib van Apache Spark en Apache Mahout.

Wat is Deep Learning?

Deep learning is, naast shallow learning, een vorm van machine learning waarbij ook gebruik kan worden gemaakt van supervised algoritmen, unsupervised algoritmen of combinaties van beiden. Hoewel deep learning niet nieuw is, is het de laatste tijd wel enorm in populariteit toegenomen. Deep learning wordt ingezet om bepaalde moeilijke computerproblemen sneller op te lossen, bijvoorbeeld op het gebied van computervisie (met o.a. beeldherkenning) en natuurlijke taalverwerking (NLP).

Deep learning is gebaseerd op een tak van machine learning, namelijk representation learning. Deep learning-modellen leveren sneller resultaten op dan standaardbenaderingen voor machine learning. Een deep learning-model leert namelijk de functies die op zichzelf belangrijk zijn, in plaats van dat de data scientist de relevante functies handmatig moet selecteren. Dit komt doordat deep learning complexe abstracties op hoog niveau weet te extraheren via een hiërarchisch leerproces.

Het 'diepe' in deep learning komt van de vele lagen die zijn ingebouwd in de deep learning-modellen. Daar waar deep learning heel veel lagen kent, heeft shallow learning ‘maar’ één of een paar lagen. Deze lagen worden ook wel neurale netwerken genoemd. Neurale netwerken zijn systemen die gebaseerd zijn op de werking van de hersenen van de mens. Een speciale categorie neuraal netwerk is een Convolutional Neural Network (CNN). CNNs hebben heel veel lagen en zijn zeer effectief gebleken op gebieden als beeldherkenning en classificatie. CNN is erin geslaagd gezichten, objecten en verkeersborden te identificeren.

Deep learning kent een aantal frameworks binnen de software ontwikkeling, zoals Tensorflow van Google, Torch en Theano. In het filmpje hieronder zie je hoe wij deep learning hebben gebruikt in ons verkeerstelling project.

'Ik wil starten met machine learning. Maar waar begin ik?'

Relatief werken nog maar weinig bedrijven met moderne data verwerkingstechnieken als machine learning en deep learning. Daarom kan het lastig zijn om er mee te beginnen. Heb je plannen? Bel Paul Noordhuizen op om eens te sparren.

Sparren over Artificial Intelligence, Machine Learning of Deep Learning?

Bel met een expert

Paul Noordhuizen

06 484 31 088

Paul