mardi 21 septembre 2010

Le format PMML pour le déploiement de modèles

Le déploiement des modèles est une étape importante du processus Data Mining. Dans le cadre de l'apprentissage supervisé, il s'agit de réaliser des prédictions en appliquant les modèles sur des observations non étiquetées. Nous avons décrit à maintes reprises la procédure pour différents outils (ex. Tanagra, Sipina, Spad, ou encore R). Ils ont pour point commun d'utiliser le même logiciel pour la construction du modèle et son déploiement.

Ce nouveau didacticiel se démarque des précédents dans la mesure où nous utilisons un logiciel tiers pour le classement des nouvelles observations. Il fait suite à une remarque qui m'a été faite par Loïc LUCEL (merci infiniment Loïc pour tes précieuses indications), il m'a fait prendre conscience de deux choses : le déploiement donne sa pleine mesure lorsqu'on le réalise avec un outil dédié au management des données, nous prendrons l'exemple de PDI-CE (Kettle) ; nous accédons à une certaine universalité lorsque nous décrivons les modèles à l'aide de standards reconnus/acceptés par la majorité des logiciels, en l'occurrence le standard de description PMML.

J'avais déjà parlé à plusieurs reprises de PMML. Mais jusqu'à présent, je ne voyais pas trop son intérêt si nous n'avons pas en aval un outil capable de l'appréhender de manière générique. Dans ce didacticiel, nous constaterons qu'il est possible d'élaborer un arbre de décision avec différents outils (SIPINA, KNIME et RAPIDMINER), de les exporter en respectant la norme PMML, puis de les déployer de manière indifférenciée sur des observations non étiquetées via PDI-CE. L'adoption d'un standard de description des modèles devient particulièrement intéressante dans ce cas.

Un peu à la marge de notre propos, nous décrirons des solutions de déploiement alternatives dans ce didacticiel. Nous verrons ainsi que Knime possède son propre interpréteur PMML. Il est capable d'appliquer un modèle sur de nouvelles données, quel que soit l'outil utilisé pour l'élaboration du modèle. L'essentiel est que le standard PMML soit respecté. En ce sens, Knime peut se substituer à PDI-CE. Autre piste possible, Weka, qui fait partie de la suite " Pentaho Community Edition ", possède un format de description propriétaire directement reconnu par PDI-CE.

Mots-clés : déploiement, pmml, arbres de décision, rapidminer 5.0.10, weka 3.7.2, knime 2.1.1, sipina 3.4
Didacticiel : fr_Tanagra_PDI_Model_Deployment.pdf
Données : heart-pmml.zip
Références :
Data Mining Group, "PMML standard"
Pentaho, "Pentaho Kettle Project"
Pentaho, "Using the Weka Scoring Plugin"

vendredi 10 septembre 2010

Pentaho Data Integration

L'informatique décisionnelle (" Business Intelligence - BI " en anglais, ça fait tout de suite plus glamour) fait référence à " l'exploitation des données de l'entreprise dans le but de faciliter la prise de décision ". Des suites logicielles se proposent de prendre en charge le processus complet. J'ai choisi de mettre en avant la suite Open Source Pentaho, mais les principes énoncés sont valables pour la grande majorité des logiciels du domaine.

Il existe deux versions de Pentaho. L'édition entreprise est payante, elle donne accès à une assistance. Je ne l'ai pas testée. La " Community Edition " (Pentaho CE) est téléchargeable librement. Elle est développée et maintenue par une communauté de développeurs. Je ne situe pas bien différences entre les deux versions. Pour ma part, je me suis focalisé sur la version non payante, pour que tout un chacun puisse reproduire les opérations que je décris.

Ce document présente la mise en oeuvre de Pentaho Data Integration Community Edition (PDI-CE, appelée également Kettle), l'outil ETL de la suite Pentaho CE. Je me contente d'une description succincte pour deux raisons : ce type d'outil n'entre pas directement dans mon champ de compétences (qui est le data mining) ; j'en parle surtout pour préparer un prochain tutoriel dans lequel je montre le déploiement de modèles élaborés à l'aide de Knime, Sipina ou Weka via PDI-CE.

Mots-clés : ETL, pentaho data integration, community edition, kettle, extraction de données, importation de données, alimentation, transformation, businness intelligence, informatique décisionnelle
Didacticiel : PDI-CE
Données : titanic32x.csv.zip
Références :
Comment ça marche.net, "Informatique décisionnelle (Business Intelligence)"
Pentaho, Pentaho Community