• Aucun résultat trouvé

Discussion et étude des algorithmes distribués présentés

Chapitre II : KDD et Data Mining

II.11. Discussion et étude des algorithmes distribués présentés

Après avoir présenté les algorithmes d’extraction de règles d’association dans un environnement parallèle et distribué. Nous observons que la majorité de ces algorithmes est basée sur l’algorithme Apriori. Selon les paradigmes de parallélismes et les architectures du calcul parallèle citées dans la section II.8.1, nous catégorisons les algorithmes ARM distribués

II.11.1. Parallélisme de taches

Les algorithmes ARM distribués de ce type de parallélisme partitionnent et distribuent les candidats et la base de données entre les différents processeurs. Chaque processeur envoie sa base de données locale à tous les autres processeurs, en même temps il calcule les supports de sa portion de l’ensemble des itemsets candidats sur sa base de données locale et sur les partitions de la base de données envoyées par les autres processeurs dans chaque itération. Ces algorithmes distribués impliquent une quantité non négligeable de communication entre tous les processeurs pour échanger leurs partitions locales à chaque étape. Ils souffrent ainsi d’un fort coût de communication dû à cette diffusion, surtout si la base de données est très grande (comporte beaucoup d’instances) comme c’est généralement le cas.

Ce type d’algorithme est adapté au parallélisme à mémoire partagée et à réseau d’interconnexion rapide, à cause des échanges nécessaires aux partitions de données entre les nœuds. Il est non satisfaisant sur une architecture parallèle de type réseau de stations de travail, les communications y étant trop pénalisantes.

II.11.2. Parallélisme de données

Dans ce type d’algorithme, chaque site calcule le même ensemble de candidats qui sont dupliqués sur tous les processeurs et la base de données est distribuée à travers ces processeurs. Il doit échanger les supports calculés sur les différents processeurs, d’où énormément de communications que l’on peut considérer assez courtes ; dans le meilleur des cas, on ne communique que des entiers (les supports).

Ici encore, ce type d’algorithme est adapté au parallélisme à mémoire partagée et à réseau d’interconnexion rapide, à cause des échanges d’informations (supports) nécessaires. La solution ne peut pas être utilisée de manière satisfaisante sur une architecture parallèle de type réseau de stations de travail, puisque les communications nécessaires entre les itérations sont bloquantes (pour passer aux K+1-itemsets, il faut recevoir les supports des k-itemsets de tous les sites).

Les algorithmes présentés dans les deux types de parallélisme s’inscrivent dans une mémoire logique partagée et se basent toujours sur le problème type de l’analyse du panier de la ménagère. Sur ce type de problèmes (données de consommation simple), généralement, la taille des itemsets fréquents reste limitée, (le plus grand nombre k pour lequel on génère les k−itemsets reste faible), on n’a donc peu d’itérations à faire. Sur des données de services aux puits de la base de données ERP (comme celles que l’on souhaite traiter), il serait intéressant de ne pas se limiter pour les jeux de données ; la longueur, la largeur de la base ainsi que le nombre moyen d’items par instance ne doivent pas être soumis à des bornes supérieures trop faibles à cause de la nature du domaine traité. De ce fait, une vision par mémoire distribuée pourrait permettre d’accroitre la performance des traitements par : (1) l’utilisation simultanée de plusieurs stations de travail ;(2) La synchronisation par le passage de messages ; (3) Bonne décomposition de données entre les nœuds ; et (4) minimiser la communication.

II.12. Conclusion

Le Data Mining est une technologie puissante qui offre aux entreprises la possibilité de se focaliser sur les connaissances les plus importantes dans leurs bases de données afin de prédire les futurs tendances et actions, permettant de prendre les bonnes décisions aux bons moments.

Dans ce chapitre nous avons présenté la notion du Data Mining. Plusieurs définitions ont été étudiées selon plusieurs points de vue. Après, nous nous intéresserons à la technique du Clustering de données, une des techniques les plus utilisées dans le domaine du data mining. Ensuite, un intérêt particulier est donné à l’extraction de règles d’association qui constitue l’un des champs de recherche les plus actifs dans ce domaine. Cependant, cette technique souffre de dégradation de performance lorsque la taille de la base de données est augmentée, ce qui influence négativement sur la vitesse des taches du Data Mining.

Pour remédier à ces problèmes, de nombreux algorithmes parallèles et distribués ont été proposés dans la littérature pour l’extraction distribuée des règles d’associations. L’objectif de ces algorithmes est de réduire le coût de communication qui constitue un facteur important pour mesurer leurs performances. Néanmoins, la plupart de ces algorithmes présentent habituellement un nombre élevé de balayage des données et des étapes multiples des synchronisations et de communication qui dégrade leurs performances.

Dans le chapitre suivant nous allons présenter quelques approches de Data Mining distribuée à base du système multi-agents (SMA), ce dernier constitue aujourd’hui une nouvelle technologie pour la conception et le développement de systèmes complexes. Le SMA nous permettra de résoudre la problématique citée précédemment pour l’extraction de règles d’association distribuée et du clustering de données. Il permet l’exécution autonome et asynchrone de plusieurs taches de Data Mining simultanément, sur une très grande quantité de données distribuées, ce qui permet d’améliorer le temps de réponse et de minimiser le coût de communication entre les différentes stations du travail.

Chapitre III : Etat de l’art sur les systèmes de Data