ACCUEIL MON ITCH.IO MA CHAINE ME CONTACTER

Dessiner avec Fourier

PARTIE 4 : Comparons nos signatures !

Principe de comparaison des signatures


Signons une première fois et sauvegardons cette signature... Enfin sauvegardons la liste de nos coefficients de Fourier "normalisés" ( au sens de la partie 3 )
\[ save = \left( a^x_{1},a^x_{2},...,a^x_{n} , a^y_{1},a^y_{2},...,a^y_{n} \right) \] et posons : \[ save_x = \left( a^x_{1},a^x_{2},...,a^x_{n} \right) \] \[ save_y = \left( a^y_{1},a^y_{2},...,a^y_{n} \right) \]

Signons une deuxieme fois et récupérons de la même manière : \[ signature = \left( a'^x_{1},a'^x_{2},...,a'^x_{n} , a'^y_{1},a'^y_{2},...,a'^y_{n} \right) \] \[ signature_x = \left( a'^x_{1},a'^x_{2},...,a'^x_{n} \right) \] \[ signature_y = \left( a'^y_{1},a'^y_{2},...,a'^y_{n} \right) \]

\(signature\) et \(save\) étant deux vecteurs de la boule unité de dimension \(2n\), pour les comparer on pourrait tout simplement calculer leur produit scalaire, celui-ci variant dans l'intervalle \( [-1 , 1]\)

  • Si le produit scalaire est proche de 0, les deux signatures sont indépendantes
  • Si le produit scalaire est proche de 1, les deux signatures peuvent être considérées comme identiques
  • Si le produit scalaire est proche de -1, les deux signatures sont "opposées" par symétrie centrale c'est à dire une rotation d'un demi tour.

Remarque 1 :

Or par construction des coefficients de Fourier normalisés de nos signatures, ceci sont identiques après rotation de la signature. On en conclut qu'il est impossible que le produit scalaire soit égale à ( ou proche de ) -1. En théorie le produit scalaire devrait appartenir à l'intervalle \( [0 , 1] \). Et bien que dans la pratique on puisse avoir quelques valeurs négatives, mais proches de \(0\), on peut concevoir notre produit scalaire comme un taux de coincidence entre les deux signatures , ou bien comme la probabilité que ces deux signatures soient identiques.

Remarque 2 :

Attention aux biais ! En effet du fait que nous écrivons plutôt de gauche à droite de manière linéaire, le vecteur \( signature_x = \left(a'^x_{1},a'^x_{2},...,a'^x_{n} \right) \) a toujours plus ou moins la même allure : une grosse valeur pour \( a'^x_{1} \) est des valeurs qui décroissent très vite vers \(0\) pour les autres. J'en veux pour exemple les mots suivants : "INFORMATIQUE" et "MATHS"
Les histogrammes verts correspondent aux coefficients sur l'axe de la droite de régression linéaire et les histogrammes en rouge sur l'axe perpendiculaire à la droite de régression linéaire.

On constate clairement que les histogrammes verts sont très ressemblants alors que les histogrammes rouges sont totalement différents.
Dans ces conditions, calculer \( < signature , save > \) n'est pas une bonne idée car de base la moitié des coefficients sont déjà corrélés...
Pour enlever ce biais, il suffirait de calculer le coefficient de corrélation uniquement sur \( < signature_y , save_y > \).
Mais ce serait dommage de ne pas utiliser \( signature_x \) et \( save_x \) !
Au final je propose le calcul ci-dessous pour définir la corrélation entre nos deux signatures : \[correlation = < signature_x , save_x > \times < signature_y , save_y >\]



Comparez ici vos signatures


Signez - enregistrez - resignez - comparez

1 2 3 4