Dans les analyses de classification SVM (noyau linéaire) d'un ensemble de données d'expression génique (~ 400 variables / gènes) pour environ 25 cas et témoins, je trouve que les classificateurs basés sur l'expression génique ont de très bonnes caractéristiques de performance. Les cas et les témoins ne diffèrent pas de manière significative pour un certain nombre de variables cliniques / démographiques catégoriques et continues (selon les tests exacts ou t de Fisher), mais ils diffèrent considérablement pour l'âge.
Existe-t-il un moyen de montrer que les résultats de l'analyse de classification sont ou ne sont pas influencés par l'âge?
Je pense à réduire les données d'expression génique aux composants principaux et à faire une analyse de corrélation Spearman des composants par rapport à l'âge.
Est-ce une approche raisonnable? Alternativement, puis-je vérifier la corrélation entre l'âge et les valeurs de probabilité d'appartenance à la classe obtenues dans l'analyse SVM.
Merci.
la source
Réponses:
Il existe au moins deux possibilités pour ces données. Une possibilité est que vos puces à ADN ne contiennent aucun marqueur de maladie. Mais, ils contiennent des informations sur l'âge, et puisque dans votre cas, les populations malades et témoins sont d'âge différent, vous obtenez l'illusion d'une bonne performance de classification. Une autre possibilité est que les puces à ADN contiennent des marqueurs de maladie et, en outre, ces marqueurs sont exactement ce sur quoi SVM se concentre.
Il semble que les principales composantes des données puissent être corrélées avec l'âge dans ces deux possibilités. Dans le premier cas, ce sera parce que l'âge est ce que les données expriment. Dans le second cas, ce sera parce que la maladie est ce que les données expriment, et cette maladie est elle-même corrélée avec l'âge (pour votre ensemble de données). Je ne pense pas qu'il existe un moyen facile d'examiner la valeur de corrélation et de conclure de quel cas il s'agit.
Je pourrais penser à plusieurs façons d'évaluer l'effet différemment. Une option consiste à diviser votre ensemble d'entraînement en groupes d'âge égal. Dans ce cas, pour les «jeunes» âges, la classe normale aura plus d'exemples de formation que la classe des maladies, et vice versa pour les âges plus avancés. Mais tant qu'il y a suffisamment d'exemples, cela ne devrait pas être un problème. Une autre option consiste à faire de même avec les ensembles de tests, c'est-à-dire à voir si le classificateur a tendance à dire «malade» plus souvent pour les patients plus âgés. Ces deux options peuvent être difficiles car vous n'avez pas autant d'exemples.
Une autre option consiste à former deux classificateurs. Dans le premier, la seule caractéristique sera l'âge. Il semble que cela ait une AUC de 0,82. Dans le second, il y aura l'âge et les données des puces à ADN. (Il semble que vous entraînez actuellement un classificateur différent qui n'utilise que les données de microréseau, et cela vous donne AUC 0,95. L'ajout explicite de la fonction d'âge est susceptible d'améliorer les performances, donc AUC sera encore plus élevé.) Si le deuxième classificateur fonctionne mieux que la première, cela indique que l'âge n'est pas la seule chose intéressante dans ces données. D'après votre commentaire, l'amélioration de l'AUC est de 0,13 ou plus, ce qui semble juste.
la source