Machine Learning for Artificial Intelligence track

Objectives
Data science is an emerging scientific domain that aims to extract knowledge from data generated in ever-increasing quantities (Big Data). This ‘new’ science is one of the driving forces behind artificial intelligence, particularly through the study and design of machine learning methods. The MLAI track (A2IA in french) aims to train engineers and researchers specialising in this field, who will be the data managers and data scientists of tomorrow.
Open to international
Courses during the third and fourth semesters are taught in English, in order to welcome English-speaking students and prepare French-speaking students for mobility. Internships are offered every year in our partner laboratories abroad (Belgium, Denmark, Canada, etc.), as was the case for the students in our section "Abroad".
Projects and internship
Individual project and internship are an important part of the MLAI track, with:
- Internship or project during the second semester : an internship in a research lab or in a company lasting at least 8 weeks or a project to be carried out independently at the University under the supervision of a member of the teaching staff.
- Project in the third semester : an individual project, which can be an introduction to data science research.
- Internship in the fourth semester : an end-of-study internship lasting between 4 and 6 months, to be carried out in a company or in a research laboratory.
Programme
The objective of this teaching unit is to achieve greater fluency in oral expression in English in general and professional contexts such as public speaking or during an English interview or meeting. Alone or in a team within a small group, it is a question of being able to work and present arguments orally at a B2 level of the CEFR. In particular, this involves:
- Learning the methodology of public speaking.
- Intensive work (specific workshops) on the rules of pronunciation of the English language (British or North American accent) to aim for authentic oral expression.
- The acquisition of vocabulary and expressions specific to written and oral communication in general and professional contexts.
The objective of this course is to present the basics of machine learning (the different types of contexts/tasks/applications), to understand how the main machine learning methods work, and to give the experimental methodological principles for setting up implementing these methods. The goal is to master the different tasks of machine learning, to understand the differences between the methods and their operating principle and to know how to set up an experimental protocol to test and compare these methods on real data sets. The topics covered are:
- Parametric and non-parametric, generative or discriminant classifiers (Gaussian estimation, Parzen estimator, k nearest neighbors, linear separator (perceptron, SVM))
- Hierarchical classifiers (decision trees)
- Neural networks (MLP)
- The selection of models
The objective of this teaching unit is to introduce the issue of the Web of data both from a historical and technical point of view. These are the technologies of the Semantic Web that make it possible to implement the fundamental principles of this Web of data. This is accompanied by a stack of standards issued by the World Wide Web Consortium (W3C) that this course offers to understand both theoretically and practically. The primary objective of this course is to enable students to acquire knowledge of the operation of the Semantic Web and its architectural principles. This is essential for a good understanding of today's Web given the growing role played by Semantic Web technologies. The secondary objective is to train in the standards of the Semantic Web in order in particular to achieve a concrete and mastered understanding of the notion of ontology and their ability to implement reasoning and deductions from new data. The targeted skills are:
- Understand the concept of Web of data and know the architectural principles of the Semantic Web.
- Master the representation languages adapted to the publication of linked data on the Web (RDF model).
- Master the main aspects of the SPARQL query language which allows the querying and modification of (linked) data through the Web.
- Understand the notion of ontology and the languages used to write them (RDFS, OWL, SKOS).
The objective of this teaching unit is to learn about graphic interface design with Web technologies. It aims to train in the use of HTML / CSS technologies for the creation of Web interfaces, with an emphasis on modern techniques of responsive web design. At the end of this course, students should be able to design multi-media adaptive graphical interfaces, that is to say that are functional on all types of screens (mobile, tablet, computers, etc.). This course does not cover concepts of ergonomics or graphics, but focuses on the technical mastery of dedicated tools. The targeted skills are:
- Master HTML5 for structuring web documents.
- Master the key principles of CSS for the formatting and visual and functional rendering of these pages.
- Master the fundamental techniques of responsive web design (flexible layout, flexible media, media queries, etc...).
The objective of this teaching unit is to present the theoretical and practical tools allowing the processing of random signals, in particular on aspects related to signal filtering. It is a question of mastering the classic approaches for such treatments. The targeted skills are:
- Theoretical deepening of signal processing tools.
- Putting into practice the methods seen in class.
The objective of this teaching unit is to know how to organize teamwork around a development project using AI:
- Know and implement the principles of team management (cycles, agility, etc.)
- Master common project management tools (diagrams, dashboards, version tracking, etc.)
The objective of this teaching unit is to present methods for finding the minimum of a function of R^n by descent with or without constraints, methods which are present in many learning algorithms. It is a question of mastering the theoretical aspects and of being able to implement these methods of descents
The objective of this teaching unit is to master classical and advanced unsupervised data analysis techniques for the purpose of data visualization or dimension reduction. It includes practical work sessions during which the methods are programmed in Python language. It is about understanding the assumptions behind the different data analysis models and implementing modern data analysis techniques
The objective of this teaching unit is to design professional documents (CV and cover letter) consistent with a professional objective and to prepare for the job interview.
The objective of this course is to achieve greater fluency in oral expression in English in general and professional contexts such as public speaking or during an English interview or meeting. Alone or in a team within a small group, it is a question of being able to work and present arguments orally at a B2 level of the CEFR. In particular, this involves:
- Learning the methodology of public speaking.
- Intensive work (specific workshops) on the rules of pronunciation of the English language (British or North American accent) to aim for authentic oral expression.
- The acquisition of vocabulary and expressions specific to written and oral communication in general and professional contexts.
The objective of this teaching unit is to present the problem of combinatorial optimization and the reference approaches to deal with such problems. It will make it possible to master the standard algorithms for solving operational research problems (dynamic programming, mathematical programming, branching algorithms, etc.). The teaching unit provides students with a basic culture in operational research, which makes them able to model a combinatorial optimization problem and to choose the appropriate approach to solve it and to evaluate it.
The objective of this teaching unit is an introduction to multilayer neural networks and their error gradient backpropagation learning algorithm. The SGD algorithm is presented and the problem of the disappearance of the gradient in deep architectures is highlighted. The various techniques for controlling this phenomenon are presented. Convolutional networks are then discussed, and highlighted for face recognition applications. Recurrent network architectures are presented for speech recognition. The architectures of adversary networks make it possible to approach the techniques of generation of false data. The objective is to understand and master modern supervised and weakly supervised learning techniques based on neural network architectures, and deep neural networks. Understand and master the optimization algorithms specific to these architectures. Know how to implement these algorithms using dedicated computing environments in Python language, such as Tensor Flow, Keras, or PyTorch.
The objective of this teaching unit is to deepen the fundamental theoretical concepts of machine learning in general, but also of the most emblematic generalist methods. At the end of this course, students will be familiar with the theoretical foundations of machine learning, will understand the motivations behind the different existing approaches and will master the operation of the most emblematic generalist methods.
The objective of this teaching unit is to deal with the different hardware architectures in the field of massive data processing as well as the methods and tools to make the best use of these different architectures. This teaching will address the hardware aspects, in particular memory (local or distributed on several machines) and different programming paradigms and tools on distributed architecture. The objective is to provide students with the basic knowledge and skills in distributed computing which make them able to use this type of infrastructure and to port their algorithms to such infrastructures and to familiarize them with the associated technologies (frameworks, files, etc.).
The objective of this teaching unit is to apply for at least 8 weeks the theoretical lessons received during the course period, within the framework of academic or industrial projects. The projects are carried out within the URN. The internship can be carried out in the laboratory or in a company.
The aim of this unit is to prepare students to defend their project and/or internship. Students are trained to prepare an oral presentation (scientific or professional), to present a scientific contribution to a specialist or non-specialist audience and to identify, formalise and defend a professional project.
This course aims to enable students to master the rules of written and oral communication in English in general and professional contexts.
The objectives of this UE are to achieve greater fluency in oral expression in general and professional contexts such as public speaking or during an interview in English, and to master the language tools specific to professional written communication.
The targeted skills are the acquisition of vocabulary and expressions specific to written and oral communication in general and professional contexts.
This course presents the different architectures in the field of High Performance Computing (HPC): shared memory computers, distributed memory computers, GPU based accelerators... as well as the methods and tools to use these different architectures. This teaching will address the notions of computing power, profiling and optimization of computing performance, massively parallel computing and porting to GPUs. A focus will be made on the energy consumption of this type of infrastructure. The objective is to provide students with a basic culture of HPC, which will enable them to use this type of infrastructure and to improve their algorithms to adapt them to the use of such infrastructures. A second objective is to make students aware of the energy and environmental impact of using these infrastructures.
Skills and learning objectives:
- Use of HPC resources
- Identification and resolution of performance issues
- Parallelization of computational algorithms
- Adapting algorithms for use on GPUs
This course is one of the possible choices for UE 3: Machine Learning and Artificial Intelligence 1.
Program: (1) Lasso, Group Lasso (variable selection), (2) non-convex optimization, (3) proximal, (4) scikit-learn and ML tools, (5) advanced visualisation and clustering, (6) ChatGPT
Skills and learning objectives:
- Discover a panorama of recent statistical learning methods and optimization tools
This course is one of the possible choices for UE 3: Machine Learning and Artificial Intelligence 1.
The course chronologically describes the main algorithms and methods for sequence recognition, used in speech recognition, handwriting recognition, natural language processing, gesture analysis, and video analysis. The emphasis is on the algorithms rather than the applications: Hidden Markov Models, Conditional Random Fields, Neuro-Markovian Models, Recurrent Neural Networks, and Attention Models. These algorithms are partially implemented by the student during practical sessions, and then experimentally implemented on a problem of learning and recognition of sequences of handwritten symbols. The module evaluation consists of an oral presentation of the experimental results obtained by the student on the various topics covered in the practical sessions. The emphasis is on personal experiments that cannot be conducted during the practical sessions due to practical computational time constraints.
Goals:
- Understand and master the algorithms from the literature in sequence analysis.
- Master the experimental implementation of these algorithms on the topics proposed during the practical sessions, which lead to personal experimental work.
Skills and learning objectives:
- In-depth knowledge of statistical inference algorithms in sequences, "designer" approach.
- Experimental mastery of these algorithms implemented on one of the deep learning platforms such as TensorFlow or Pytorch.
This course is one of the possible choices for UE 3: Machine Learning and Artificial Intelligence 1.
This course presents an overview of learning methods applied to graph-based representations. After an introduction to graph-based representations and standard algorithms for manipulating such structures, approaches for matching graphs, computing dissimilarities between graphs or folding graphs into a Euclidean space are discussed. The course ends with a presentation of the most recent approaches to deep learning in graphs.
The objective is to provide students with a culture of graph data processing, with state-of-the-art methods.
Skills and learning objectives:
- Develop learning models on graphs
- Adapt models to the specificities of the processed data
- Analyze the performance of a learning model
This course is one of the possible choices for UE 3: Machine Learning and Artificial Intelligence 1.
In these courses we will see advanced methods in :
- Image denoising (bilateral filtering, NLM filtering, ROF model, deep image prior)
- Image segmentation with variational approaches (deformable active contours, level sets) as well as graph cut, NCut, Felzenschwab, superpixel methods (SLIC)
- Image segmentation with deep learning, using CNN (UNet) and Transformer (vision transformer)
- object detection (computer vision approaches, region proposal, deep learning architectures)
- DL architectures for denoising, style transfer, colorization, reconstruction, super-resolution, generative models (diffusion models)
Skills and learning objectives:
- know the current advanced image processing methods to perform low-level and high-level tasks in images
This course is one of the possible choices for UE 3: Machine Learning and Artificial Intelligence 1.
This course is an introduction to reinforcement learning. It aims at introducing the fundamental concepts and their modern transposition with deep learning tools. The program includes: (1) Bandit, (2) MDP, exact resolution, (3) Monte-Carlo methods, (4) Time difference, (5) Tabular methods, recursions, (6) Approximation by deep networks.
Skills and learning objectives:
- Implementation of a reinforcement learning environment
- Learning algorithms
This course is one of the possible choices for UE 3: Machine Learning and Artificial Intelligence 1.
(1) Transformers, (2) diffusion models, (3) generative models, (4) Normalizing flows, (5) Graph Neural Networks (GNN).
Skills and learning objectives:
- Know the latest architectures of deep learning based models
The objective of this course is to teach students how to read, summarize, comment on, and reproduce scientific articles, and to be able to establish a state of the art in a specific field.
Skills and learning objectives:
- Being able to perform targeted literature search using appropriate tools
- Having an understanding of scientific publications (conferences, journals)
- Being able to read, summarize, comment, and reproduce scientific articles, and being able to establish a state-of-the-art in a specific field
The aim of this course is to inform students about the functioning of a company and to help them adopt a professional attitude.
- The company, its different aspects
- The employee, rights and contracts
- Management, teamwork, brainstorming
- Project monitoring
This course is one of the possible choices of UE 1: Machine Learning and Artificial Intelligence 2.
- Medical image acquisition & features
- Methodology design in medical image analysis
- Medical image segmentation, evaluation metrics for medical image segmentation
- How to mitigate the need for labeled data (weakly supervised learning, semi-supervised learning)
- Image registration
- Characterization of images : Statistical attributes, Co-occurrence matrix, Multifractal analysis, Filtering, Representation of shape. Feature extraction with auto-encoder
- Multimodal medical image fusion. Information Fusion (Fuzzy sets, Belief functions, Probability theory). Deep learning based fusion
Skills and learning objectives:
- medical image preprocessing
- be able to propose methods to solve problems of outcome prediction, image classification and segmentation.
This course is one of the possible choices of UE 1: Machine Learning and Artificial Intelligence 2.
This course will present the general principles of NLP, the different tasks in the field, the main models of Machine and Deep Learning
Goal:
- Know how to carry out a project of automatic processing of textual data by Machine and Deep Learning
Skills and learning objectives:
- Knowing how to prepare textual data
- Knowing how to train and evaluate NLP models
- Knowing how to choose a model adapted to the task
This course is one of the possible choices of UE 1: Machine Learning and Artificial Intelligence 2.
This course aims to master the use of mathematical and computer tools to create Computer Vision (CV) applications. The objective of this course is to cover all the tools used for CV applications, starting from geometric concepts (projective geometry, transformations) to object recognition, passing through image processing techniques used to detect and match primitives exploited in most CV applications.
Skills and learning objectives:
- Understand the mathematical tools involved in CV
- Apply the theoretical knowledge learned in class to develop CV applications
- Develop CV applications using the most widely used CV library: OpenCV
This course is one of the possible choices of UE 1: Machine Learning and Artificial Intelligence 2.
This course presents the problem of information retrieval. It presents different indexing and querying models, as well as preprocessing methods used to feed these models, and methodologies for evaluating and optimizing systems.
The objective is to provide students with an understanding of the problem of information retrieval and present the main models (binary, vectorial, probabilistic), specific treatments for text manipulation (segmentation, stemming, lemmatization...), as well as aspects of interaction with users aimed at optimizing results (relevance feedback, query disambiguation/expansion...).
Skills and learning objectives:
- Modeling an information retrieval problem
- Picking an information retrieval model for a specific problem
- Implementing text processing in order to feed these models
- Evaluation of information retrieval systems
This course is one of the possible choices of UE 1: Machine Learning and Artificial Intelligence 2.
This course focuses on the application problem of image search, a particular case of information retrieval, and more specifically on content-based image retrieval techniques. Within this framework, we address issues related to query modes, image representation (feature extraction, vector representation, local vs. global characterization of images, deep representation) for indexing and information retrieval, similarity calculation between representations, user feedback, performance, and scalability. We also cover object detection, spotting (word and pattern), and learning a model for image retrieval from few examples.
The objective is to present the evolution of the application domain of image search, particularly content-based image retrieval, and provide an overview of state-of-the-art image retrieval techniques.
Skills and learning objectives:
- Be able to design a content-based image retrieval system by evaluating the influence of the representation mode, the choice of similarity measure, and post-processing to ensure system reliability.
- Be able to develop a simple content-based image retrieval engine in Python, and evaluate its performance.
- Be able to develop a scalable engine in Python.
- Be able to compare different image retrieval systems.
This course is one of the possible choices of UE 1: Machine Learning and Artificial Intelligence 2.
Acquire the essential skills for the development of applications allowing human-machine interactions.
Goals:
- Acquire essential skills for developing applications that enable intuitive human-machine interactions adapted to the user and the context.
- Illustrate the concept of proactivity in an HMI that proposes behavior and/or adapted information, even when the user does not explicitly request it.
- Illustrate these concepts with concrete examples.
- Introduction to research (literature review, modeling and solving a scientific problem, etc.)
Skills and learning objectives:
- Formal models for interaction (automata, HMM, MAS, seq2seq, graphs, ...)
- Virtual and Augmented Reality (human-agent/robot interaction, mixed communities, ubiquitous computing, ...)
- Behavioral capture (gesture and facial expression recognition, categorization of behaviors, ...)
- Interactions (chatbots, embodied conversational agents, opinion mining, sentiment analysis, social network analysis)
This course is one of the possible choices of UE 1: Machine Learning and Artificial Intelligence 2.
The course is intended to give the students a fairly comprehensive view of fundamentals and techniques for combining multiple classifiers or machine learning models.
Goal:
- To master the art of combining classifiers.
Skills and learning objectives:
- Multiple Classifiers Systems (motivation, terminology, applications, taxonomy of fusion methods: sequential, parallel, hybrid architectures)
- Combining/fusion operators (class-based, rank-based, measure based; parametric, non parametric; stacking)
- Ensemble of classifiers (diversity in ensembles, cross-validated committees, bagging, boosting, random subspaces, ECOC, random forests and variants, XGBoost)
Individual project with a theoretical study, development and experiments. This project may constitute an initiation to research.
Application of the theoretical teachings received during the course period in the framework of academic or industrial projects.
The internship can be carried out in a laboratory or in a company.