Available courses

The general objective of the course is to provide an overall view of the ethics and sovereignty tools available as different options provided by digital infrastructures in support of the development of digital services and applications. This encompasses regulations, processes and governance rules as well as system, network and software architectures.

The course is divided in 9 sessions : 7 sessions of teaching + 2 project/evaluation sessions


The overall planning of the course is the following :

Jan/Feb 2025 (31 Jan, 3, 4 Feb)

Three courses devoted to EU regulations : General data protection Regulation (GDPR), Digital Markets Act (DMA) & Digital Services Act (DSA) and Artificial Intelligence Act


May 2025 (19, 26, 27, 28 May)

Four courses devoted to governance issues of digital infrastructures, covering Internet, Telecommunications networks, Cloud & cybersecurity, software and open source, Artificial Intelligence and system architectures


June 2025 (12, 16 Jun)

The last two sessions are devoted to projects : they will consist in case study definition and analysis in small groups. Each group defines a use case (application, service, appliance, …) and analyses the corresponding ethics and sovereignty aspects that must be taken into account.


Evaluation will be based on the project presentations.


The course presents the field of intelligent data analysis as a novel research and application domain and offers students the instruments that will allow them to develop different data analysis applications.

Topics:

  • Introduction
  • Introduction to fuzzy sets
  • Fuzzy logic, fuzzy reasoning
  • Fuzzy control systems
  • Introduction to rough sets
  • Applications of rough sets
  • Fuzzy clustering
  • Multivariate analysis
  • Feature extraction, performance analysis
  • Applications of data analysis

The students will gain an understanding of the different regulations, laws, and practical aspects of academic ethics and integrity, pertaining to research and development in computer science.

Topics :

  • Introduction. Responsibility, ethics, and integrity of the software developer in creating a software product.
  • Scientific research, grants, and projects.
  • Scientific articles: creation, structure, evaluation, acceptance criteria, presentation.
  • Evaluation of research, and academic rankings.
  • Research funding, resources, conflicts of interest.
  • Ethical aspects of research, ethics in multidisciplinary research.
  • Plagiarism and intellectual property.
  • Ethics in the digital era.

Description:  

The aim of the course is twofold : on one side it provides an introduction to the general principles of networking and an overview of the main protocols of the TCP/IP stack, on the other side more advanced topics involving the evolution of network and transport layer protocols are presented.  

 Topics: 

  • Delay, loss and throughput in packet-switched networks 
  • Protocol layers and their service models 
  • Transport layer services and protocols  
  • Evolution of transport layer protocols : TCP variants, DCCP and QUIC 

Complementary content: 

  • Refresh on architectural principles of telecommunication networks
  • DNS: basic mechanism and security-oriented evolution 
  • Refresh on IP addressing implication in routing
  • Link-state routing protocols
  • IPv6: architectural principles and security issues 
  • Congestion control and congestion avoidance in TCP.  


The course intercalates theoretical lectures and lab sessions. The main idea consists of presenting the theoretical background of a specific subject, followed by a lab session in which students will learn more details about each model and algorithm with practical examples using the most popular tools and libraries available. The course includes hand-on lab sessions with practical assignments, some of which are evaluated.

The course is connected-systems oriented, which means that, in addition to the most popular datasets, like MNIST and California houses, students will also see other examples of network-related datasets.

Topics:

  • Introduction to AIML.
  • Practical skills and Linear Regression.
    • Lab: end-to-end work, exploratory data analysis.
  • Supervised Learning and Classification (Decision Trees and Random Forest,  Bayesian Detection, Non-Parametric Classifiers)
    • Lab: Classification, Linear and Quadratic Discriminants, K-nearest neighbors (KNN).
  • Dimensionality Reduction
    • Lab: Principal Component Analysis (PCA), Multiple Discriminant Analysis (MDA).
  • Unsupervised Learning
    • Lab: Clustering
  • Artificial Neural Networks, Deep Neural Networks (DNN)
    • Lab: Neural Networks, Multi-Layer Perceptron (MLP)
  • Training enhancement techniques (e.g. Ensembles, in DNN)

complementary content:

  • Bases on Reinforcement Learning
    • Lab: Bases of Reinforcement Learning
  • Data processing tools (e.g. TensorFlow, Scikit learning)

Lab: management of time-series in Recurrent Neural Networks (RNN)


Prerequisites:  

  • Basics of data and databases. 

  • Basics of programming. 

  • Working knowledge of Python. 

  • Working usage of Command Line Interface (CLI). 

 

Pedagogical objectives:  

In an age defined by the sheer magnitude, diversity, and speed of data production, expertise in Big Data Technologies is indispensable. Traditional data management tools are insufficient for managing this data avalanche, necessitating innovative solutions. Our advanced course, 'Big Data Technologies’, is tailor-made to equip students with the knowledge and hands-on skills crucial for navigating the realm of Big Data. 

Our goal is simple: to instill a profound understanding of Big Data principles, frameworks, and state-of-the-art tools necessary for constructing resilient data systems capable of handling massive and intricate datasets. Throughout this course, students will master the basics of Big Data, recognize its pivotal role in today's data-centric world, and become proficient in employing various technologies and frameworks to design and implement scalable data solutions. 

By the end of this intensive program, students will emerge with a refined skill set, enabling them to harness Big Data technologies adeptly, analyze data on a massive scale, and architect data systems primed for real-world challenges. Graduates will be primed to meet the burgeoning industry demand for skilled Big Data professionals, positioning them as invaluable assets in our data-driven landscape. 

 

Description:  

The STC will cover the following topics: 

  • The big picture: tech megatrends.  

  • Data modelling: Data vs data representation; Structured vs unstructured data; Relational data model; Semi-structured data models; Examples: csv, json, xml etc.; Graph data models; Data model vs data format; Data streams; Batch vs stream processing.  

  • Characteristics of big data: The 3 (5) Vs, Big data vs Small data; Getting value out of big data, Big data strategy.  

  • Big data management systems: Relational DBs; No-SQL DBs.  

  • Storing big data: HDFS; Data warehouse; Data lake; Object storage.  

  • Big data retrieval: Querying SQL; Querying JSON; SPARQL.  

  • Big data ingestion: Ingestion infrastructure; Message queues; Pub/Sub; MQTT; Apache Kafka.  

  • Batch processing: MapReduce; Apache Spark; Dask.  

  • Stream processing: Spark Streaming; Apache Flink. 

  • Advanced architectures: from data lakes/DWH to delta lakes & lakehouse architecture


Evaluation modalities: 

Written quiz; a project assignment to perform after the STC execution will also be evaluated. 



Topics:

  • Python programming (beginner): Programming in Python (variables, conditional structures, lists, arrays, loops, etc.). Writing functionalities in the Python environment.
  • Object-oriented programming (advanced): Principles of object-oriented programming in Python (classes, abstraction, etc.).
  • Files and data structures in Python: Read and write files using different data formats (csv, json…)
  • Use of packages: Discover virtual machines and libraries in Python. Realize Data manipulation and data visualization using specialized packages (Pandas, Numpy, Matplotlib). Writing a report using Jupyter Notebook. Manipulate packets using Scapy.