Wat is Deep Learning?


De termen artificiële intelligentie, neurale netwerken, machine learning (ML) en deep learning (DL) worden vaak door elkaar gebruikt, maar ze beschrijven verschillende niveaus van verfijning die computers helpen ruwe gegevens op een ‘menselijkere’ manier te verwerken.

deep_learning_hero

Wat is artificiële intelligentie?

Artificiële intelligentie (AI) is een alomvattende term die computersystemen beschrijft, die ontworpen zijn om meer zoals een mens te functioneren.

Wat zijn neurale netwerken?

Neurale netwerken maken gebruik van onderling verbonden knooppunten, gebaseerd op de werking van neuronen in de hersenen. Ze gebruiken algoritmen om patronen in onbewerkte gegevens te herkennen.

Wat is Machine Learning?

Machine learning beschrijft hoe neurale netwerken hun prestaties in de loop van de tijd kunnen verbeteren door "te leren" door middel van ervaring.

Hoe verschilt deep learning van machine learning?

Het verschil tussen deep learning en machine learning is dat DL een verder ontwikkeld ML is, door meerdere lagen (of diepte) van neurale netwerkknooppunten te gebruiken om data te verwerken en nuttigere en interessantere resultaten te produceren. Deep learning-systemen zijn voor velen pas onlangs toegankelijk geworden door de exponentiële prestatieverbeteringen in GPU-processors. Deze systemen zijn verantwoordelijk voor belangrijke verbeteringen in zelfrijdende auto's, fraudedetectie, handelssystemen en nog veel meer.

Soorten Deep Learning

Deep learning probeert het menselijk denken na te bootsen door vele lagen algoritmen te combineren om gegevens te verwerken. Aangezien de gegevens elke laag doorkruisen, vertalen de algoritmen bepaalde elementen van de gegevens in een numeriek formaat, dat het voor de lagen erna gemakkelijker maakt om deze te verwerken.

Gecontroleerd leren

Als iemand een taak onder supervisie leert, is er een leraar of trainer aanwezig die hen kan corrigeren als ze een fout maken. Voor een computer betekent dit dat de gegevens die worden verwerkt, correct zijn gelabeld, zodat de computer wordt gewaarschuwd wanneer deze een fout maakt.

Er zijn bij deep learning twee typen modellen van gecontroleerd leren — classificatie en regressie.

Classificatie: Een deep learning-model kan getraind worden met veel afbeeldingen van dieren. Vervolgens vergelijkt het een nieuw beeld met wat het heeft ‘geleerd’ van de trainingsvoorbeelden, voordat het probeert te voorspellen of het nieuwe beeld al dan niet een dier bevat. Het algoritme wordt dan beoordeeld op hoe nauwkeurig het een dier kan herkennen in een willekeurige afbeelding.

Regressie: Een andere manier is als het deep learning-model vele variabelen als invoer krijgt en dan wordt gevraagd om een waarde te voorspellen. Een voorbeeld hiervan is het bankwezen, wanneer klanten een lening aanvragen. Het model wordt getraind door duizenden aanvragen voor leningen te verwerken. Elk aanvraag bevat gegevens zoals het inkomen van de aanvrager, de kredietgeschiedenis, het banksaldo, de arbeidsstatus en andere details. Het model krijgt dan te horen of die aanvragers een lening kregen of niet. Het model zou daarna de gegevens van een nieuwe aanvrager krijgen en worden gevraagd te beoordelen of deze in aanmerking komt voor een lening.

Gecontroleerd leren wordt gebruikt wanneer er een groot aantal gelabelde gegevenspunten is — zoals afbeeldingen van dieren of details van aanvragers van leningen.

Ongecontroleerd leren

In dit geval ontvangt het deep learning-model geen labels voor de te verwerken gegevens, maar dient het gewoon zelf patronen te ontdekken.

Een voorbeeld is om duizenden liedjes in een deep learning-model in te voeren en dit vervolgens te laten bepalen hoe ze moeten worden gegroepeerd. Als wij als mensen naar muziek luisteren, herkennen we de structuur, instrumenten, tempo, stemmen en bpm, en categoriseren we dit in genres als punk, klassiek of techno. Het model voor ongecontroleerd deep learning weet niet wat een genre of instrument is, dus het zou zijn wiskundige ‘brein’ gebruiken om patronen in de nummers te vinden en nieuwe categorieën te creëren.

Semigecontroleerd leren

Dit is een combinatie van gecontroleerd en ongecontroleerd leren. Deep learning-modellen ontvangen een combinatie van gelabelde en ongelabelde gegevens. Er wordt enige structuur en begeleiding geboden, maar verder moeten ze hun eigen patronen zoeken. Bij het voorbeeld van muziek zouden de liedjes in dit geval enkele gegevenslabels voor elk nummer hebben, misschien de datum van dat ze voor het eerst uitgebracht werden. Dit zou kunnen helpen om het aanmaken van het patroon binnen het deep learning-model richting het gewenste resultaat te sturen.

Use cases voor deep learning en AI

De use cases voor deep learning zijn het afgelopen decennium exponentieel gegroeid. De technologie zal naar verwachting nog meer aan invloed winnen naarmate de algoritmes slimmer worden en rekenprestaties blijven toenemen.

Verschillende vormen van AI kunnen in allerlei use cases gebruikt worden. In feite is AI binnengedrongen in elk aspect van ons leven, omdat deze manier van gegevensverwerking computers efficiënter en beter maakt in hun interactie met mensen.

In de echte wereld was het nog maar kort geleden het geval dat spamfilters rudimentair waren en potentiële spam ontdekten door berichten met specifieke trefwoorden te blokkeren. Met de introductie van AI kunnen spamfilters verschillende aspecten van het e-mailbericht bekijken — waar het vandaan werd verzonden, naar wie het werd gestuurd, de context van het bericht zelf — voordat ze beslissen of ze het naar de inbox of de spammap van de ontvanger sturen.

Een ander voorbeeld zou een deep learning-model zijn dat realtime ruwe gegevens van een beveiligingscamera onderzoekt die op de voorkant van een benzinestation is gericht. De videocamera produceert ongeveer 25 afzonderlijke stilstaande beelden per seconde, die aan het model worden geleverd met een combinatie van de verschillende hierboven beschreven leersystemen.

Laten we aannemen dat het een landelijk gelegen tankstation is en niet erg druk is. Meestal tonen de beelden een leeg benzinestation met de benzinepompen en de voorkant. Na een tijdje kan het systeem zien dat het lege tankstation het "normale" station is. Wanneer een auto bij de pomp arriveert, ‘ziet’ het deep-learningmodel het voertuig en weet het dat er iets veranderd is. Na verdere verfijning kan het model het verschil zien tussen een auto, een motor en een vrachtwagen. Als het systeem ook nog eens wordt aangesloten op de kassa, is het geen enorme stap om te kunnen zien of het voertuig dat net weggereden is, wel of niet betaald heeft. Op deze manier worden meer lagen data-invoer en -verwerking toegevoegd om het systeem intelligenter en nuttiger te maken in de echte wereld.

Vergelijkbare modellen voor deep learning worden wereldwijd op luchthavens gebruikt om onbeheerde bagage te herkennen. Het deep-learningmodel onderzoekt videogegevens van beveiligingscamera's en herkent mensen die met hun koffers en tassen rondlopen. Met vele lagen van verfijning kan het algoritme leren om een alarm naar de beveiliging te sturen als het merkt dat een persoon zijn tas heeft neergezet en langer dan een paar ogenblikken weg is.

In de financiële wereld houden deep-learningsystemen markten in de gaten en proberen ze de bewegingen van diverse grondstoffen te begrijpen. Ze kunnen een groot aantal inputs in real-time verwerken en langzaam begrijpen hoe variaties in bepaalde waarden weer van invloed zijn op andere. De inputs kunnen heel verschillend zijn — zoals waarschuwingen voor extreem weer of politieke onrust, maar ook actuele marktprijzen. Na verloop van tijd kunnen ze vertrouwde patronen herkennen en voorspellen wat er daarna zal gebeuren. Zo zou het deep-learning model zich bijvoorbeeld kunnen realiseren dat een enorme cycloon die een regio met een aanzienlijk aantal bananenplantages nadert, waarschijnlijk zal leiden tot veel hogere bananenprijzen in het volgende seizoen. Dit soort inzichten kan uiterst waardevol zijn voor handelaren.

Deep learning-modellering wordt ook gebruikt in kerncentrales, fabrieken en datacenters. De systemen bewaken invoer vanuit Internet of Things (IoT)-sensoren en camera's op het terrein. Zodra het model weet hoe de installatie “normaal” werkt, kan het een alarm sturen als het ongebruikelijk gedrag opmerkt. Ongebruikelijk gedrag omvat zaken zoals apparatuur die niet correct werkt, een flinke storm buiten of bepaald personeel dat niet inklokt. Samen zouden deze kleine kwesties tot grotere problemen kunnen leiden. Deep learning-modellen zijn veel betrouwbaarder dan mensen bij het herkennen van een combinatie van kleine factoren die tot een ernstig probleem kunnen leiden, waardoor ingenieurs grote problemen kunnen vermijden voordat deze optreden.

Beperkingen en uitdagingen

Kwaliteit van de gegevens:  Systemen voor deep learning moeten gegevens onderzoeken. Daarom worden ze beperkt door de hoeveelheid en de kwaliteit van de ingevoerde gegevens. Als er niet genoeg gegevens zijn of de gegevens niet neutraal zijn, kan het algoritme niet nauwkeurig zijn en zal die tendens in de resultaten naar voren komen. Een deep learning-model krijgt bijvoorbeeld duizenden foto's van vogels als invoer en moet vervolgens een selectie van nieuwe foto's verwerken om foto's met vogels te vinden. Als de oorspronkelijke gegevens foto's bevatten van vogels in het wild, in een jungle, met bomen op de achtergrond, zou het deep learning-systeem – tenzij het specifiek geprogrammeerd was om de achtergrond en de omgeving te negeren – moeite kunnen hebben om een vogel te identificeren in een foto, die in een stedelijk gebied of in een omheining werd genomen.

Inflexibiliteit:  Als een deep learning-model eenmaal getraind is, kan het meestal alleen accurate resultaten leveren bij hetzelfde probleem en met hetzelfde type gegevens. Als de kwaliteit van de vogelfoto's in het bovenstaande voorbeeld wordt gewijzigd, is het mogelijk dat het systeem ze niet nauwkeurig kan vergelijken. Het model zou ook opnieuw moeten worden getraind als de gebruiker het systeem in plaats van vogels foto's van een ander dier wil laten identificeren. Dus zelfs voor soortgelijke taken hebben modellen voor deep learning specifieke training nodig — ze zijn niet flexibel.

Rekenresources:  Deep learning-modellen vereisen enorme hoeveelheden rekenkracht. De reden dat deep learning tegenwoordig populairder is dan tien jaar geleden, is vooral te danken aan de beschikbaarheid van multi-core processors en GPU's. Modellen voor deep learning hebben ook veel resources nodig qua RAM en opslag. Omdat er zoveel gegevens binnenkomen, kunnen traditionele harde schijven het mogelijk niet bijhouden. Daarom zijn SSD's noodzakelijk.

OVHcloud en deep learning

Deep learning is een techniek voor data science waarmee computersystemen grote hoeveelheden gegevens efficiënt kunnen verwerken om praktische en effectieve resultaten voor een onderneming te produceren.

Bij OVHcloud hebben we het potentieel van deep learning gezien en weten we hoe het reële problemen in een groot aantal sectoren kan oplossen.

We concentreren ons op het leveren van de allernieuwste tools die nodig zijn om systemen voor deep learning te ondersteunen en bedrijven te helpen een concurrentievoordeel te behalen.