• Aucun résultat trouvé

Partie III. Classification et caractérisation de chirotopes

5.1.1 Transformation en données binaires

Nous allons transformer un chirotope d’un modèle en deux ou trois dimensions en un vecteur binaire. Par souci de simplicité, nous noterons par 0 et 1 les deux valeurs que peuvent prendre les variables binaires.

Dans le cas uniforme les chirotopes sont des vecteurs d’éléments de {+,−}. Ainsi ils corres- pondent déjà à des données binaires. On remplacera alors la valeur + par 1 et − par 0.

Par contre dans le cas non-uniforme nous sommes bien obligés de réaliser une transformation. La méthode classique pour transformer des données nominales en données binaires est la suivante. Pour chaque variable nominale v on crée un nombre de variables binaires égal au nombre de va- leurs que peut prendre v. Ainsi la i -ème variable binaire indique si la variable v prend ou non la

i -ème valeur. On a alors que pour tout échantillon, parmi toutes les variables binaires correspon-

dant à la variable v une seule variable à pour valeur 1 et cette variable binaire correspond à la valeur de la variable v dans cet échantillon.

Dans le cas non-uniforme, lorsque l’on applique cette méthode au chirotopeχ, on crée pour tout (d +1)-uplet B de B(E ) trois variables binaires B, B0 et B+. Parmi les trois variables B, B0 et B+, la seule valant 1 correspond au signeχ(B). On obtient alors un vecteur trois fois plus grand dans lequel deux variables sur trois vaut 0.

Comparaisons de données binaires. Pour calculer les distances entre des échantillons de type binaires, on peut bien sûr utiliser la distance euclidienne ou toute autre distance utilisée pour les données numériques (voir section suivante) mais la distance la plus utilisée si les variables sont symétriques est la distance de Hamming . Cette distance consiste à compter le nombre de variables

distance de

Hamming différentes entre les deux échantillons. Formellement en notant dH amla distance de Hamming et l

la taille des vecteurs binaires, on a :

dH am(xa, xb) = #{ j ∈ {1,··· ,l }|xa( j ) 6= xb( j )}.

La distance de Hamming correspond à la distance L1si les variables sont codées par exemple par 0 et 1.

Dans le cas uniforme la distance de Hamming est exactement la distance entre deux chirotopes que nous avons définie à la Section 2.3. Dans le cas non-uniforme, pour la même raison que dans le paragraphe précédent, un (d+1)-uplet de B(E ) ayant un signe différent dans les deux chirotopes est comptée deux fois dans le calcul de la distance de Hamming. Ainsi dans le cas non-uniforme, la distance de Hamming est égale à deux fois la distance définie à la Section 2.3.

Dans le cas de variables asymétriques, on souhaite généralement dire que deux échantillons sont similaires pour une variable donnée si la variable vaut 1 dans les deux échantillons. Par exemple si les données représentent la présence (par la valeur 1) ou l’absence de symptômes pour des patients d’un hôpital, alors on souhaite que deux patients présentant un même symptôme soient considérés comme étant similaires mais que deux patients qui n’ont ni l’un ni l’autre un symptôme donné ne soient pas forcément considérés comme similaires. De nombreux indices de similarité ont été définis en biologie (et plus précisément en taxinomie). De tels indices s’appuient

5.1. TRANSFORMER UN CHIROTOPE EN DONNÉES DE DIFFÉRENTS TYPES 83

sur un tableau de contingence qui se présente comme ceci :

xb

1 0

xa 1 n11(xa, xb) n10(xa, xb)

0 n01(xa, xb) n00(xa, xb)

où ni j(xa, xb) est le nombre de variables valant i pour xaet j pour xb. Pour simplifier les notations,

s’il n’y a pas d’ambiguïté, on notera ni jau lieu de ni j(xa, xb). En notant l la taille des vecteurs, on a

alors l = n00+ n01+ n10+ n11.

Grâce à ce tableau on peut définir plusieurs indices de similarité tels que : • l’indice de similarité de Jaccard [33] : Sj(xa, xb) = n11/(n11+ n10+ n01)

• l’indice de similarité de Sokal et Sneath [73] : Sss(xa, xb) = (n11+ n00)/(n10+ n01) • l’indice de similarité de Russel et Rao [66] : Sr r(xa, xb) = n11/(n11+ n10+ n01+ n00)

De nombreux autres indices de similarité sont listés notamment par Cheetham et Hazel [11] et par Nakache et Confais [49]. Cheetham et Hazel [11] détaillent notamment les relations qui existent entre tous ces indices.

Des indices de dissimilarité sont obtenus à partir de ces indices de similarités par le calcul sui- vant : D(xa, xb) = 1 − S(xa, xb). A partir des indices de similarité précédents on obtient alors :

• l’indice de dissimilarité de Jaccard [33] : Dj(xa, xb) = (n10+ n01)/(n11+ n10+ n01)

• l’indice de dissimilarité de Sokal et Sneath [73] : Dss(xa, xb) = ((n10+ n01) − (n11+ n00))/(n10+

n01)

• l’indice de dissimilarité de Russel et Rao [66] : Sr r(xa, xb) = (n10+ n01+ n00)/(n11+ n10+ n01+

n00)

Dans le premier indice de dissimilarité on remarque que les variables valant 0 pour les deux échantillons ne sont pas prises en compte alors que dans le dernier indice ces variables sont prises en compte mais ne comptent pas comme similarité entre les échantillons.

Limite des indices de dissimilarité. Les indices de dissimilarité de Sokal et Sneath et de Russel et Rao ne sont pas des distances mathématiques. L’indice de dissimilarité de Sokal et Sneath n’est pas défini si les vecteurs sont égaux et même en rajoutant la condition que cet indice vaut 0 si les deux vecteurs sont égaux, cet indice est négatif si les valeurs des vecteurs sont égales pour plus de la moitié des variables. L’indice de dissimilarité de Russel et Rao n’est pas non plus une distance car l’indice de deux vecteurs égaux qui ont une valeur égale à 0 pour au moins une variable est stricte- ment positif. Ainsi l’utilisation de ces indices de dissimilarité peut conduire à des incohérences au point de vue des résultats.

L’indice de dissimilarité de Jaccard ne peut pas être utilisé si les vecteurs xaet xb sont nuls (si

pour toute variable v on a xa(v) = xb(v) = 0). Par contre, en rajoutant la condition que l’indice de

dissimilarité de Jaccard entre deux vecteurs nuls vaut 0 alors l’indice de dissimilarité de Jaccard est bien une distance mathématique. En effet, il est facile de voir qu’il s’agit bien d’une application sy- métrique positive qui s’annule uniquement si xa= xbet Levandowsky et Winter [41] ont prouvé que

cet indice vérifie également l’inégalité triangulaire. Pour autant, nous allons voir que la distance de Jaccard n’est pas utilisable pour comparer des chirotopes de modèles en deux ou trois dimensions.

Cette distance est toujours comprise entre 0 et 1 mais dans le cas uniforme elle peut être égale à 1 sans que les vecteurs ne possèdent beaucoup de différences. En effet, prenons l’exemple de deux chirotopesχ1etχ2tels que pour une base B1on aitχ1(B1) = + et χ2(B1) = − et que pour toutes les autres bases B on aitχ1(B ) = χ2(B ) = −. En transformant χ1etχ2en vecteurs binaires x1et x2, on a alors n11(x1, x2) = 0 et Dj(x1, x2) = 1.

Nous avons vu que dans le cas non-uniforme, lorsque l’on transforme deux chirotopesχ1 et

χ2en vecteurs binaires x1et x2, chaque (d +1)-uplet de B(E ) correspond à trois variables binaires et dans chaque vecteur binaire une seule de ces trois variables vaut 1. Ainsi siχ1(B ) = χ2(B ), x1et

x2ont les mêmes valeurs pour les trois variables binaires correspondant à B , deux de ces valeurs étant égales à 0 et une valeur est égale à 1. Par contre siχ1(B ) 6= χ2(B ), parmi les trois variables binaires correspondant à B il y en a une seule qui est égale à zéro pour les deux vecteurs x1et x2et les deux autres variables ont des valeurs différentes pour x1et x2(une vaut 1 pour x1et 0 pour x2et c’est l’inverse pour l’autre variable). Ainsi un (d +1)-uplet de B(E ) ayant un signe différent dans les deux chirotopes est comptée deux fois au numérateur et deux fois au dénominateur dans le calcul de la distance de Jaccard, alors qu’un (d +1)-uplet ayant le même signe dans les deux chirotopes est comptée une fois au dénominateur. Ainsi lorsque l’on calcule les distances deux à deux entre plusieurs chirotopes, un (d+1)-uplet non-fixe ne sera pas comptabilisée de la même façon dans les calculs des distances de Jaccard.