IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

R Discussion :

cmeans (FCM) avec MapReduce


Sujet :

R

  1. #1
    Membre à l'essai
    Homme Profil pro
    Chercheur en informatique
    Inscrit en
    Juillet 2015
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Chercheur en informatique
    Secteur : Enseignement

    Informations forums :
    Inscription : Juillet 2015
    Messages : 8
    Points : 11
    Points
    11
    Par défaut cmeans (FCM) avec MapReduce
    Bonjour;

    Je voudrais développer la fonction Fuzzy C-means (FCM) en utilisant le modèle MapReduce.

    Y a-t-il quelqu'un qui pourrait m'orienter ?

    Merci d'avance !

  2. #2
    Membre éprouvé

    Homme Profil pro
    Cyber Security & AI
    Inscrit en
    Février 2009
    Messages
    506
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Cyber Security & AI

    Informations forums :
    Inscription : Février 2009
    Messages : 506
    Points : 1 189
    Points
    1 189
    Billets dans le blog
    2
    Par défaut
    Bonjour Mohammed.

    Je ne pense pas que cette question retourne de R, mais plutôt d’un problème plus large sur le Big Data et l'Algorithmie.

    Je n’ai pas trouvé d’article de recherche sur le type de questions à savoir «*C-mean*» en dehors du Chinois. Je sais qu’un outil comme Spark implémente déjà les «*K-mean*», peut être que cela peut être une piste.

    Je peux difficilement t’aider. Cela me semble relativement difficile et non trivial comme question.

    As-tu de la littérature de ce sujet ?

    Bien cordialement.

  3. #3
    Membre à l'essai
    Homme Profil pro
    Chercheur en informatique
    Inscrit en
    Juillet 2015
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Chercheur en informatique
    Secteur : Enseignement

    Informations forums :
    Inscription : Juillet 2015
    Messages : 8
    Points : 11
    Points
    11
    Par défaut
    Bonjour dev_ggy;

    Merci d'avoir pris l'initiative de répondre à ma question. oui j'ai de la littérature sur le sujet, mais j'ai rencontré des difficultés d'implémentation sous R.

    Cordialement.

  4. #4
    Modératrice

    Femme Profil pro
    Statisticienne, Fondatrice de la société DACTA
    Inscrit en
    Juin 2010
    Messages
    893
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 35
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Statisticienne, Fondatrice de la société DACTA

    Informations forums :
    Inscription : Juin 2010
    Messages : 893
    Points : 2 673
    Points
    2 673
    Par défaut
    Bonjour Mohammed_Z,

    Si tu as de la documentation sur l'algo en lui-même et que c'est son implémentation en R qui te pose problème, nous pouvons peut-être t'aider.

    Peut-être pourrais-tu nous décrire les différentes étapes de l'algorithme et ce que tu as essayé de faire en R (avec un exemple de code reproductible) et ce qui t'a posé problème ?
    As-tu regardé s'il n'existait pas déjà des packages R autour de ce sujet ? Pour faire une telle recherche, tu peux commencer par exemple par regarder la liste des packages disponibles sur le CRAN ou faire une recherche (mots-clés en anglais) sur le site RSiteSearch.

    Bonne continuation


    Cordialement,


    A.D.

    Forum R
    Fournir le code utilisé (pensez aux balises code !), les packages nécessaires, ainsi qu'un court mais représentatif extrait du jeu de données et les éventuels messages d'erreur.
    Recherche d'informations concernant R : RSiteSearch / tutoriels : http://r.developpez.com/cours/ .

    Pensez également au bouton "Résolu" et à voter (en bas à droite des messages) lorsque vous avez obtenu une réponse satisfaisante.

  5. #5
    Membre à l'essai
    Homme Profil pro
    Chercheur en informatique
    Inscrit en
    Juillet 2015
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Chercheur en informatique
    Secteur : Enseignement

    Informations forums :
    Inscription : Juillet 2015
    Messages : 8
    Points : 11
    Points
    11
    Par défaut
    Bonjour A.D.

    Merci pour votre intention. En fait il existe une fonction qui traite les problèmes de "fuzzy clustering" , il s'agit de la fonction "cmeans.R" dans le package "e1071",
    dont le prototype est le suivant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    cmeans <-
    function(x, centers, iter.max = 100, verbose = FALSE,
             dist = "euclidean", method = "cmeans", m = 2,
             rate.par = NULL, weights = 1, control = list())
    Elle prend comme arguments entre-autres :
    • un dataset "x" (c'est un ensemble de lignes où chaque ligne est formée de plusieurs colonnes, ce sont les caractéristiques) imaginons que chaque ligne est un point. Tous les point ont le mêmes nombre de caractéristiques (il s'agit d'un espace de dimension donnée).
    • un ensemble clusters (appelés encore classes ou groupes) dont les "centres" sont choisis aléatoirement parmi les points du dataset.
    • etc...


    Comme résultat et après un certain nombre d'itérations, cette fonction retourne les nouveaux coordonnées des centres (voir Eq. 3 du papier ci-joint) et la répartition des différents points de la base autour des centres (voir Eq. 2 du papier ci-joint) en se basant sur la distance euclidienne (voir Eq. 1 du papier ci-joint) de chaque point par rapport au centre. La répartition est représentée sous forme d'une matrice [U](n x c) (n= nbre de lignes du dataset, c=nbre de clusters) où chaque chaque cellule (uij) représente de degré d'appartenance du ième point au jème cluster. Un point peut appartenir à un ou plusieurs clusters. La contrainte est que la somme des degrés d’appartenance uij d'un point donnés =1.

    Cette fonction tourne bien pour les petites bases de données, mais pour des bases de quelques millions de lignes et quelques centaines de colonnes, un seul PC ne supporte pas la charge de calcul et de mémoire. Le calcul prend des heures et des heures, même des jours. On a pensé de répartir le calcul sur plusieurs noeuds en utilisant le modèle MapReduce et la technologie Hadoop.

    Vous trouverez ci-joint un papier que décrit l'algorithme MapReduce et les différentes étapes.

    Merci pour votre collaboration.
    Images attachées Images attachées

Discussions similaires

  1. Réponses: 0
    Dernier message: 23/04/2015, 00h06
  2. [langage] Comparer Perl avec d'autres langages comme C ?
    Par Anonymous dans le forum Langage
    Réponses: 3
    Dernier message: 10/08/2002, 23h52
  3. Problème avec la mémoire virtuelle
    Par Anonymous dans le forum CORBA
    Réponses: 13
    Dernier message: 16/04/2002, 16h10
  4. [Kylix] Runtime error 230 avec INDY
    Par Anonymous dans le forum EDI
    Réponses: 2
    Dernier message: 23/03/2002, 11h51
  5. Réponses: 2
    Dernier message: 20/03/2002, 23h01

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo