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

Algorithmes et structures de données Discussion :

Comparaison binaire par catégorie


Sujet :

Algorithmes et structures de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    20
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 20
    Par défaut Comparaison binaire par catégorie
    Bonjour,

    Voici ma situation: Je cherche à comparer un fichier binaire qui est divisé en catégorie. Ces catégories sont visibles grâce aux premiers bits. Par exemple,
    0000 - appartient à la catégorie 00 et a la propriété 00
    0001 - appartient à la catégorie 00 et a la propriété 01
    0110 - appartient à la catégorie 01 et a la propriété 10
    0101 - appartient à la catégorie 01 et a la propriété 01
    0111 - appartient à la catégorie 01 et a la propriété 11
    (Le nombre de bits dans une catérogorie et le nombre de bits dans une propriété sont les mêmes.)
    On veut donc trouver les cas similaires entre les propriétes et les catégories.
    Dans ce cas ci, on aurait 0001 et 0101 qui sont similaires ce qui fait un % de similitude de 1/3 soit 33%.
    Je dois comparer ensuite ce taux de % avec un paramètre pour déterminer si le taux est assez significatif pour nous. Si c'est le cas alors on mémorise ce cas de similitude pour éventuellement l'afficher. Bien entendu il peut y avoir plusieurs catégories qui ont différentes propriétes. Il faut donc toutes les comparer les une et les autres sans répéter, bien entendu, la même combinaison(exemple la combinaison 2,1 est la même chose que la combinaison 1,2).

    Une idée?

  2. #2
    Expert confirmé

    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    10 610
    Détails du profil
    Informations personnelles :
    Âge : 67
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 10 610
    Billets dans le blog
    2
    Par défaut
    Citation Envoyé par Geno312 Voir le message
    Une idée?
    et la tienne ??

    ici on ne fait pas les choses à ta place. On t'aide si tu as un problème..

    Poste tes idées, et on avisera...

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    20
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 20
    Par défaut
    J'ai très bien mon idée la dessus mais elle n'est pas assez performante.

    Merci de me rappeler que vous ne faites pas les choses à ma place je le sais très bien.........

    Pour en revenir à ce que je cherche, je prends le premier élément binaire et je la décortique pour trouver la catégorie et sa propriété pour ensutie l'ajouter à mon tableau de valeurs courantes. Ensuite, je le compare avec le second élément binaire. Si le second élément est de la même catégorie alors j'ajoute sa propriété à mon tableau de valeurs courantes sinon je regarde si la propriété se trouve dans mon tableau de valeurs courantes. Je continue ainsi de suite jusqu'à temps que la catégorie change. Je fais donc mon calcul de similitudes pour déterminer si je retiens les cas de similitudes ou non. Je passe ensuite à la prochaine catégorie pour effectuer le même traitement. Une fois rendu à la fin de mon fichier, je reprends le même processus mais cette fois-ci en partant avec la seconde catégorie de mon fichier.

  4. #4
    Rédacteur
    Avatar de pseudocode
    Homme Profil pro
    Architecte système
    Inscrit en
    Décembre 2006
    Messages
    10 062
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Architecte système
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2006
    Messages : 10 062
    Par défaut
    Bonsoir,

    J'ai pas bien vu le rapport entre le "probleme" du post 1 et la "solution" du post 3.

    Au vu de l'ennoncé du probleme, je pensais a un calcul de matrice de covariance catégorie/propriété, mais c'est peut-etre pas ca...
    ALGORITHME (n.m.): Méthode complexe de résolution d'un problème simple.

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    20
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 20
    Par défaut
    En gros ce que j'essaie de faire s'est de trouver les cas de similitudes dans un CSS afin de le simplifier.

    Une façon que j'ai trouvé s'est de créer un dictionnaire des classes et des attributs donc 2 tableaux. Ensuite, je créer un fichier binaire en fonction de l'index de ceux-ci. Par exemple si ma première classe a la position 0 dans mon tableau de classes et qu'elle a comme attribut l'élément 0 et l'élément 1 de mon tableau d'attributs tout en sachant que j'ai 3 classes et 3 attributs au total alors ca veut dire que ma première classe est représentée comme suit:
    00|00 = 0000
    00|01 = 0001

    S'il y avait eu disons un total de 4 classes et 8 attributs alors ma première classe aurait été représentée comme suit:
    000|0000 = 0000000
    000|0001 = 0000001

    Ensuite, il ne reste plus qu'à trouver les cas de similitudes entre les différentes classes et de les afficher d'où vient mon algorithme à mon second post mais comme j'ai mentionné, il n'est pas assez performant. (Je fais le tout en java.)

  6. #6
    Rédacteur
    Avatar de pseudocode
    Homme Profil pro
    Architecte système
    Inscrit en
    Décembre 2006
    Messages
    10 062
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Architecte système
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2006
    Messages : 10 062
    Par défaut
    Ah... c'est plutot la matrice de cooccurence alors. On incremente de "1" a chaque fois qu'on rencontre un couple (categorie,propriété). Visiblement dans ton cas, on aura jamais une case supérieure a "1" (si j'ai bien compris).

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
             propriété
    cat. | 00| 01| 10| 11|
         |---------------|
      00 | 1 | 1 |   |   | 
         |---------------|
      01 |   | 1 | 1 |   | 
         |---------------|
      10 | 1 |   | 1 |   | 
         |---------------|

    Après c'est moins clair... Si tu cherches la propriété qui revient le plus souvent, il faut chercher la colonne qui a la plus grande somme. Si tu cherches la combinaison des "n" propriétés qui reviennent le plus souvent il faut regarder du coté des algo de "covering set"...
    ALGORITHME (n.m.): Méthode complexe de résolution d'un problème simple.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Requete Annonces par catégorie
    Par AlphonseBrown dans le forum Langage SQL
    Réponses: 8
    Dernier message: 09/06/2006, 23h08
  2. Sous totaux par catégorie d'une colonne
    Par Benjamin78 dans le forum Sybase
    Réponses: 2
    Dernier message: 22/03/2006, 09h35
  3. Réponses: 3
    Dernier message: 22/09/2005, 10h34
  4. [SQL] Comparaison binaire ?
    Par webtheque dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 12/07/2005, 14h40
  5. [CR8.5] Total par catégorie
    Par sperron dans le forum SAP Crystal Reports
    Réponses: 1
    Dernier message: 21/02/2005, 11h00

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