Questions: première session
- Année: 2017-2018
- Durée: 2 heures
- Total: 15 points
- Documents: autorisés
- Types de documents autorisés: Tous les documents autorisés
- Calculatrices : non autorisées
Question 1
On considère une entreprise avec plusieurs sites web internes qui utilisent HTML et CSS. Votre objectif est de récupérer toutes les pages web de tous ces sites web internes afin de créer un répertoire centralisé. Vous avez accès à toutes les pages web (HTML et CSS), mais vous ne pouvez pas accéder aux bases de données utilisées par les sites web. Quelle est votre approche pour télécharger toutes les pages web ? Quels sont les inconvénients de votre approche? (1.5 points)
Question 2.a
Qu’est-ce qu’une base de données NoSQL? Quels sont les différents types de base de données NoSQL? Décrivez-les brièvement. (1 point)
Question 2.b
Considérons un capteur capable de mesurer les valeurs suivantes : luminosité, pression, rayonnements UV, température et humidité. Comment pouvez-vous représenter ces mesures quotidiennes dans une base de données NoSQL de votre choix? Expliquez avec un exemple. (1 point)
Question 3
Le nettoyage de données est une étape importante avant de faire l’analyse de données. Pourquoi ? Quels sont les différents types d’erreurs ? Comment peut-on les résoudre? (1 point)
Question 4
Quelles sont les différences entre classification et partitionnement de données ? Quels sont les différents algorithmes que vous avez utilisés pendant vos travaux pratiques pour faire la classification et le partitionnement? Quels sont leurs avantages et inconvénients? (1 point)
Question 5.a
Considérons un fichier CSV contenant les colonnes suivantes : pays, ville, année et population. Ce fichier contient les informations de la population des villes (de différents pays) enregistrées depuis 1900. Votre objectif est de coder en Python un programme qui peut lire ce fichier CSV et calcule les valeurs suivantes :
- La ville plus peuplée en année 2000
- Pour chaque pays, la population moyenne des villes en année 2000.
(2 points)
Question 5.b
En continuant avec notre fichier CSV de la population, nous supposons que nos données sont complètes et qu’il ne contient pas d’informations incorrectes. Notre fichier contient l’information sur la population des villes de 1900 à 2017. Votre prochain objectif est d’estimer (ou prédire) la population de chaque ville en année 2050. Coder en Python un programme pour réaliser cette tâche. (2.5 points)
Question 6.a
Qu’est-ce qu’un perceptron? (1 point)
Question 6.b
Qu’est-ce que un réseau de neurones récurrents? Comment-est-il différent des autres approches de réseau de neurones artificiels? (1 point)
Question 7
Pour votre projet, nous vous avons demandé de créer un système de recommandation pour les images. Décrivez votre système en détaillant les différentes étapes, les algorithmes et l’architecture? Comparez votre travail avec le cycle de vie de données. Quelles sont les étapes vous avez utilisées et quelles sont les étapes manquantes ? (1 point)
Question 7.b
Avant de télécharger et utiliser les données externes, quelles sont vos considérations? Quelle était votre démarche par rapport à cet aspect lors du déroulement de votre projet? (1 point)
Question 8
Vous trouverez ci-dessous une table détaillant les préférences de couleurs de 10 utilisateurs. La table contient 5 colonnes et 10 lignes. Chaque ligne correspond à un utilisateur. Chaque colonne correspond à une couleur et les valeurs dans la colonne contiennent soit 0 soit 1. Si la valeur est égale à 0, l’utilisateur ne préfère pas cette couleur, sinon la valeur doit être 1. Votre objectif est de trouver toutes les règles d’association dans cette table. Justifiez votre réponse. (1 point)
Utilisateur | C1 | C2 | C3 | C4 | C5 |
U1 | 0 | 0 | 0 | 0 | 0 |
U2 | 1 | 1 | 1 | 1 | 1 |
U3 | 1 | 1 | 1 | 1 | 1 |
U4 | 1 | 1 | 1 | 1 | 1 |
U5 | 0 | 0 | 0 | 0 | 0 |
U6 | 0 | 1 | 1 | 0 | 0 |
U7 | 0 | 0 | 0 | 0 | 0 |
U8 | 0 | 0 | 0 | 0 | 0 |
U9 | 0 | 1 | 1 | 0 | 1 |
U10 | 1 | 0 | 0 | 1 | 0 |