PCA lorsque la dimensionnalité est supérieure au nombre d'échantillons


21

Je suis tombé sur un scénario où j'ai 10 signaux / personne pour 10 personnes (donc 100 échantillons) contenant 14000 points de données (dimensions) que je dois transmettre à un classificateur. Je voudrais réduire la dimensionnalité de ces données et l'ACP semble être le moyen de le faire. Cependant, je n'ai pu trouver que des exemples de PCA où le nombre d'échantillons est supérieur au nombre de dimensions. J'utilise une application PCA qui trouve les PC utilisant SVD. Lorsque je lui passe mon jeu de données 100x14000, 101 PC sont retournés, de sorte que la grande majorité des dimensions sont évidemment ignorées. Le programme indique que les 6 premiers PC contiennent 90% de la variance.

Est-il raisonnable de supposer que ces 101 PC contiennent essentiellement toute la variance et que les dimensions restantes sont négligeables?

L'un des articles que j'ai lus affirme que, en utilisant un ensemble de données similaire (bien que de qualité légèrement inférieure) que le mien, ils ont pu réduire 4500 dimensions à 80 en conservant 96% des informations d'origine. Le papier fait des vagues sur les détails de la technique PCA utilisée, seulement 3100 échantillons étaient disponibles, et j'ai des raisons de croire que moins d'échantillons que ceux qui ont été utilisés pour effectuer réellement l'ACP (pour éliminer le biais de la phase de classification).

Suis-je en train de manquer quelque chose ou est-ce vraiment la façon dont l'ACP est utilisée avec un ensemble de données à haute dimensionnalité et faible taille d'échantillon? Tous commentaires serait grandement apprécié.


2
Si vous n'avez pas beaucoup plus de données que de dimensions, il est difficile de trouver une direction qui supprime la majeure partie de la variabilité, ce que le premier composant principal est censé faire. En général, il y a la malédiction de la dimensionnalité. Les données ont tendance à s'éloigner du centre dans les dimensions élevées. Bellman a écrit à ce sujet dans les années 1960.
Michael R. Chernick

Réponses:


9

J'examinerais le problème sous un angle légèrement différent: dans quelle mesure un modèle peut-il se permettre avec seulement 10 sujets / 100 échantillons?

Et cette question à laquelle je réponds habituellement: beaucoup moins de 100 PC. Notez que je travaille sur un type de données différent (spectres vibrationnels), donc les choses peuvent varier un peu. Dans mon domaine, une configuration commune consisterait à utiliser 10, 25 ou 50 PC calculés à partir des spectres O (1000) de sujets O (10).

Voici ce que je ferais:

  • Regardez la variance couverte par ces 100 PC. Je trouve généralement que seuls quelques composants contribuent réellement à la variance de nos données.

  • Je préfère de beaucoup le PLS comme prétraitement pour la classification au lieu de l'ACP car il fait un bien meilleur travail pour trier les directions qui ont une variation élevée qui n'aide pas la classification (dans mon cas, cela pourrait être des variations de focalisation, des épaisseurs d'échantillon différentes,. ..). D'après mon expérience, j'obtiens souvent des classificateurs similaires avec 10 variables latentes PLS ou 25 à 50 PC.

  • Les échantillons de validation doivent être traités avec la rotation PCA calculée à partir de l'ensemble de formation uniquement, sinon la validation peut (et dans des cas extrêmes comme le vôtre le plus probablement) avoir un grand biais trop optimiste.
    En d'autres termes, si vous effectuez un bootstrap ou une validation croisée, le prétraitement PCA ou PLS doit être calculé séparément pour chaque combinaison train / ensemble de tests.


Merci pour les messages très instructifs. Je travaille avec des données de signaux biométriques. Pour effectuer une classification avec des performances raisonnables, j'ai besoin de moins de 100 PC, quelque part dans la plage de 25 à 50 serait bien. J'ai envisagé de réduire ma fréquence d'échantillonnage pour réduire le nombre d'échantillons que je dois examiner, mais vous attendez-vous à ce que le compromis de résolution en vaille la peine ou aura-t-il un quelconque effet étant donné que la même taille de formation reste la même ? Bien que j'aie besoin de PCA pour être cohérent avec d'autres études dans le domaine, je vais certainement étudier le PLS comme approche secondaire.
James

1
@James: J'ai bien peur qu'on ne puisse pas répondre à la question du taux d'échantillonnage sans connaître vos données. C'est essentiellement la question de la taille effective de l'échantillon. Sans rien savoir de plus, nous pouvons seulement dire qu'il se situe entre n (personnes) et n (échantillons). Si les 10 échantillons d'une personne sont beaucoup plus similaires les uns aux autres qu'aux échantillons d'une autre personne, alors plus d'échantillons n'ajoutent pas beaucoup d'informations à l'ensemble de données. Vous pouvez le vérifier en créant un modèle avec tous les échantillons et un deuxième modèle avec un seul échantillon par personne et en comparant leurs performances.
cbeleites prend en charge Monica

@James: (partie 2) Si vous pensez que les échantillons d'une personne sont assez similaires les uns aux autres, alors vous devez vous assurer que les ensembles de validation et de formation ne partagent pas personse (c'est-à-dire que tous les échantillons d'une personne sont soit en formation soit en ensemble d'essai).
cbeleites soutient Monica

Merci de m'avoir recontacté. Mes données présentent un degré de variabilité assez élevé avec un chevauchement important dans l'espace d'échantillonnage parmi les classes d'utilisateurs. Mais désolé, plutôt que de réduire les échantillons, je voulais dire réduire la résolution sur les 14000 points de données, alors disons que tous les 2, 3 ou 4 points ont été utilisés dans PCA, mais avec le même nombre d'échantillons d'utilisateurs réels. J'étais curieux de savoir si une telle baisse de résolution aurait un impact positif, négatif ou aucun impact sur les résultats de l'ACP étant donné que mes dimensions sont déjà beaucoup plus grandes que mes échantillons.
James

1
th


En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.