Se ha denunciado esta presentación.
Utilizamos tu perfil de LinkedIn y tus datos de actividad para personalizar los anuncios y mostrarte publicidad más relevante. Puedes cambiar tus preferencias de publicidad en cualquier momento.
1
Implementation of K-Means Clustering in
Cloud Computing Environment
Réalisé par :
JANNADI Wiem
TURKI Imen
2ing01
2
Table des matières :
1. Introduction :.....................................................................................
3
1.Introduction :
Aujourd’hui le monde des affaires est rapide et dynamique dans la nature. Ceci implique
beaucoup de don...
4
Objectif :
- Trouver des regroupements « naturels » (clusters) des exemples
- Inventer un nouvel attribut C dont les val...
5
4. Cloud Computing :
Cloud computing:« informatique en nuage »
• une puissance de calcul,
• un espace de stockage,
• une...
6
Saas (Software-as-a-service) permet d'externaliser dans des salles informatiques la couche
infrastructure matérielle, le...
7
5. Cloudster/K-means algorithm for cloud
computing:
Un cluster de serveurs, c'est le fait de regrouper et relier physiqu...
8
6. Mise en œuvre :
6.1 –Algorithme :
 Choisir les points k qui représentent la position moyenne des
partitions m1
(1)
,...
9
for(Iris d:lesDonnees){
double dmin=1000;
int indexmin=-1;
for(int l=0;l<nbClust;l++){
double dist=d.distance(centers[l]...
10
Les 3 centres
Cluster Vercicolor
Cluster Setosa.
11
public String connaissance(Iris d){
double dmin=1000;
int indexmin=-1;
for(int l=0;l<nbClust;l++){
double dist=d.distan...
12
7. Conclusion/Perspectives :
 L’algorithme k-means est très populaire du fait qu’il est très facile à comprendre et à
...
Próximo SlideShare
Cargando en…5
×

de

Rapport kmeans  Slide 1 Rapport kmeans  Slide 2 Rapport kmeans  Slide 3 Rapport kmeans  Slide 4 Rapport kmeans  Slide 5 Rapport kmeans  Slide 6 Rapport kmeans  Slide 7 Rapport kmeans  Slide 8 Rapport kmeans  Slide 9 Rapport kmeans  Slide 10 Rapport kmeans  Slide 11 Rapport kmeans  Slide 12
Próximo SlideShare
K means Clustering Algorithm
Siguiente
Descargar para leer sin conexión y ver en pantalla completa.

2 recomendaciones

Compartir

Descargar para leer sin conexión

Rapport kmeans

Descargar para leer sin conexión

Rapport kmeans

  1. 1. 1 Implementation of K-Means Clustering in Cloud Computing Environment Réalisé par : JANNADI Wiem TURKI Imen 2ing01
  2. 2. 2 Table des matières : 1. Introduction :................................................................................................................................... 3 2. Le clustering :................................................................................................................................... 3 3. K_Means :........................................................................................................................................ 4 4. Cloud Computing :............................................................................................................................... 5 5. Cloudster/K-means algorithm for cloud computing: .......................................................................... 7 6. Mise en œuvre :................................................................................................................................... 8 6.1 –Algorithme :................................................................................................................................. 8 6.2 -Code java :.................................................................................................................................... 8 7. Conclusion/Perspectives : ................................................................................................................. 12
  3. 3. 3 1.Introduction : Aujourd’hui le monde des affaires est rapide et dynamique dans la nature. Ceci implique beaucoup de données recueillies auprès de différentes sources. Ces données sont stockées dans des entrepôts de données (Data Warehouses). La plupart des tâches difficiles des gens d'affaires est de transformer ces données en informations utiles appelle la connaissance. Données techniques d'extraction sont utilisés pour réaliser cette tâche. Ce qui fait de faire le regroupement des serveurs, en vue de créer un "super serveur virtuel« qui ‘est le clustering. 2.Le clustering : Clustering : Organiser un ensemble de formes en groupes contrastés. En vue de : Comprimer et structurer les données pour permettre des prédictions.
  4. 4. 4 Objectif : - Trouver des regroupements « naturels » (clusters) des exemples - Inventer un nouvel attribut C dont les valeurs c1, c2, …, ck indiquent le cluster auquel appartient un exemple Critère • Maximiser la distance inter-cluster • Minimiser la distance intra-cluster 3.K_Means : K means est un algorithme de clustering (classification de données) ... K est un paramètre qui est le nombre de classe à construire. L’idée générale de l’algorithme est de créer k classe centrée autour de k points de centre qu’on choisis au départ aléatoirement , puis à chaque itération on calcule le barycentre des points de chaque classe qui sera le nouveau centre de la classe et on ajuste la classe autour de ce centre . Un point appartient à la classe dont le centre est plus proche. //Principe général L’algorithme consiste à grouper les points selon un critère bien déterminé. L’entrée de l’algorithme est le nombre k de groupes (cluster). Une fois le nombre de groupes saisi, l’algorithme choisit arbitrairement k points comme centres «initiaux » des k groupes. L’étape suivante consiste à calculer la distance entre chaque individu (point) et les k centres, la plus petite distance est retenue pour inclure cet individu dans le groupe ayant le centre le plus proche. Une fois tous les individus groupés, on aura k sous-nuages (cluster) disjoints du nuage total. Pour chaque groupe, l’algorithme calcule le nouveau centre de gravité. L’algorithme s’arrête lorsque les groupes construits deviennent stables.
  5. 5. 5 4. Cloud Computing : Cloud computing:« informatique en nuage » • une puissance de calcul, • un espace de stockage, • une infrastructure de serveurs reliés par Internet. Avantages • la flexibilité de l'infrastructure => plus agiles dans système d'information. • Rapidité d’accès à une infrastructure performante. • Paiement contrôlés grâce à une facturation à la carte Inconvénients • les performances du Cloud Computing sont dépendantes d'Internet et peuvent connaître une certaine latence due à la faiblesse du réseau, • les fournisseurs de plates-formes de Cloud Computing offrent peu de garantie en matière de continuité de service (SLA - Service Level Agreement), • les données critiques de l'entreprise sont hébergées à l'extérieur du système d'information. • Algorithme simple et efficace en temps et en mémoire • Utilisable avec de grandes bases de données (e.g. milliers d’objets). Avantages • Sensible au choix des moyennes initialesLimites • Il existe des informations a priori sur le choix des centres de classes. • En post-traitement d’un clustering hiérarchique. A utiliser
  6. 6. 6 Saas (Software-as-a-service) permet d'externaliser dans des salles informatiques la couche infrastructure matérielle, les applications middleware et de développement (Paas) ainsi que les applications de l'entreprise. L'entreprise consomme ces applications hébergées à la demande (comme par exemple Gmail, la messagerie de Google). Iaas (Infrastructure-as-a-service) permet d'externaliser la couche infrastructure matérielle (les serveurs, le réseau, le stockage) dans des salles informatiques distantes. Les entreprises démarrent des serveurs virtuels hébergés sur la plate-forme de Cloud Computing à chaque fois qu'un accroissement de calcul est nécessaire. Paas (Platform-as-a-service) permet d'externaliser la couche infrastructure matérielle (Iaas), mais aussi les bases de données, les environnements de développement et d'exécution d'applications et les couches d'intégration de données. L'entreprise conserve uniquement ses applications en interne. Elle utilise le Paas pour porter ses applications « dans les nuages » ou en développer d'autres à partir des outils de développement (hébergés) fournis par la plate- forme de Cloud Computing.
  7. 7. 7 5. Cloudster/K-means algorithm for cloud computing: Un cluster de serveurs, c'est le fait de regrouper et relier physiquement des serveurs par des interfaces spécifique pour le transformer en un seul serveur plus puissant et scalaire. Un serveur Cloud, c'est en fait un serveur issu de la division en plusieurs morceaux d'un plus gros serveur. Ça permet d'avoir un serveur avec tous les droits (ou presque) à moindre coût par rapport à un serveur dédié. Nous allons mettre en œuvre l'algorithme des K-Means en java et l'IDE Eclipse pour la conception et le développement de l'application qui sera déployée sur la plateforme Google AppEngine. Google App Engine permet d'exécuter vos applications Web sur l'infrastructure Google. Faciles à développer et à gérer, les applications App Engine, grâce à leur caractère évolutif, s'adaptent à vos besoins en termes de trafic et de stockage des données. App Engine vous dispense du recours à tout serveur : il vous suffit de transférer votre application et le tour est joué ! Vos utilisateurs peuvent s'en servir sans plus attendre.
  8. 8. 8 6. Mise en œuvre : 6.1 –Algorithme :  Choisir les points k qui représentent la position moyenne des partitions m1 (1) ,…,mk (1) initiales (au hasard par exemple)  Répéter jusqu'à convergence: - assigner chaque observation à la partition la plus proche. - mettre à jour la moyenne de chaque cluster La convergence est atteinte quand il n'y a plus de changement. 6.2 -Code java : public void run() { Random gene=new Random(); readData(); // Initialiser les centres centers[0]=new Iris(0.8514,0.5867,-1.0364,-1.0132,ic.setosa); centers[1]=new Iris(0.725,-0.3293,0.8331,0.8386,ic.virginica); centers[2]=new Iris(0.5654,-0.1556,-0.4775,- 0.52,ic.versicolor); // Iterer System.out.println("avant for "); for(int i=0;i<150;i++){ // Une liste d'exemples par cluster lesClusters=new ArrayList[nbClust]; for(int j=0;j<nbClust;j++) lesClusters[j]=new ArrayList<Iris>(); // Pour chaque exemple, rechercher le centre le plus proche
  9. 9. 9 for(Iris d:lesDonnees){ double dmin=1000; int indexmin=-1; for(int l=0;l<nbClust;l++){ double dist=d.distance(centers[l]); if(dist<dmin){ dmin=dist; indexmin=l; } } // Ajouter l'exemple au cluster du centre le plus proche lesClusters[indexmin].add(d); } // Calculer les nouveaux centres for(int j=0;j<nbClust;j++){ double nb=lesClusters[j].size(); double sw=0; double sl=0; double pl=0; double pw=0; for(Object o:lesClusters[j]){ Iris d=(Iris)o; sw+=d.getSepalWidth(); sl+=d.getSepalLength(); pw+=d.getPetalWidth(); pl+=d.getPetalLength(); }// object o if(nb!=0) centers[j]=new Iris(pl/nb,pw/nb,sl/nb,sw/nb,null); else // Si le cluster est vide, choisir un nouveau centre centers[j]=new Iris(gene.nextDouble(),gene.nextDouble(),gene.nextDouble(),gene.nextDouble(),null) ; }} 1- 2- Cette fonction nous permet de calculer la distance entre les nœuds et les points.
  10. 10. 10 Les 3 centres Cluster Vercicolor Cluster Setosa.
  11. 11. 11 public String connaissance(Iris d){ double dmin=1000; int indexmin=-1; for(int l=0;l<nbClust;l++){ double dist=d.distance(centers[l]); if(dist<dmin){ dmin=dist; indexmin=l; }} lesClusters[indexmin].add(d); return "le point i "+d+" appartient au cluster"+indexmin; } Exemple :
  12. 12. 12 7. Conclusion/Perspectives :  L’algorithme k-means est très populaire du fait qu’il est très facile à comprendre et à mettre en œuvre.  Le degré d’appartenance d’un document à une classe étant binaire et la pondération de chaque document étant constant.  Comparer les performances des autres algorithmes par rapport à k-means. Cela signifie qu'un point de données peut appartenir à un seul cluster et qu'une probabilité unique est calculée pour l'appartenance de chaque point de données à ce cluster.
  • MarwaBraiki

    Aug. 11, 2015
  • AmineElQouns

    May. 23, 2013

Vistas

Total de vistas

1.983

En Slideshare

0

De embebidos

0

Número de embebidos

6

Acciones

Descargas

106

Compartidos

0

Comentarios

0

Me gusta

2

×