Ensemble de données typique : 120 à 200 lignes, 15 classes.
On sait que les lignes sont classées par classe. On ne sait pas où se trouvent les « barrières » entre les classes.
En l'état, c'est-à-dire sans tenir compte de l'ordre des lignes, LCA classe correctement environ 94 % des lignes. Mon intuition est que si je savais comment dire à l'algorithme que les lignes sont groupées par classe en entrée, nous serions à 100 %.
Visuel, au cas où mon utilisation de « groupé par » ne serait pas claire :
La bonne réponse ressemblerait à ceci :
1a
1a
1a
1a
1a
1b
1b
1b
1b
1b
1b
1b
1b
1c
1c
1c
1c
1c
1c
1c
Toutes les lignes 1a seront toujours voisines en termes d'ordre de ligne, et toutes les lignes 1b, etc.
Actuellement, j'obtiens parfois :
1a
1a
1a
1c
1c
1b
1b
1b
1b
1b
1b
1b
1b
1c
1c
1c
1c
1c
1c
1c
Des idées ?
Potentiellement, je pourrais créer une colonne avec Row() comme valeur, mais je crains que la plupart des colonnes de clustering aient des valeurs de type « classe ». Pour 15 classes, chaque colonne utilisée peut avoir entre 2 et 8 valeurs uniques. Row() aura 120 valeurs uniques, ce qui donne l'impression d'ajouter un caractère générique au mélange.