Course content
From LRDE
This is a property of type Text.
C
DFS, BFS, plus courts chemins, circuits eulériens, couplages, connexité +
* Algorithmes récursifs, l'intérêt de la récursion terminale* Algorithmes diviser pour régner (ex. tri fusion, Karatsuba)* Programmation dynamique (ex.: distance de Levenshtein, chaîne de multiplications de matrices, plus longue sous-séquence commune)* Algorithmes gloutons (ex.: distributeur de monnaie, codage de Huffman)* Exponentiation rapide (et application à tous les monoïdes)* Calculs des plus courts chemins dans un graphe* Utilisation de l'exponentiation rapide de matrices pour les calculs
+
* Introduction aux mesures de complexité (notations, théorème général, exemples du tri par insertion et du tri fusion)
* Autres tri comparatifs (selection, tri par tas, tri rapide, tri introspectif)
* Borne de complexité des tris comparatifs
* Tris linéaires
* Rangs et médians (sélection stochastique, sélection en O(n))
* Structure de données classiques (tableaux statiques et dynamiques, listes, piles, files, files de priorité)
* Structures associatives (tables de hachage, arbre binaires de recherche, arbre rouge et noir)
* Principaux paradigmes algorithmiques : a) diviser pour régner (ex.: tri fusion, Karatsuba) b) programmation dynamique (ex.: distance de Levenshtein, chaîne de multiplications de matrices, plus longue sous-séquence commune) c) algorithmes gloutons (ex.: distributeur de monnaie, codage de Huffman).
+
* Journée 1
** Définition formelle des notations O, Θ, et Ω
** Propriétés de O, Θ, et Ω
** Utilisation pour le calcul de complexité
** Tri fusion
* Journée 2
** Théorème général pour le calcul de complexité
** Application sur plusieurs exemples
** Tas définition et opérations (avec leurs complexités)
* Journée 3
** Fin des algos sur le tas, et Tri par tas
** Quick Sort
** algo de base et partition avec première valeur comme pivot
** calcul de complexité
* Journée 4
** calcul de complexité de Quick Sort
** discussion sur l'implémentation d'un quick sort
** tri introspectif
* Journée 5
** Minoration du pire cas d'un tris comparatif
** Tris linéaires
+
* Rappel des notions mathématiques utilisées par la suite.* Introduction aux mesures de complexité (notations, théorème général, exemples du tri par insertion et du tri fusion)* Autres tri comparatifs (selection, tri par tas, tri rapide, tri introspectif)* Borne de complexité des tris comparatifs* Tris linéaires* Rangs et médians (min/max, sélection stochastique, sélection en O(n))* Structure de données classiques (tableaux statiques et dynamiques, listes, piles, files, files de priorité, arbres, B-arbres)* Structures associatives (tables de hachage, arbre binaires de recherche, arbre rouge et noir, skip lists)
+
- Méthode scientifique
- Biais expérimentaux
- Présentation des données
- Analyse des données
- Introduction à R +
* Types de machine parallèle, évolutions, besoins* Parallélisme sur les données en fonction de la dépendance,* Parallélisation d'algorithmes classiques (préfix, tri)* Programmation parallèle avec OpenMP et MPI
+
* Décision bayésienne.* Méthodes stochastiques.* Champs aléatoires.* Échantillonneurs.* Apprentissage.* Classification statistique.* Analyse d'images.
+
* Architecture des compilateurs* Outils de développement* Analyse lexicale* Analyse syntaxique* Syntaxe abstraite* Analyse sensible au contexte* Liaison des noms
+
* Contrôle des types* Langages intermédiaires* Passages d'arguments* Mémoire : hiérarchie des mémoires matérielles, gestion logicielle de la mémoire* Les microprocesseurs : CISC, RISC* Sélection d'instructions (génération de code)* Flot d'exécution* Vivacité des variables* Allocation de registres
+
* Eléments de théorie de l'information: codage et redondance d'un signal, entropie.
* Compression conservative: codage RLE, codage de Huffman, transformée de Burrows-Wheeler et codage bzip2, compression LZW.
* Échantillonnage et quantification d'un signal, théorème de Shannon, échecs des méthodes conservatives sur les signaux/images réel(le)s.
* Compression non conservative: rappels sur l'analyse de Fourier, transformée en cosinus discrète, transformée d'Hadamard, applications au traitement du son et traitement d'images.
* Algorithme JPEG: avantages et défauts.* Codage de la couleur: espaces colorimétriques, conversion RGB/YUV, transformée de Karhunen-Loève.
* Compression spatiale et temporelle: codage MPEG.
+
Voir polycopié. +
* classe et objets, encapsulation et masquage, références, flux, * héritage de classes, abstractions et modularité, transtypage, * les 4 formes de polymorphisme, dualité OO-généricité, tour des conteneurs standards,* exceptions, idiomes du C++, * inlining, entités de classes, RTTI, objects-fonctions, conclusion.
+
* C++ Coding Standards* Boost 1* Boost 2* Concurrency 1* Concurrency 2
+
* Historique d'Internet * Rappel sur la topologie d'Internet * La gouvernance de l'Internet * Sécurité et cryptographie * La e-économie* Le paiement électronique * La loi de l'internet (liberté d'expression, copyright, vie privée...) * La régulation de l'Internet * Le role de l'Etat * Les dérives mafieuses * La démocracie électronique
+
* Introduction de la vérification formelle et du model checking* Diagrammes de décision binaires (BDD)* Logique temporelle à temps arborescent (CTL) et vérification à l'aide de BDD* Diagrammes de décision hiérarchiques (SDD)* Logique temporelle à temps linéaire (LTL) et passage vers les automates de Büchi* Test de vacuité d'un automate de Büchi* Lutte contre l'explosion combinatoire de l'espace d'état* Hypothèses d'équité et automates de Streett* Introduction à Spin.
+
* Histoire et enjeux de l'imagerie médicale
* Physique des images, modalités
* Ouverture, traitement et enregistrement d'images médicales
* Reconstruction d'une image médicale à partir du signal machine
* Application des fondamentaux vus en TIF aux images médicales
* Visualisation volumique et rendu
+
* Formats d'images
* Signal et espace de Fourier
* Echantillonnage et quantification
* Filtrage linéaire
* Statistique, probabilité et classification
* Segmentation et champs de Markov
* Modèles physiques et énergétiques
* Optimisation combinatoire
* Topologie discrète et morphologie mathématique
* De la théorie des sous-ensembles flous aux croyances
* Théorie de l'information et fusion d'information"
+
* Tour d'horizon
* Introduction aux réseaux neuronnaux
* Exemple d'un programe écrit sous Keras
* Présentation rapide de TensorBoard
* Séparer des classes
* Écriture en Numpy d'un RN séparateur (optionnel, pour ceux qui désirent mieux comprendre la construction d'un réseau neuronal)
* Étude d'un CNN avec une réprésentation graphique des filtres de convolution sur l'image d'entrée (vidéo sur les convolutions)
* SVHN sous Keras (sur Kaggle)
* Un MNIST spécial sous Keras (sur Kaggle)
* Présentation du projet
+
1. Architectures massivement parallèles
2. Programmation des GPUs avec CUDA
3. Patrons de programmation efficace (Part 1: Memory consideration)
4. Patrons de programmation efficace (Part 2: Histogrammes et reductions) +
* Géométrie euclidienne et projective, formation de l'image.
* Rendu photoréaliste (raycasting, raytracing, pathtracing, pbgi...)
* Rendu temps réel (algorithmes de fenêtrage, remplissage...)
* Modélisation d’objets.
* Textures.
+
* Présentation de J2EE et le serveur d'applications Tomcat* Les Servlets* Les JSP (Java Server Pages)* L'API JDBC et l'accès à une Base de données * Les EJB 3 et JPA (Java Persistence API)* MVC et la bibliothèque de balises JSTL
+
Étude de cas pratiques en traitement d'images et reconnaissance des formes.
Approfondissement des notions vues en :
* traitement d'images
* morphologie mathématiques
* imagerie médicale
* reconnaissance des formes +
Ce cours est découpé en quatre séances :
* Logique propositionnelle et sa sémantique, preuves, systèmes à la Hilbert.
* Déduction naturelle, logique du premier ordre, normalisation.
* Lambda calcul, propriétés et applications.
* Lambda calcul simplement typé, isomorphisme de Curry-Howard. +
* Rappels sur la manipulation de polynômes (division euclidienne, décomposition en éléments simples).
* Transformée de Laplace: définition, principales propriétés algébriques et analytiques.
* Calcul pratique d'une transformée de Laplace et transformée de Laplace inverse.
* Fonction de transfert, réponse d'un système linéaire à une sollicitation simple.
* Échantillonnage des signaux et théorème de Shannon. Reconstitution d'un signal échantillonnée, bloqueur d'ordre 0.
* Transformée en Z: définition, principale propriétés algébriques et analytiques. Lien entre transformée de Laplace et transformée en Z
* Calcul pratique d'une transformée en Z et transformée en Z inverse, identification du domaine de convergence.
* Caractérisation d'un système linéaire discret par sa transformée en Z.
+
* Introduction* Théorie de la décision bayésienne* Méthodes d'évaluation des classifieurs* Réduction de Dimension (Analyse en Composantes Principales, Analyse Discriminante Linéaire (Analyse de Fischer))* Arbre de décision
+
* Introduction* Classifieur SVM* Kernel Tricks* KSVM* KPCA, KLDA* Extension Multiclasse de classifieurs binaires* Méthodes d'évaluation des classifieurs* TP de mise en pratique
+
* Cours 1: Introduction, Décrire et reconnaître un motif (1/2) : Classification simple avec apprentissage supervisé ou non (KNN, SVM, Random Forest, ANN …) ; espace de représentation et descripteurs : descripteurs de Fourier, de Gabor, moments de Zernike, codage de Freeman, HOG, Affine-Hessian, LBP…
* TP 1 (2 heures) : Détecter un motif – Où est Charlie ?
* Cours 2 (2 heures) : Décrire et reconnaître un motif (2/2) : Framework de Viola-Jones, point d’intérêt et détecteurs : laplacian, hessian, harris, MSER ; Validation géométrique (RANSAC…)
* TP 2 (2 heures) : Détecter et suivre un motif – Augmented Reality
* Cours 3 (2 heures) : Classification d’images : Pooling (average/max pooling, BoVW, Filter-learning, VLAD, Fisher kernels), spatial pooling, hierarchical pooling
* TP 3 (2 heures) : Classification d’images : caractères imprimés, images naturelles
* Cours 4 (2 heures) : Segmentation d’images : classification dense et régularisation (CRF…)
* TP 4 (2 heures) : Segmentation d’images de documents : séparation texte/fond
* Cours 5 (2 heures) : Recherche d’images (1/2) et Débruitage d’image : Approximate Nearest Neighbor ; architecture FLANN ; quantification, binarisation, hashing ; patch-based denoising
* TP 5 (2 heures) : Débruitage d’image avec une banque de filtres appris
* Cours 6 (2 heures) : Indexation et recherche d’images (2/2) : relevance feedback et query rewriting ; metric learning (malhanobis) ; embedding learning
* TP 6 (2 heures) : Recherche d’images : implémentation d’un moteur de recherche capable de traiter 1 million d’images
+
* la qualité en génie logiciel, * les cycles de vie d'un logiciel, * le paradigme des objets avec introduction à UML, * règles, principes et dilemnes, * les diagrammes UML, * les modèles par objets de .C++, Java, Eiffel et Ada
+
* Amélioration de la modularité, de l'extensivité et de la réutilisabilité des logiciels orientés-objets. * Maîtriser les motifs de conception (design patterns) classiques.
+
* Introduction, historique de la morphologie mathématique, motivations.
* Opérateurs de base : érosion, dilatation, opérateurs duaux.
* Filtrage : Filtres morphologiques classiques (ouverture algébrique, top hat...), filtres connectés
* Applications
+
* Définition générale d’un problème d’optimisation avec et sans contraintes, recherche de solutions.
* Résolution par Lagrangien et problème dual, conditions de Karush-Kuhn-Tucker
* Optimisation par descentes de gradient. Méthodes à pas optimal, gradient conjugué. Méthode de Newton.
* Analyse de complexité sous condition de stricte convexité.
* Optimisation par méthodes de points intérieurs.
* Étude d’un cas pratique : séparateurs à vaste marge.
+
# Introduction et historique
# Lisp / Haskell: tutoriel des différences
# Ordre supérieur
# Évaluation et Scoping
+
* Introduction à OpenGL
* programmation de shaders avec GLSL
* Méthodes de rendu dans une texture
* Accélération de rendu temp réel.
+
* Introduction to parallelism
* Instruction and data-level parallelism
* Thread level Parallelism
* Parallel Design Patterns (with TBB)
* Synchronization, Atomics & C++ Memory model
* Applied synchronization: from big fat lock to lock free data structures
+
* Numpy, la gestion efficace des tableaux
* Pandas, le super tableur super performant
* Quelques bibliothèques graphiques pour voir
+
* Introduction aux Bases de données * Modèle Entité /Association * Modèle rationnel, Début SQL (DDL) * Algèbre relationnel * Logique (CRT et CRD)* SQL (Interrogation, Modification, Vues, Privilèges) * Contraintes d'intégrité et Triggers * Conception et optimisation du schéma relationnel (dépendances fonctionnelles, formes normales)
+
* Modèle Entité /Association * Algèbre relationnel * Calcul relationnel * SQL * Dépendances fonctionnelles et Formes normales
+
* Modèle biologique* Généralités sur l’apprentissage* Neurone formel* Perceptron / Règle delta* Perceptron multi-couches / Rétro-propagation du gradient* Réseaux RBF* Carte de Kohonen
+
* Introduction / Historique * Architecture pour les systèmes * Gestion des processus * Ordonnancement des processus * Problématique de la synchronisation * Outils de synchronisation * Exemples de synchronisation * Interbloquages * Gestion de la mémoire * Mémoire Virtuelle * Systèmes de fichiers * Implémentation des systèmes de fichiers * Protection et sécurité * Un exemple de faille: le buffer overflow
+
# Introduction## Pourquoi la simulation numérique ?## Pourquoi les éléments finis ?# Rappels sur la méthode des différences finies## Discrétisation d'une équation aux dérivées partielles en 1D et en 2D## Construction du système matriciel.#Problèmes d'évolution## Discrétisation de l'équation de transport## Stabilité et consistance des schémas.# Introduction aux distributions ## Comment dériver une fonction discontinue## La formulation variationnelle# Les éléments finis## Méthode de Galerkin,## Construction du système matriciel.
+
* Introduction (Evolution de la synthèse d'images dans les jeux vidéo et dans le monde du cinéma)* Rappels ** Mathématiques** Formation de l'image* Principes généraux/Modélisation* Synthèse temps réel** algorithmes 2d fondamentaux (fenêtrage, remplissage...)** algorithmes 3d fondamentaux (fenêtrage, projection...)** OpenGL** RayCasting* Synthèse photo-réaliste** Raytracing
+
Typage, inférence de types Paradigme objet, composition Paradigme fonctionnel, Filtrage par motifs +
* Histoire de la théorie des graphes et applications diverses (Ponts de Königsberg, calcul de résistance dans un circuit, démonstration de la formule des alcanes, formule de Cayley)
* Vocabulaire (graphe orienté, non-orienté, arbre, cycle, composantes, rayon, diamètre, clique, nombre chromatique, ...)
* Représentation et codage des graphes (listes et matrices d'ajacence)
* Calculs de plus courts chemins (Dijkstra, Bellman-Ford, Floyd-Warshall,...).
* Lien avec la théorie des groupes (Plus court chemin = calcul d'une puissance de matrice)
* Graphes planaires (Formule d'Euler, Théorème de Kuratowsky, Théorème des 4 couleurs)
* Graphes cordaux (Triangulation, LexBFS, Coloration gloutonne, graphes d'intersection, application à l'allocation de registres).
+
* Bases
** Alphabet
** Mot
* Langage
** Langage Rationnels
** Langages Rationnels
* Expressions Rationnelles
* Automates Finis
* Grammaires
** Hiérarchie de Chomsky
** Grammaires Hors Contexte
** Automates à Pile
* Analyse Syntaxique
** LL(1), LL(k)
** LR(0), SLR(1), LR(1), LALR(1), LR(k)
** GLR, BackTracking
* Générateurs d'analyseurs
** Lex/Flex
** YACC/Bison
+
* Cours magistraux (5 x 2h):** Introduction, Langages** Expressions rationnelles** Automates (eNFA, NFA, DFA)** Déterminisation** Rationalité, minimization* TDs (5 x 2h)** Preuves, calculabilité et distances** Expressions rationnelles** Automates finis** Lemme de pompage et déterminisation** Stabilité des langages rationnels* TPs (3 * 2h)** Expressions rationnelles** Vaucanson 1/2** Vaucanson 2/2
+
* Introduction et histoire du traitement d’images
* Formation de l'image, perception, capteurs
* Codage et Représentations
* Espaces colorimétriques
* Histogrammes
* Domaines spatial et fréquentiel, filtrage, débruitage.
* Introduction à la morphologie mathématique
* Approches 3D, 2D+t et 3D+t
* Recalage, tracking et descripteurs
+
* Introduction* Formation de l'image* Histogramme* Filtrage (domaine spatial et fréquentiel)* Détection de bords/coins* Filtrage (Morphologie mathématique) * Compression* Introduction à la reconnaissance des Formes
+
* Décision bayésienne.* Modèle Probabiliste Simple et Apprentissage de Paramètres.* Modèle de Mélange et Algorithme EM.* Modèle de Mélange de Gaussiennes.* Chaines de Markov Cachées
+
* Introduction au traitement du signal de Parole* HMM : Reconnaissance de la parole.* GMM : Identification et vérification du locuteur* Synthèse de la parole.
+
* Histoire de l'informatique* Les premiers langages : FORTRAN, COBOL, ALGOL * La programmation objet : SIMULA, SmallTalk, CLOS, Eiffel* Les sous-programmes* La programmation générique* Traits de programmation fonctionnelle
+