Apprendre Knime
Apprendre Knime
Apprendre Knime
1 Introduction et objectifs du TP
Les données sont devenues une matière première qu’il faut indispensable-
ment maîtriser pour mieux comprendre le monde dans lequel nous vivons et
ainsi devenir plus compétitifs. La fouille de données prétend répondre à ce
besoin et se décline dans de nombreux secteurs comme nous le verrons dans
ce module. Seulement, l’analyse de données, souvent très volumineuses, ne
peut être accomplie manuellement. L’existence d’outils informatiques adap-
tés est donc nécessaires. Dans ce module, nous utiliserons un logiciel bien
connu dans le monde de la fouille de données : Knime. Ce logiciel open-
source utilisé par plus de 15000 utilisateurs dans le monde provenant de
différents milieux (universitaires, recherche, petites et grandes entreprises)
dans différents secteurs (banque, pharmacie, tourisme, ...) possède de solides
atouts :
— Sa facilité d’utilisation et son interface graphique le rendent accessible
aux non-initiés en fouille de données ;
— Il peut lire de très nombreux formats de données ;
— Il comporte de très nombreuses solutions pour pré-traiter, analyser et
visualiser des données et des résultats d’analyses ;
— La communauté des utilisateurs est très active et peut contribuer à
ajouter de nouvelles fonctionnalités au logiciel.
1
— Comment ajouter des composants à un workflow et les configurer ;
— Comment les relier ;
— Comment exécuter un premier workflow ;
— Comment appliquer quelques pré-traitements sur des données ;
— Comment visualiser des données et calculer quelques statistiques sur
celles-ci.
2 Présentation de l’interface
L’interface principale par défaut du logiciel est présentée dans la Figure
1. Celle-ci est principalement composée de 6 parties :
1. La liste des workflows disponibles (accessibles via Internet ou stockés
localement) est disponible dans le coin supérieur gauche de la fenêtre.
C’est ici que vous retrouverez vos workflows une fois que vous les aurez
enregistré ;
2. La liste des composants classés thématiquement est disponible dans
le coin inférieur gauche ;
3. Une vue générale du workflow est présentée en bas ;
4. A sa droite, il est possible de voir la console, qui permet de voir les
traces d’exécution d’un workflow.
5. Vu le grand nombre de composants disponibles dans Knime, les connaître
tous n’est pas aisé. Aussi, la partie droite de la fenêtre propose une
documentation sur le composant sélectionné.
6. Enfin, la fenêtre princpale, au milieu de l’écran, permet de composer
un workflow et d’interagir avec celui-ci (configurer les composants, les
repositionner, les relier, ...)
Instructions
1. Démarrez le logiciel. S’il n’est pas présent sur votre machine, téléchar-
gez le à l’adresse http://www.knime.org/downloads/overview en
choisissant KNIME for Windows (self-extracting archive) et installez-
le. Pour cela, il suffit de décompresser l’archive dans un répertoire lo-
cal. Attention, si le logiciel n’est pas installé sur votre machine, vous
devrez reproduire cette étape à chaque TP.
2. Ouvrez le logiciel en double cliquant sur l’icône Knime dans le réper-
toire où le logiciel est installé.
2
Documentation
associée au
composant
sélectionné
Répertoire de
workspaces
Fenêtre principale
de composition de
workspace
3
1. Double-cliquez sur le composant FileReader (dans la sous-catégorie
Read). Le composant apparaît au milieu de la fenêtre principale. D’un
point de vue graphique, plusieurs éléments doivent être notés concer-
nant un composant. Ceux-ci sont récapitulés dans la Figure 2.
2. Nous allons maintenant configurer le composant. Pour cela, double-
cliquez (ou faites un clic droit puis Configure) sur le composant. Une
boîte de dialogue s’ouvre alors. Elle contient 3 onglets : Settings,
Flow Variables et Policy. Seul le premier onglet sera utilisé au
cours des TPs. Vous pouvez y spécifier le fichier que vous voulez
considérer ainsi que quelques options relatives à ce fichier. Nous al-
lons utiliser un jeu de données exemple bien connu dans le monde
de la fouille de données : le jeu de données adult. Ce jeu de données
décrit quelques 30000 individus selon une dizaine de caractéristiques
et est classiquement utilisé dans un contexte prédictif, i.e., l’indi-
vidu a-t-il des revenus faibles ou élevés 1 . Vous pouvez télécharger ce
jeu de données à l’adresse www.irit.fr/~Yoann.Pitarch/Docs/MER/
TP1/adult.data.
3. Si vous avez bien configuré votre composant, le fichier devrait s’affi-
cher dans la boîte de dialogue.
Type de
composant
Entrée(s) du Sortie(s) du
composant composant
Avertissement
indiquant un champ
Etat du composant : de configuration
- Rouge = pb de config vide
- Orange = config OK mais
composant non exécuté Nom du
- Vert = confie OK et composant composant
correctement exécuté
(peut être modifié)
1. De plus amples informations sur ce jeu de données sont disponibles à l’adresse https:
//archive.ics.uci.edu/ml/machine-learning-databases/adult/adult.names
4
3.2 Enchaînons deux composants
Nous allons réaliser un premier workflow très simple dont l’objectif est de
discrétiser un des attributs numériques du jeu de données utilisé précédem-
ment, l’attribut Age. Pour cela, nous allons utiliser un des composants de la
catégories Data Manipulation. Cette catégorie est extrêmement utile pour
pré-traiter des données et nous l’utiliserons abondemment dans ce TP (et
les autres qui suivront). Dans la mesure où la discrétisation est une méthode
qui agit sur une colonne, cliquez sur Column. Ici aussi les outils de manipu-
lation des colonnes sont catégorisés. La catégorie associée à la discrétisation
est Binning. A l’intérieur de celle-ci, choisissez le composant Auto-Binner.
Configurez le pour discréditer la colonne Age en 5 classes de même taille et
dont le nom sera donné par les extrémités des intervalles. Reliez ces deux
composants entre eux (la sortie du fichier vers ce nouveau composant) à
l’aide de la souris. Voilà, vous avez créer votre premier workflow. Nous allons
maintenant l’exécuter. Pour cela, vous devez repérer en haut de l’interface un
bouton vert, avec deux triangles orientés vers la droite. Ce bouton permet de
lancer tous les nœuds exécutables présents dans le workflow. Il est également
possible de n’exécuter qu’un sous-ensemble de nœuds (ceux sélectionnés) à
l’aide du bouton situé à gauche (un rond vert et un seul triangle) 2 . Une fois
que ce workflow a été exécuté avec succès (l’indicateur d’état est en vert), il
est possible de visualiser la sortie de ce composant. Pour cela, faites un clic
droit sur ce composant. Vous vous trouvez devant un menu contextuel. Les
deux derniers items de ce menu correspondent aux deux sorties du compo-
sant. La sortie nous intéressant est Binned Data. En cliquant dessus, vous
pouvez visualiser le résultat de la discrétisation.
Pour aller plus loin, nous nous proposons d’ajouter deux composants
supplémentaires :
— Filtrer les lignes pour ne conserver que les individus dont l’âge est
compris entre 18 et 60 ans (inclus). Pour cela, vous devrez utiliser
un composant manipulant les lignes. Ce composant est Row Filter
dans Data Manipulation > Row > Filter. Ce traitement devra être
effectué avant l’étape de discrétisation.
— Excluez les lignes dont la colonne Education matche avec l’expression
régulière .*th.*. Dans la mesure où on modifie l’ensemble des valeurs
possibles pour cet attribut, il est nécessaire de connecter ce filtre à un
2. En réalité, l’exécution d’un ensemble de nœuds déclenche en cascade les nœuds qui
précèdent ceux sélectionnés. Ceci est logique puisque un composant ne pourra fonctionner
que si son/ses composant(s) le précédent a/ont été correctement configurés et exécutés.
5
autre composant : Domain Calculator. Cette étape est indispensable
lorsque vous aurez à visualiser cet attribut (sans cela, les valeurs que
vous venez de filtrer seraient tout de même apparues). Recherchez ce
composant dans la liste des composants (en utilisant la fonction de
recherche de composants) et connectez le au composant de filtre que
vous venez de créer.
— Supprimer la colonne Age une fois qu’elle aura été discrétisée à l’aide
du composant Column Filter dans Data Manipulation > Column
> Filter.
Réalisez ces traitements et exécutez le workflow.
4 Premières visualisations
Nous allons maintenant aborder un point important lorsque l’on ma-
nipule et analyse des données : la visualisation. En effet, si l’utilisation de
techniques complexes de fouille de données s’avère souvent pertinente, il n’en
reste pas moins qu’une première observation des données permet de se for-
ger quelques intuitions sur les données à analyse et la connaissance que l’on
pourrait en extraire.
Dans la suite de ce TP, vous serez moins guidé que précédemment. L’ob-
jectif est de vous laissez libre du choix de visualisation qui vous semble le plus
pertinent afin que vous vous familiarisez avec les composants de visualisation
à votre disposition 3 . La catégorie de composants permettant la visualisation
des données est Data Views. Ne considérez pour l’instant que les compo-
sants situés au premier niveau de cette catégorie. Connectez les composants
de visualisations au jeu de données pré-traité précédemment pour :
— Visualiser la répartition en âge des individus
— Visualiser la répartition du salaire en fonction de l’âge ou du niveau
d’étude
Une fois le workflow exécuté, la visualisation peut être observée par un
clic droit sur le composant que l’on souhaite visualiser et en sélectionnant
l’item auquel est associé une loupe.
3. N’oubliez pas que vous avez une aide sur chaque composant disponible à droite de
l’écran quand vous sélectionnez un document.
6
4.1 Ajoutons un peu de couleur pour enrichir la visualisation
Vous avez pu le remarquer, les visualisations que vous avez produites ne
sont pas très colorées. Au delà de l’aspect esthétique, l’ajout de la couleur
permet d’ajouter une nouvelle dimension à un graphique. Illustrons ce point.
A travers la manipulation suivante :
1. Reliez un composant Color Manager (dans Data Views > Property
au jeu de données pré-traité.
2. Lors de la configuration de ce composant,vous pouvez choisir un at-
tribut et les couleurs qui seront associées aux valeurs de cet attribut.
Sélectionnez l’attribut Income et donnez affectez des couleurs diffé-
rentes de votre choix aux deux valeurs de cette dimension.
3. Connectez maintenant un composant de visualisation d’un nuage de
point (scatter plot) et visualisez l’âge par rapport au secteur pro-
fessionnel. Les points s’affichent désormais d’une couleur différente
en fonction de leur appartenance à la classe Income. Qu’en déduisez-
vous ?
Plusieurs points sont à noter concernant la visualisation :
— Un composant définit les couleurs pour un seul attribut. Ainsi si pour
deux visualisation différentes vous avez besoin de colorer deux attri-
buts différents, deux choix s’offrent à vous : reconfigurer le composant
ou en créer un second. Pour éviter toute confusion dans les compo-
sants (cela est un conseil très général) il peut être utile de renommer
chaque composant, i.e., double cliquer sur son nom (node xxx ) pour
lui donner un nom plus explicite.
— On peut ajouter une quatrième dimension à une visualisation en en-
chaînant un Shape Manager à un Color Manager sur deux attributs
différents.
5 Premières statistiques
Pour terminer ce TP de découverte de Knime, vous allez effectuez des
statistiques basiques sur ce jeu de données. Pour cela, nous allons utiliser le
composant Statistics.
— Connectez ce composant au jeu de données pré-traité.
— Exécutez ensuite le workflow
— En ouvrant les 3 tables de données créées ainsi que la visualisation
de ce composant, dressez la liste des fonctionnalités offertes par ce
composant.