Classification, Apprentissage, Décision TP1
INITIATION À PYTHON & À SK-LEARN
Le site http://www.python-course.eu/index.php contient un excellent tutoriel pour apprendre
Python (version 2 ou version 3).
Exercice 1
1. Ouvrir un terminal
2. Créer un répertoire CAD
3. Se déplacer dans le répertoire
4. Lancer l'interpréteur python
Exercice 2
Tester les instructions suivantes :
11 * 34
13.4 – 6 # ceci est un commentaire
13. / 4 # division avec virgule
13 / 4 # division entiere
13 % 2
14 % 3
i = 5
i = i + 4
i
j = 0
k
i < j
i != 9
i == 9
i, j, i*i
"Coucou!"
print("Coucou!")
true
True
True and False
True or False
Exercice 3
1. Ouvrir avec un éditeur de texte un fichier TP1.py
2. Définir la fonction qui calcul le carré d'un nombre donné en entrée :
def carre(x) :
return x*x
3. Sauvegarder le programme.
4. Dans l'interpréteur python, charger le fichier avec l'instruction
execfile('TP1.py')
5. Tester votre fonction avec les expressions suivantes :
carre(2)
carre(x)
t=4
carre(t)
x = (3*t + 1) / 2
x, carre(x)
x = (3*t + 1) / 2.
x, carre(x)
carre(x - t)
t = carre(t)
Exercice 4
Ajouter une fonction moyenne au fichier TP1.py et tester la.
Exercice 5
Ecrire une fonction unite(n,c) qui teste si l'unité de n est c. Cette fonction renvoie un
booléen. Tester votre fonction.
Exercice 6
Ecrire, enregistrer et exécuter le programme suivant :
def avecprint(u):
print(u+1)
def avecreturn(u):
return(u+1)
Puis tester ce programme dans l'interpréteur avec les instructions suivantes :
x = 1
avecprint(x)
avecreturn(x)
resultat1 = avecprint(x)
resultat2 = avecreturn(x)
resultat1
resultat2
Exercice 7
Prédire ce que vont faire les programmes suivants :
Scikit-learn est un logiciel écrit en Python, qui nécessite l'installation préalable du langage Python
et des librairies NumPy1 et SciPy2 (pour le calcul scientifique), dans des versions qui doivent
vérifier certaines contraintes de compatibilité. Le plus simple est d'installer une distribution de
Python complète, comme Anaconda3, qui comprend la plupart des librairies courantes développées
en Python, dont les trois citées plus haut.
Le site officiel du logiciel Scikit-learn est : http://scikit-learn.org/stable/index.html
La documentation en ligne est complète, et devra être consultée chaque fois que nécessaire :
http://scikit-learn.org/stable/documentation.html
Des tutoriaux sont disponibles a l'adresse suivante :
http://scikit-learn.org/stable/tutorial/index.html
Exercice 8 : Jeux de données en Scikit-Learn
Un certain nombre de jeux de données sont disponibles dans scikit-learn. Il est également possible
de générer des données artificielles ou de récupérer des données externes (voir TPs suivants).
Documentation relative au chargement de jeux de données :
http://scikit-learn.org/stable/datasets/
Les jeux de données disponibles dans scikit-learn sont : 

Les jeux de données comprennent un certain nombres d'attributs parmi (tous ne sont pas toujours
définis) :  :
 est un tableau de dimensions (n,m) ou n est le nombre d'instances, et m le nombre
d'attributs
stocke les classes (étiquettes) de chaque instance (dans le cas supervisé)
 contient le nom des classes
 contient le nom des attributs
 est une description complète du jeu de données au format texte.
1. Le jeu de données Iris (Fisher, 1936)
Iris est un ensemble (jeu) de données introduit en 1936 par R. Fisher comme un exemple d'analyse
discriminante. Cet ensemble contient 150 exemples de critères observés sur 3 espèces différentes
d'iris de Gaspésie (Setosa, Versicolor, Verginica). Chaque exemple est composé de quatre attributs
(longueur et largeur des sépales en cm, longueur et largeur des pétales en cm) et d'une classe
(l'espèce).
Lancez Python dans un terminal les instructions Python suivantes4 permettent de charger le jeu de
données Iris :

 !"#$#%
1. http://www.numpy.org/
2. http://www.scipy.org/
3. http://continuum.io/
4. Pour ne pas avoir a retaper les commandes, vous pouvez les copier-coller a partir de la feuille de TP au format pdf.
Pour afficher les attributs des données :





8.1.1 Exécutez les commandes suivantes et comprenez ce qu'elles réalisent (vous aurez a les
réutiliser).
!"
$!"&'('&'!&"
)*
)*
)+,*
)!"*
$
)*
)*),*
)-,*
8.1.2 Explorez d'autres jeux de données.
2 Visualiser les données
SciKitLearn intègre la librairie  (http://matplotlib.org/) qui propose de très nombreuses
primitives permettant de faire des dessins, et la librairie ., qui intègre les librairies /0.
0.1
8.2.1 Exécutez les commandes suivantes et comprenez ce qu'elles réalisent
.2.222
3 
4 
5 
. ,
!3)-5*3)-.* 4"'%6#75#

$!"
$!"
5!)5*"
.!).*"
!3)-5*3)-.* 4"
$!"
8.2.2 Une autre méthode
.
3 
4 
5 
. ,
4 
3)4 *
3)4 *)-5*
!3)4 *)-5*3)4 *)-.*
 22 )*"
!3)4 ,*)-5*3)4 ,*)-.*
 22 ),*"
!3)4 *)-5*3)4 *)-.*
 22 )*"
!"
$!"
8.2.3 Une troisième méthode. Créez le fichier80,,.contenant le programme suivant :
+9+-+:+9+
.

 !"
3 
4 
5 
. ,
 )222222*
!;"-
!3)4 *)-5*3)4 *)-.* )*<
 )*"
!"
5!)5*"
.!).*"
!2#=+#&2"
$!"
Dans un terminal, lancez l'instruction .$80,,..
8.2.4 Les données iris sont décrites par 4 attributs. Il y a 6 manières d'en regarder 2. En modifiant le
programme ci-dessus, déterminez visuellement le couple d'attributs qui semble le mieux a même de
discriminer les 3 classes d'iris.
3 Jouer avec les données
8.3.1 En lisant les données une par une, remplir un dictionnaire dont les clés sont : 2$2
2$2 2$2 2$2 22. La fonction !" sur les chaînes
de caractères pourrait vous être utile.
8.3.2 De la même façon, remplir un dictionnaire dont les clés sont les noms des classes.
8.3.3 Ecrire une fonction . qui prend en entrée un dictionnaire avec les clés de la
question 8.3.1 et renvoi les statistiques 'moyenne', 'valeur max', 'valeur min', et 'déviation standard'
pour chacun des 4 attributs. Exemple d'utilisation :
>>>.!"
$  5 .
$ ? @ A ,
$ A : @ ,
$ , ;  ,
$  B ; ,
1 / 5 100%
La catégorie de ce document est-elle correcte?
Merci pour votre participation!

Faire une suggestion

Avez-vous trouvé des erreurs dans linterface ou les textes ? Ou savez-vous comment améliorer linterface utilisateur de StudyLib ? Nhésitez pas à envoyer vos suggestions. Cest très important pour nous !