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

MATLAB Discussion :

erreur de classification SVM


Sujet :

MATLAB

  1. #1
    Membre à l'essai Avatar de Halgo
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2013
    Messages
    11
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2013
    Messages : 11
    Points : 13
    Points
    13
    Par défaut erreur de classification SVM
    Bonjour,

    s'il vous plait, c'est très urgent si quelqu'un peut m'aider j'ai vraiment besoin d'une reponse le plus vite possible.
    j'ai un problème dans la classification svm, quand j'applique la classification une erreur s'est produite:
    l'erreur:    Error using svmtrain (line 335)
    Y must contain exactly two groups for method 'SMO'.

    je n'ai pas compris pas comment faire pour résoudre ce problème
    merci d'avance de m'aider le plus vite possible

  2. #2
    FLB
    FLB est déconnecté
    Modérateur
    Avatar de FLB
    Homme Profil pro
    Ing. Aérospatiale
    Inscrit en
    Juin 2003
    Messages
    770
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France

    Informations professionnelles :
    Activité : Ing. Aérospatiale
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Juin 2003
    Messages : 770
    Points : 1 185
    Points
    1 185
    Par défaut
    Bonjour,
    montre nous comment tu appelles la méthode svm train : que contiennent tes arguments?
    L'erreur semble venir d'un de tes arguments qui ne contient pas assez de données.

  3. #3
    Membre à l'essai Avatar de Halgo
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2013
    Messages
    11
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2013
    Messages : 11
    Points : 13
    Points
    13
    Par défaut
    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
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    fich=fopen(filelarg,'r');
    while feof(fich)==0,
            w=fscanf(fich,'%f');
    end  
                    fclose(fich);
                    t=length(w);
                    fc=fopen('datal.txt','w');
            for i=1:t,
                dt=(w(i)/w(1));
                dts=num2str(dt);
                fprintf(fc,'%s\t',dts);
            end
           fclose(fc);
     
                file='larg_apprentissage1.txt';
                 fich1=fopen(file,'r');
    while feof(fich1)==0,
            w1=fscanf(fich1,'%f');
    end  
                    fclose(fich1);
                    t=length(w1);
    for i=1:t,
    donn(i,1)=i;
    donn(i)=(w1(i)/w1(1));
            if(donn(i)>0.85)
               clas(i)=0;
    else
               clas(i)=1;
    end
    end
            fcc=fopen('datal.txt','r');
    while feof(fcc)==0
        data=fscanf(fcc,'%f');
    end
    svmstruct=svmtrain(donn,clas,'kernel_function','linear');
    for i=1:length(data),
    group(i)=svmclassify(svmstruct,data(i));
    ima(i)=i;
    end
    plot(ima,group,'--rs','LineWidth',2,'MarkerEdgeColor','k','MarkerFaceColor','g','MarkerSize',10);
    p = plot(ima(1),group(1),'--rs','LineWidth',2,'MarkerEdgeColor','k','MarkerFaceColor','g','MarkerSize',10);
    xlim([min(ima) max(ima)]);
    ylim([min(group) max(group)]);
    title('classification','Color',[0 1 1]);
    xlabel('Images','Color',[0 1 1]);
    ylabel('baillement ou non baillement','Color',[0 1 1]);
    for n = 2:numel(ima)
       set(p,'xdata',ima(1:n),'ydata',group(1:n));
      drawnow;
       pause(0.1);
    end

  4. #4
    FLB
    FLB est déconnecté
    Modérateur
    Avatar de FLB
    Homme Profil pro
    Ing. Aérospatiale
    Inscrit en
    Juin 2003
    Messages
    770
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France

    Informations professionnelles :
    Activité : Ing. Aérospatiale
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Juin 2003
    Messages : 770
    Points : 1 185
    Points
    1 185
    Par défaut
    Salut,
    as tu étudié l'exemple de la documentation de svmtrain pour comprendre son fonctionnement?
    Copier coller ton code est un premier pas, maintenant explique ce que tu fais et décrit avec des mots le problème, les arguments en entrée, montre nous leur contenu, leur taille...

  5. #5
    Membre à l'essai Avatar de Halgo
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2013
    Messages
    11
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2013
    Messages : 11
    Points : 13
    Points
    13
    Par défaut
    j'ai un fichier texte "file_larg" contient un ensemble de valeurs numérique tous d'abord je veut les normalisée et les mettre dans le fichier texte "datal.txt" puis je récupère les valeurs de training à partir de fichier texte "larg_apprentissage1.txt", après je fait la normalisation de ces valeurs et je les remplir dans un vecteur "donn" et en meme temps j'ai un seuil "0.85" et à travers ce seuil je remplie le vecteur "class" par les valeur 0 ou 1 qui sont les classes que.
    aprés j'utilise ces deux vecteurs pour le training: svmstruct=svmtrain(donn,clas,'kernel_function','linear')
    aprés je récupére les données de fichier texte "datal.txt" dans un vecteur "data" pour la classification
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    for i=1:length(data),
    group(i)=svmclassify(svmstruct,data(i));
    ima(i)=i;
    end
    ici je fais la classification de chaque valeur de ce vecteur dans un vecteur "group" et enfin j'affiche ma courbe dont im(i) contient les x de ma courbe.

Discussions similaires

  1. [Data mining] Méthode de classification SVM
    Par rafarma dans le forum Statistiques, Data Mining et Data Science
    Réponses: 4
    Dernier message: 29/07/2014, 20h55
  2. Classification SVM multiclasse
    Par gh_salsa2014 dans le forum Signal
    Réponses: 0
    Dernier message: 03/04/2014, 19h25
  3. algoritme de classification svm
    Par kaiseresis dans le forum Images
    Réponses: 2
    Dernier message: 16/06/2008, 16h59

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