IFT6758: Data Science - Sciences des données – Fall 2021 – Taught in person

Version française ci-dessous

An introductory but intensive graduate level class on data science.

Listed as IFT6758: Science des données

This is a graduate class that caters to an international crowd. Assignments, exams will be available in french and english. Students are always encouraged to submit their work and ask questions in their language of preference.

IMPORTANT: Please do not register for this class unless you have read and carefully considered all the class requirements listed in the prerequisites page.

IMPORTANT: Make sure you learn how to use that email inbox and check it often. We will not be able to add you using alternative email addresses.

We will add all registered students to Piazza and Gradescope. You will receive invitations and announcements to your email address associated with your registration. For the majority of you this is an email address that ends in @umontreal.ca. You should be able to access it here with your UdeM/Synchro credentials. If you do not have UdeM credentials, please contact UdeM’s IT support.

If you registered late (i.e. did not have access to Studium on September 1st), or if you want to audit this course then please complete this form to be added to class resources.

The following links will become active shortly before our first lecture.

  • Piazza for all our communications.
  • Gradescope for submitting your work and seeing your grades.

People - Équipe

Instructor - Instructeur: Gauthier Gidel,

Teaching assistants - Assistants d'enseignement:

Communication

All of our communication will happen through the class Piazza page. Registered students will be added to the Piazza page automatically on the day before the first class.

Some office hours will happen on Zoom to accommodate remote students. You will receive an announcement.

Homework submission and evaluation will happen on Gradescope. You will be invited to the class’s Gradescope page automatically during the first week of classes. If you are auditing, you will not be added to Gradescope and you will not be able to submit homeworks.

Important: Make sure that you learn how to use and are checking your @umontreal.ca email inbox. That is were you will receive announcements and invitations to class online services.

The class’s studium page will only be used for initial coordination with registered students until they get access to Piazza. There will be no discussions on Studium.

Important notice on email communication: This is a very large class, so the instructor will not be able to respond to individual questions about the class via email. Exclusively in the event that you have a question of a sensitive, personal nature: Please feel free to email the instructor. Please start the subject of your email with “[IFT6758]”; otherwise your email might be lost.

Class and lab times

The instructor’s lectures are on

  • Tuesday at 11:30 - 12:20 ET -- Pav. Jean coutu S1-151
  • Thursday at 16:30 - 18:20 ET (Including a 10 mins break btw 17:20 and 17:30) -- Pav. 3200 Jean Brillant Room B-2305

Weekly labs led by a TA on

  • Tuesday at 12:30 - 14:20 ET

Updated information can always be found by following the instructions below “TROUVEZ L’HORAIRE D’UN COURS” at the bottom of this page and more precisely on your student centre (Centre /Synchro)

Content and objectives of class

This course is an introduction to data science (DS), a science that combines statistics, data processing, machine learning, scientific inquiry, visualization, business analytics, and big data. The purpose of data science is to adress or gain insight into some problem in the real world by the application of computational and statistical techniques.

The course will cover the following subjects:.

Notions covered (indicative titles):

  • Conda
  • Version Control
  • Databases
  • Pandas
  • Containers
  • Data Visualization
  • Data collection, web scraping
  • Feature engineering
  • Regression
  • Hypothesis Testing
  • Classification Problems with Scikit-Learn
  • Feature Selection, outlier detection
  • Unsupervised Learning
  • Algorithmic Bias
  • Deep Learning (short lecture)
  • Computer Vision domain
  • Text Domain (NLP)
  • Graph domain

Labs

The labs would essentially be tutorial sessions to learn about various essential frameworks and tools used in data science. It will be a chance to apply the ideas gained from the lectures using python programming. These are also opportunities to get familiar with these frameworks and gain practice to do the data challenge and the final course project, and of course to apply them to your own data science problems that you deal with later.

Some frameworks/libraries that would be covered in the lab sessions are :

  • numpy
  • pandas
  • matplotlib, seaborn
  • scikit-learn
  • keras
  • OpenCV
  • NLTK

Academic fraud and plagiarism

ATTENTION: The University of Montreal now has a strict policy in case of fraud or plagiarism. If an infraction is found, the professor is required to report to the director of the department. An administrative procedure is then automatically triggered with the following consequences: the offense is noted in your file, and a sanction is decided (which can be serious and go to dismissal in case of recidivism). It is important that you do the work yourself!

Version Française

Un cours gradué intensif sur les sciences des données.

Listé en tant que IFT6758: Science des données

Il s'agit d'un cours gradué qui s'adresse à une audience internationale. Les devoirs, les examens seront disponibles en français et en anglais. Les étudiants sont toujours encouragés à soumettre leur travail et à poser des questions dans la langue de leur choix.

IMPORTANT: Veuillez ne pas vous inscrire à ce cours à moins d'avoir lu et examiné attentivement toutes les exigences du cours énumérées sur la page des prérequis.

Nous ajouterons tous les étudiants inscrits à Piazza et Gradescope. Vous recevrez les invitations et les annonces à votre adresse e-mail associée à votre inscription. Pour la majorité d'entre vous, il s'agit d'une adresse courriel qui se termine par @umontreal.ca. Vous devriez pouvoir y accéder ici avec vos identifiants UdeM/Synchro. Si vous n'avez pas d'identifiants UdeM, veuillez contacter le support informatique de l'UdeM.

IMPORTANT : Assurez-vous d'apprendre à utiliser cette boîte de réception et vérifiez-la souvent. Nous ne pourrons pas vous ajouter en utilisant d'autres adresses e-mail.

Si vous vous êtes inscrit tardivement (c'est-à-dire que vous n'aviez pas accès à Studium le 1er septembre), ou si vous souhaitez auditer ce cours, veuillez remplir ce formulaire à ajouter aux ressources de la classe.

Les liens suivants deviendront actifs peu de temps avant le premier cours.

  • Piazza pour les communications.
  • Gradescope pour soumettre vos travaux et voir vos notes.

People - Équipe

Instructor - Instructeur: Gauthier Gidel,

Teaching assistants - Assistants d'enseignement:

  • Head TA - Assistant principal: Pravish Sainath (contact him for general questions - contactez le pour les questions d'ordre général)
  • Head of project TA - Assistant chargé du projet: David Dobre (contact him for questions specific to the project - contactez le pour des questions spécifiques au projet)
  • TAs - Assistants d'enseignement: Arka Mukherjee, Pavithra Parthasarathy-Rajasekar, and Yitang

Communication

Toute notre communication se fera via la page Piazza de la classe. Les étudiants inscrits seront automatiquement ajoutés à la page Piazza la veille du premier cours.

Certaines heures de bureau auront lieu sur Zoom pour accueillir les étudiants distants. Vous recevrez une annonce.

La soumission et l'évaluation des devoirs se feront sur Gradescope. Vous serez automatiquement invité à la page Gradescope de la classe la veille du début des cours. Si vous effectuez un audit, vous ne serez pas ajouté à Gradescope et vous ne pourrez pas soumettre de devoirs.

Important : Assurez-vous d'apprendre à utiliser et de vérifier votre boîte de réception de courriel @umontreal.ca. C'est là que vous recevrez des annonces et des invitations aux services en ligne de cours.

La page studium de la classe ne sera utilisée que pour la coordination initiale avec les étudiants inscrits jusqu'à ce qu'ils aient accès à Piazza. Il n'y aura pas de discussions sur Studium.

Avis important sur la communication par e-mail : Il s'agit d'un très grand cours, donc l'instructeur ne pourra pas répondre aux questions individuelles sur le cours par e-mail. Exclusivement dans le cas où vous avez une question de nature sensible et personnelle : N'hésitez pas à envoyer un e-mail à l'instructeur. Veuillez commencer l'objet de votre e-mail par « [IFT6758] » ; sinon votre e-mail pourrait être perdu.

Heures de cours et de laboratoire

Les cours de l'instructeur sont activés

  • Mardi à 11h30-12h20 ET -- Pav. Jean coutu S1-151
  • Jeudi à 16h30-18h20 ET (y compris une pause de 10 minutes entre 17h20 et 17h30) -- Pav. 3200 Jean Brillant salle B-2305

Laboratoires hebdomadaires dirigés par un assistant technique

  • Mardi de 12h30 à 14h20 HE

Les informations mises à jour peuvent toujours être trouvées en suivant les instructions ci-dessous « TROUVEZ L'HORAIRE D'UN COURS » au bas de cette page.

Contenu et objectifs de la classe

Ce cours est une introduction à la science des données (DS), une science qui combine les statistiques, le traitement des données, l'apprentissage automatique, la recherche scientifique, la visualisation, l'analyse commerciale et les mégadonnées. Le but de la science des données est d'aborder ou de mieux comprendre un problème dans le monde réel par l'application de techniques informatiques et statistiques.

Le cours couvrira les sujets suivants :.

Notions abordées (titres indicatifs) :

  • Conda
  • Contrôle de version
  • Bases de données
  • Pandas
  • Conteneurs
  • Visualisation de données
  • Collecte de données
  • Ingénierie des représentations
  • Régression
  • Test d'hypothèse
  • Problèmes de classification avec Scikit-Learn
  • Sélection des représentations, détection des valeurs aberrantes
  • Apprentissage non supervisé
  • Biais algorithmique
  • Apprentissage profond
  • Vision
  • Texte
  • Graphes

Évaluation

Veuillez noter que certains détails de ce schéma d'évaluation pourraient être légèrement ajustés d'ici le début du semestre.

Quizz hebdomadaires (10 %) : Nous aurons un quiz hebdomadaire en ligne au début des cours tous les jeudis du semestre. Il consistera en de courtes questions sur le cours de la semaine dernière et il sera administré sur Gradescope. Pour accueillir des étudiants de différents fuseaux horaires, le quiz sera ouvert quelques heures avant l'heure de début du cours. Une fois que vous aurez commencé le quiz, vous aurez 15 minutes pour le terminer. Nous aurons au moins 12 quiz au cours du semestre; vos 6 meilleurs scores au quiz seront utilisés pour calculer votre score au quiz semestriel (10 % de votre note finale).

Devoirs de programmation (25 %) : 5 séries de devoirs de programmation (5% chacun) comprenant la programmation et l'expérimentation. Les devoirs seront soumis individuellement.

Projet (30 %) : Le projet sera divisé en trois étapes (10% chacune).

Examen de mi-session (15 %) : Cet examen chronométré aura lieu à une heure précise et se déroulera en personne. Nous aurons cet examen après les vacances d'octobre (heure exacte à confirmer).

Examen final (20%) : Examen sur l'ensemble du matériel de classe à la fin du semestre (sera en personne). Date exacte et format à annoncer.

Fraude académique et plagiat

ATTENTION : L'Université de Montréal a maintenant une politique stricte en cas de fraude ou de plagiat. Si une infraction est constatée, le professeur est tenu d'en faire rapport au directeur du département. Une procédure administrative est alors automatiquement déclenchée avec les conséquences suivantes : l'infraction est constatée dans votre dossier, et une sanction est décidée (qui peut être grave et aller jusqu'au licenciement en cas de récidive). Il est important que vous fassiez le travail vous-même !