mercredi 21 octobre 2009

Sipina – Traitement des très grands fichiers

Triturer les très grands fichiers est le fantasme ultime du data miner. On veut pouvoir traiter de très grandes bases dans l’espoir d’y déceler des informations cachées. Malheureusement, rares sont les logiciels libres qui peuvent les appréhender. Tout simplement parce que la quasi-totalité d’entre eux chargent les données en mémoire. Knime semble faire exception. Il sait swapper une partie des données sur le disque. Mais j’avoue ne pas savoir comment exploiter pleinement cet atout (paramétrer ou contrôler l’encombrement mémoire en fonction des données et des algorithmes utilisés par exemple).

Cette rareté n’est guère étonnante. En effet, l’affaire est compliquée. Il ne s’agit pas seulement de copier des informations sur le disque, il faut pouvoir y accéder efficacement compte tenu de la méthode d’apprentissage mise en œuvre. Deux aspects s’entremêlent : (1) comment organiser les données sur le disque ; (2) est-il possible de proposer un système de cache afin d’éviter d’avoir à accéder au disque à chaque fois qu’il faut traiter un individu ou lire la valeur d’une variable.

Dans ce didacticiel, nous montrons comment exploiter une solution que j’ai naguère implémentée dans Sipina. Elle n’a jamais été valorisée ni documentée. J’avoue l’avoir totalement oubliée jusqu’à ce que je la redécouvre par hasard en préparant le tutoriel sur l’échantillonnage dans les arbres. Nous montrons qu’il est possible de traiter, en disposant de toutes les fonctionnalités interactives, un fichier comportant 41 variables et (surtout) 9.634.198 observations lorsque nous activons cette option.

Pour apprécier pleinement la solution proposée par Sipina, nous ferons le parallèle avec le comportement des logiciels Tanagra 1.4.33 et Knime 2.0.3 face à un tel fichier.

Mots clés : gros volumes, très grands fichiers, grandes bases de données, arbre de décision, échantillonnage, sipina, knime
Composants : ID3
Lien : fr_Sipina_Large_Dataset.pdf
Données : twice-kdd-cup-discretized-descriptors.zip
Références :
Tutoriel Tanagra, « Traitement de gros volumes – Comparaison de logiciels ».
Tutoriel Tanagra, « Sipina – Echantillonnage dans les arbres »