Big Data hands-on

najaar 2021
UGent Academie voor Ingenieurs (UGAIN)

Een aantal praktische hands-on sessies rond het omgaan met Big Data waarmee u zelf aan de slag kan. Naast praktisch inzicht, wordt ook aandacht besteed aan valkuilen en good practices. Dit levert u essentiële praktische know-how op die u kan gebruiken voor uw Big Data projecten.

Module 1: Gegevensbeheer

Introductie tot NLP met Python

Tijdens deze lesavond maken we kennis met het domein van Natural Language Processing (NLP) en brengen we de basisconcepten en basisblokken aan die onontbeerlijk zijn in datatoepassingen die tekstuele gegevens verwerken. We zullen de hele keten doorlopen, vertrekkende van het inlezen van datasets, het opschonen van de ingelezen data, tot het berekenen van features en het implementeren van een eenvoudige AI-toepassing. Hiervoor maken we gebruik van de programmeertaal Python.

Let op! Basisvaardigheden in programmeren in Python – lijsten, woordenboeken, klassen en objecten, … – worden hier niet expliciet aangeleerd. Deze moet u reeds onder de knie hebben.

Lesgevers: Cedric De Boom, Thomas Demeester en Lucas Sterckx

NoSQL (Volume, Velocity)

Tijdens deze lesavond leert u hoe u grote datavolumes en snelle data-invoerstromen kunt beheren met NoSQL databanken. We leren u ‘high velocity streams’ weg te schrijven naar verschillende ‘data stores’ en confronteren u met de verschillen tussen NoSQL databanksystemen, relationele databanksystemen en systemen voor het beheer van tijdseries. Verder besteden we aandacht aan de manier waarop databanksystemen omgaan met het gelijktijdige, ‘high load’ operaties. Tenslotte laten we u ervaren welke impact verschillende parameterinstellingen en benaderingen hebben op het wegschrijven van data in een NoSQL databank.

Lesgevers: Toon Boeckling, Joachim Peeters en Yoram Timmerman

Datakwaliteit en data-integratie (Variety, Veracity)

De bedoeling van deze lesavond is om in de praktijk te leren omgaan met de twee andere hoofdkarakteristieken van Big Data, nl. kwaliteit en variëteit. We leggen hierbij de focus op technieken om de kwaliteit van data te meten. Er wordt onder andere gekeken naar volledigheid, courantheid en consistentie tussen metingen. Er wordt ook getoond hoe een kostenmodel kan gebruikt worden om kwaliteitsniveaus tastbaar te maken.

Lesgevers: Toon Boeckling, Joachim Peeters en Yoram Timmerman

Documentclassificatie

Op deze lesavond wordt er een praktisch overzicht gegeven van technieken om tekst-gebaseerde data voor te bereiden voor het trainen en evalueren van machine learning toepassingen. Daarnaast worden een aantal basisconcepten rond machine learning aangebracht, die ook voor de vervolgsessies belangrijk blijven. Er wordt gewerkt rond een toepassing die bestaat uit het automatisch classificeren van volledige documenten in specifieke categorieën via klassieke machine learning technieken.

Lesgevers: Cedric De Boom, Thomas Demeester en Lucas Sterckx

Module 2: gegevensanalyse

Het MapReduce-programmeermodel

In deze les leert u werken met gedistribueerde gegevensopslag en -verwerking. Eerst besteden we aandacht aan het gebruik van het Hadoop Distributed File System (HDFS). Daarbij leert u de basiscommando’s en illustreren we hoe u data nodes en name nodes kunt inspecteren en hoe u bestanden kunt opsplitsen in partities voor gedistribueerde dataopslag. Vervolgens brengen we u, aan de hand van MapReduce streaming, basiskennis bij over Hadoop MapReduce. We starten met enkele eenvoudige voorbeelden zoals word counting en gaan dan verder met iets moeilijkere oefeningen waarbij 2 MapReduce jobs noodzakelijk zijn. Tijdens de oefeningen leert u tevens hoe u MapReduce streaming applicaties kan debuggen en hoe u de ‘partitioner’, ‘combiner’ en ‘sort’ modules in Hadoop Streaming kan gebruiken. Ter illustratie voeren we een performantietest uit op de UGent HPC. Tenslotte leert u werken met Spark. We bestuderen de basisfunctionaliteit van Spark aan de hand van PySpark Shell / Notebooks, we leren werken met de Resilient Distributed Dataset (RDD) en leren omgaan met acties en transformaties, Stand-alone batch processing en interactive, schaalbare dataexploratie via Notebooks.

Vaardigheden: Basiskennis van Linux commando’s voor bestandsmanipulatie (cd / mv / rm / mkdir / rmdir / ls / cat / grep / head / tail / wc / etc). Basiskennis van programmeren in Python vereist. In principe zal het programmeerwerk zeer beperkt zijn (aanpassen scripts, lopen scripts, etc.).

Lesgevers: Dries Decap en Jan Fostier

De Kappa-architectuur

Tijdens deze lesavond kunt u proeven van enkele technologieën die gebruikt kunnen worden in een Kappa-architectuur. Deze architectuur is een courant gebruikte architectuur voor gedistribueerde gegevensverwerking en bestaat uit een samenstelling van de volgende technologieën:

  • Kafka: een gedistribueerd message systeem
  • Spark: een schaalbaar platform voor het analyseren van Big Data, dat zowel geschikt is voor stream als batch-analyses
  • HDFS: een gedistribueerd en shared file systeem
  • ArangoDB: een nieuwe populaire multimodale data store

Tijdens deze hands-on leren we u hoe u rechtstreeks op Kafka datastromen kunt invoeren en hoe u deze kunt analyseren. We leren u ook hoe u een eenvoudige data clean-up kunt doen met Spark en de resultaten hiervan kunt opslaan in HDFS. Vervolgens voeren we batch-analyses uit op de data in HDFS en sturen we de resultaten naar ArrangoDB. Tenslotte leren we u hoe uw bevindingen kunt presenteren via Notebooks.

Vaardigheden: Kennis van een programmeertaal of een scripttaal, zoals bijvoorbeeld Java, Scala, Python of Javascript, is vereist. Tijdens de sessie wordt Python als scripttaal gebruikt, maar alle nodige Big Data en Python specifieke concepten worden zeker tijdens de sessie behandeld, waardoor het voldoende is om te kunnen programmeren, los van taal en omgeving.

Lesgevers: Sander Borny, Merlijn Sebrechts, Gregory Van Seghbroeck en Bruno Volckaert

Deep learning

Het doel van deze lesavond is een praktische kennismaking met deep learning, opnieuw via een toepassing met tekst-gebaseerde data maar deze keer op zinsniveau. We maken oefeningen in Python. Na een korte inleiding in courante deep learning pakketten via python worden gradueel complexere modellen aangebracht. De reeds aangebrachte basisconcepten in machine learning worden uitgebreid met een aantal frequent gebruikte bouwstenen van diepe neurale netwerken. Daarnaast leren we u hoe training via gradient-gebaseerde optimalisatietechnieken werkt. De nadruk zal liggen op de praktische aspecten, eerder dan op de achterliggende wiskunde.

Lesgevers: Cedric De Boom, Thomas Demeester en Lucas Sterckx

Praktisch

  • Datum: najaar 2021
  • Locatie: UGent Academie voor Ingenieurs
    Technologiepark 60
    9052 Zwijnaarde
  • Contact: Els Van Lierde
    ugain@ugent.be
  • Taal: Nederlands
  • Doelgroep: personen met goede professionele vertrouwdheid met informatica en graag praktisch aan de slag wil met big data

Inschrijven

  • Schrijf je in op de wachtlijst
  • Prijs: €1.600
  • Attestering: aanwezigheidsattest
  • Voorwaarden: hogere opleiding informatica, of gelijkwaardige ervaring

Klaar om te starten?

Alle praktische info vind je op de opleidingspagina op de website van UGAIN.