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

Images Discussion :

méthode des k plus proche voisin en matlab


Sujet :

Images

  1. #1
    Nouveau Candidat au Club
    Inscrit en
    Mai 2009
    Messages
    3
    Détails du profil
    Informations forums :
    Inscription : Mai 2009
    Messages : 3
    Points : 1
    Points
    1
    Par défaut méthode des k plus proche voisin en matlab
    salut,
    svp aidez moi ,je veux programmer la méthode des k plus proche voisin(kpp)en matlab,qui consiste à entrer une matrice de données et le nombres de voisins k et par la suite calculer la distance et en sortie obtenir la classe majorante(qui contient l plus grand nombre d points)
    merci en avance

  2. #2
    Membre chevronné
    Avatar de kmaniche
    Inscrit en
    Janvier 2006
    Messages
    1 717
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 717
    Points : 1 884
    Points
    1 884
    Par défaut
    Les Kppv ont fait de nombreuses question sur le site, et notament sur . Je te conseil d'utiliser la fonction recherche.

    Si tu n'as toujours pas réussi, tu nous met au courant .

  3. #3
    Nouveau Candidat au Club
    Inscrit en
    Mai 2009
    Messages
    3
    Détails du profil
    Informations forums :
    Inscription : Mai 2009
    Messages : 3
    Points : 1
    Points
    1
    Par défaut
    Merci pour votre réponse,

    J'ai construit un algorithme pour ma méthode des kppv qui est comme suit:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
     
    début 
    initialisation
    NPk:nbr de prototypes de Ck
    D(q):Observation NPk 
    K:nbr de noyau détéctés
    D(k,i):iéme prototype de noyau Ck 
    pour chaque observation D(q):
     calculer:
    Pour i=1 à NPk
    Pour k=1 à K 
    dk((D(q))=-min(D(q),D(k,i))
    Décision:
    Pour k=1 à K
    si ds(D(q))>dk(D(q))
    alors décider Cs
    NPs=NPs+1
    Fin si 
    Fin
    Maintenant je cherche à programmer en MATLAB,svp aidez moi:

  4. #4
    Expert confirmé
    Avatar de duf42
    Homme Profil pro
    Formateur en informatique
    Inscrit en
    Novembre 2007
    Messages
    3 111
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Formateur en informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2007
    Messages : 3 111
    Points : 4 661
    Points
    4 661
    Par défaut
    Bonjour,

    Qu'est ce qui te bloques exactement? As-tu commencer à coder quelquechose?

    Bonne apm,
    Duf

  5. #5
    Nouveau Candidat au Club
    Inscrit en
    Mai 2009
    Messages
    3
    Détails du profil
    Informations forums :
    Inscription : Mai 2009
    Messages : 3
    Points : 1
    Points
    1
    Par défaut
    Le but c'est de trouver le programme correspondant à l'algorithme que je viens de vous montrer et ceci en MATLAB,ce programme consiste à entrer un ensembles d'observations,calculer la distance,pour trouver à la fin la classe majorante,j'ai essayé avec ça mai je veux généraliser les choses:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    function findclass
    C1=[5, 4;3, 7;2, 4];
    C2=[6, 8;7 ,10;5, 9;3,8];
    X=[4 7];
    k = 3;
    NC1 = size(C1,1);
    NC2 = size(C2,1);
    Total = NC1+NC2;
    D = [C1;C2];
    C3= [zeros(numClass1,1)+1;zeros(numClass2,1)+2;];%la vrai classe
    test= repmat(newSample,totalSamples,1);
    absDiff = abs(D-test);
    absDiff = absDiff.^2;
    dist = sum(absDiff,2)
    [Y,I] = sort(dist)
    neighborsInd = I(1:k)
    neighbors = C3(neighborsInd)
    c1=find(neighbors == 1)
    c2=find(neighbors == 2)
    joint = [size(c1,1);size(c2,1)]
    [value class] = max(joint)
    merci pour votre aide

Discussions similaires

  1. [Sources/Macros] Imputation des valeurs manquantes par la méthode des K plus proches voisins
    Par Haache dans le forum Contribuez
    Réponses: 0
    Dernier message: 14/04/2015, 11h07
  2. Recherche des k plus proches voisins d'un point
    Par sara_thèse dans le forum Traitement d'images
    Réponses: 0
    Dernier message: 14/04/2014, 14h35
  3. Trouver la liste des K plus proches voisins
    Par hoccha dans le forum SAS STAT
    Réponses: 5
    Dernier message: 11/10/2011, 10h21
  4. Recherche des k plus proches voisins d'un point
    Par mobi_bil dans le forum Traitement d'images
    Réponses: 5
    Dernier message: 13/05/2009, 14h39

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