2010-12-02 9 views
0

Pour un programme C# que j'écris, j'ai besoin de comparer les similitudes dans deux entités (peut-être des documents, des animaux, ou presque). Basé sur certaines propriétés, je calcule les similitudes entre les documents (ou entités). Je mis leurs similitudes dans un tableau ci-dessousRechercher la sélection

X  Y Z 
A|0.6 |0.5 |0.4 
B|0.6 |0.4 |0.2 
C|0.6 |0.3 |0.6 

Je veux trouver les meilleures paires (par exemple: AX, BY, CZ) en fonction du score de similarité la plus élevée. Le score élevé indique la plus grande similarité.

Mon problème se pose lorsqu'il existe un lien entre les valeurs de similarité. Par exemple, AX et CZ ont tous deux 0.6. Comment puis-je choisir les deux paires à sélectionner? Existe-t-il des procédures/théories pour ce genre de problèmes?

Merci.

+0

@ user528699 Avez-vous eu de la chance avec votre problème? –

Répondre

0

En général, les méthodes de rupture d'égalité vont dépendre du contexte du problème. Dans certains cas, vous souhaitez signaler tous les résultats liés. Dans d'autres situations, vous pouvez utiliser un moyen de sélection arbitraire, par exemple celui qui est le premier alphabétique. Enfin, vous pouvez choisir d'avoir une caractéristique secondaire qui n'est évaluée que dans le cas d'une égalité dans la caractéristique primaire.

En outre, vous pouvez toujours en signaler un ou plusieurs, puis alerter l'utilisateur de l'existence d'une égalité pour lui permettre de décider pour lui-même.

0

Dans ce cas, les similitudes que vous devriez rechercher sont: - Valeur - Ligne - Colonne

objets qui ont l'un des plus haut en commun sont « similaires ». Vous pouvez affecter une pondération à chaque propriété, de sorte que les objets ayant la même valeur soient plus similaires que les objets qui se trouvent dans la même colonne. En outre, les objets qui ont la même valeur et sont dans la même colonne sont plus similaires que les objets avec la même valeur.

En fonction de l'existence de plages naturelles dans vos données, vous pouvez également envisager de comparer des plages. Par exemple, deux nombres compris entre 0 et 0,5 peuvent être similaires.