Vous êtes sur la page 1sur 4

Ecole Supérieure Privée Technologies & Ingénierie

Type d’épreuve : Devoir Examen SESSION PRINCIPALE


Enseignant : Tlili Radhouene
Matière : Intelligence Artificielle
Année Universitaire : 2020-2021 Semestre : 1
Classe : CII-3-DMDW-A
X
Documents : Autorisés Non autorisés
Date : 13/12/2022 Durée : 1h30mn
Nombre de pages : xx
Barème : 20

Questions de cours :
NB : Répondez à 20 questions de cours parmi les questions proposées

1. Cochez les bonnes réponses :


a. Le machine learning (ML) est un domaine de l’intelligence artificielle
b. L’intelligence artificielle est un domaine du machine learning
c. Le machine learning est un sous-domaine du deep leraning
d. Le deep learning est un sous-domaine du machine learning
e. Le machine learning est la capacité de programmer des ordinateurs explicitement
f. Le machine learning est la capacité de programmer des ordinateurs à partir de
données et d’expériences passées
2. On fait appel au ML quand on est face à un problème :
a. pour lequel un algorithme efficace existe
b. pour lequel on n’a pas d’algorithme
c. pour lequel on a un algorithme de complexité très élevée
3. Cochez les bonnes réponses :
a. La reconnaissance du genre musical d’un morceau de musique est un problème de
reconnaissance de formes
b. La reconnaissance du genre musical d’un morceau de musique est un problème de
classification
c. La reconnaissance du genre musical d’un morceau de musique est un problème de
régression
d. Le regroupement de morceaux de musique par genre est un problème non supervisé
4. Selon que l’algorithme de ML nécessite ou non une intervention humaine en phase
d’apprentissage, nous classons les algorithmes de ML comme suite :
a. supervisé, non supervisé, instance-based
b. supervisé, non supervisé, semi-supervisé
c. supervisé, non supervisé, semi-supervisé, par renforcement
5. Cochez les bonnes réponses :
a. K-ppv est un algorithme de ML model-based
b. Linear Regression est un algorithme de ML model-based
6. Pour résoudre un problème par ML :
a. On a besoin uniquement de données
b. On a besoin de données et d’un algorithme d’apprentissage
c. On a besoin de données, d’un algorithme d’apprentissage et de la sélection d’un
modèle
7. Cochez les bonnes réponses :
a. Un problème de classification est un problème non supervisé
b. Un problème de classification est un problème où la cible est continue
c. Un problème de classification est un problème où la cible est discrète
8. Cochez les bonnes réponses :
a. Logistic Regression est un algorithme de régression
b. Linear Regression est un algorithme qui peut être utilisé en classification et en
régression
c. Decision Tree est un algorithme qui peut être utilisé en classification et régression
d. K-ppv ne peut être utilisé qu’en classification
9. Cochez les bonnes réponses :
a. Decision Tree convient aux données multimodales
b. La complexité de Decision Tree augmente avec la profondeur de l’arbre
c. La complexité de k-ppv augmente quand le nombre de voisins (k) augmente
d. La complexité de Linear Regression pour un modèle polynomial augmente quand le
degré du polynôme diminue
10. Cochez les bonnes réponses :
a. Quand la complexité du modèle augmente, il fait de l’over-fitting
b. Quand la complexité du modèle augmente, il fait de l’under-fitting
11. Cochez les bonnes réponses :
a. K-means est un algorithme de ML supervisé
b. ACP est un algorithme de ML non supervisé
12. Pour représenter en 3D des données multidimensionnelles en ayant le minimum de perte
possible :
a. On choisit 3 parmi les caractéristiques des données et on les représente selon ces 3
dimensions
b. On choisit à l’aide de l’algorithme ACP (PCA) les 3 premières dimensions et on
représente les données selon ces 3 dimensions
13. Vrai ou faux : En classification binaire, Logistic Regression est moins sensible aux données
aberrantes qu’un algorithme utilisant le principe de minimisation de l’erreur quadratique.
14. Vrai ou faux : L’algorithme Naive Bayes est qualifié de naïf parce qu’il fait l’hypothèse que les
caractéristiques sont indépendantes ?
15. Cochez les bonnes réponses :
a. Gaussian Naive Bayes convient aux caractéristiques binaires
b. Bernoulli Naive Bayes convient aux caractéristiques binaires
c. Multinomial Naive Bayes convient aux caractéristiques dont les valeurs sont des
compteurs d’occurrences
d. Multinomial Naive Bayes est très utilisé en classification automatique de documents
16. Vrai ou faux : Scikit leran implémente uniquement l’algorithme de Decision Tree CART ?
17. Cochez les bonnes réponses :
a. Dans une procédure de ML, on ne représente les données par des data frames
pandas que pendant la phase de préparation des données pour l’apprentissage
b. En scikit learn, on ne représente les données que par une matrice numpy pour les
traiter par un algorithme de ML
c. En scikit learn, il est possible de passer les données à un algorithme de ML dans une
data frame pandas
18. A quoi sert la méthode train_test_split du module sklearn.model_selection ? Pourquoi faut-il
l’utiliser ?
19. Que fait le bout de code Python suivant :
from sklearn.model_selection import train_test_split
X_train, X_test, y_train, y_test = train_test_split(X, y, random_state=0)
20. Après exécution du code précédent, quel pourcentage de données sera placé dans X_train ?
21. Après exécution du code suivant, quel pourcentage de données sera placé dans X_train ?
from sklearn.model_selection import train_test_split
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.5, random_state=0)
22. Après execution du code suivant, quelle quantité de données sera placé dans X_train ?
from sklearn.model_selection import train_test_split
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size= 50, random_state=0)
23. Ces deux instructions exécutées en séquence génèrent-elles les mêmes data set ?
X_train, X_test, y_train, y_test = train_test_split(X, y, random_state=0)
X_train, X_test, y_train, y_test = train_test_split(X, y, random_state=42)
24. Quel est le rôle du paramètre random_state dans la méthode train_test_split ? Quelle valeur
par défaut prend-il et que signifie cette valeur ?
25. Que fait ce bout de code ?
X_train, X_test, y_train, y_test = train_test_split( X, y, random_state=0, train_size=0.5,
stratify=y)
26. Pour évaluer différents modèles sur les mêmes données faut-il préciser ou non une valeur
pour random_state ?
27. Comment indiquer à Naive Base de ne pas calculer les probabilités à priori ? quelles valeurs
prend-il pour ces probabilités ? (priors=None)
28. Donnez un exemple où il vaut mieux donner les probabilités à priori à Naive Bayes au lieu de
le laisser évaluer ces probabilités.
29. Que fait ce bout de code ?
from sklearn.decomposition import PCA
X_reduced = PCA(n_components=3).fit_transform(X)
30. Que fait ce bout de code ?
knn = KNeighborsClassifier(n_neighbors=9)
knn.fit(X_train, y_train)
from joblib import dump, load
dump(knn, 'MonModeleKNN.modele')
Exercices
Exercice 1 :

Les deux figures ci-dessus représente deux nuages de points en fonction de caractéristiques de fleurs
d’Iris.

1. Quelle est à priori la meilleure caractéristique discriminante des trois classes de fleurs ?
Exercice 2 :

Après apprentissage sur un ensemble de données, le modèle obtenu donne une précision (taux de
réussite) égale à 0.97 sur les données d’apprentissage.

1. Que peut-on conclure ?

Exercice 3 :

La figure suivante montre l’évolution de la précision de l’algorithme d’apprentissage k-ppv sur un


dataset en fonction de l’hyperparamètre k.

1. Que peut-on déduire de ce tracé ?

Exercice 4 :

On considère la matrice de confusion suivante d’un modèle de machine learning à deux classes
(tumeur maligne (YES) et tumeur bénigne (NO)) :

1. Que représente la diagonale ?


2. Que représente la case supérieure droite ?
3. Que représente la case inférieure gauche ?
4. Calculez le taux de réussite du modèle ?
5. Calculer le taux de faux positifs
6. Calculez le taux de faux négatifs

Vous aimerez peut-être aussi