{"id":5043,"date":"2026-10-14T18:01:21","date_gmt":"2026-10-14T18:01:21","guid":{"rendered":"http:\/\/french.arabpsychology.com\/statistics\/corriger-prediction-from-rank-deficient-fit-may-be-misleading-r\/"},"modified":"2026-10-14T18:01:21","modified_gmt":"2026-10-14T18:01:21","slug":"corriger-prediction-from-rank-deficient-fit-may-be-misleading-r","status":"publish","type":"psych_stat","link":"https:\/\/french.arabpsychology.com\/?psych_stat=corriger-prediction-from-rank-deficient-fit-may-be-misleading-r","title":{"rendered":"Comment corriger : la pr\u00e9diction \u00e0 partir d&rsquo;un ajustement de rang d\u00e9ficient peut \u00eatre trompeuse"},"content":{"rendered":"<p>L&rsquo;analyse de r\u00e9gression lin\u00e9aire constitue la cl\u00e9 de vo\u00fbte de la mod\u00e9lisation statistique appliqu\u00e9e, tant dans les sciences fondamentales que dans les disciplines appliqu\u00e9es comme l&rsquo;\u00e9conom\u00e9trie, la psychom\u00e9trie ou la biostatistique. Lorsqu&rsquo;un praticien utilise l&rsquo;environnement statistique <a rel=\"noopener noreferrer\" href=\"https:\/\/www.r-project.org\/\">GNU R<\/a> pour calibrer un mod\u00e8le au moyen de la fonction native <code>lm()<\/code>, l&rsquo;op\u00e9ration semble fluide et imm\u00e9diate gr\u00e2ce \u00e0 l&rsquo;efficacit\u00e9 des algorithmes sous-jacents. N\u00e9anmoins, l&rsquo;\u00e9tape subs\u00e9quente de d\u00e9ploiement pr\u00e9dictif via la m\u00e9thode g\u00e9n\u00e9rique <code>predict()<\/code> confronte fr\u00e9quemment les analystes \u00e0 un message d\u00e9routant : \u00ab <em>prediction from a rank-deficient fit may be misleading<\/em> \u00bb (la pr\u00e9diction \u00e0 partir d&rsquo;un ajustement de rang d\u00e9ficient peut \u00eatre trompeuse).<\/p>\n<p>Cet avertissement ne constitue pas une simple curiosit\u00e9 logicielle, mais le sympt\u00f4me formel d&rsquo;une singularit\u00e9 matricielle au sein de l&rsquo;espace vectoriel engendr\u00e9 par les covariables. Il signale que le syst\u00e8me d&rsquo;\u00e9quations normales ne poss\u00e8de pas de solution unique, for\u00e7ant l&rsquo;interpr\u00e9teur R \u00e0 faire des choix arbitraires d&rsquo;\u00e9limination de variables pour inverser la matrice d&rsquo;information. D\u00e8s lors, si l&rsquo;\u00e9valuation de la performance intra-\u00e9chantillon peut afficher un coefficient de d\u00e9termination artificiellement stable, l&rsquo;inf\u00e9rence statistique et les projections pr\u00e9dictives sur de nouvelles observations sont substantiellement compromises.<\/p>\n<p>Comprendre la nature exacte de cette anomalie requiert une exploration m\u00e9thodique croisant l&rsquo;alg\u00e8bre lin\u00e9aire, la th\u00e9orie statistique des moindres carr\u00e9s et la programmation num\u00e9rique. Ce guide exhaustif d\u00e9cortique l&rsquo;anatomie de l&rsquo;avertissement, analyse ses sources math\u00e9matiques et empiriques, propose une m\u00e9thodologie d&rsquo;audit pas \u00e0 pas et d\u00e9taille les quatre grandes strat\u00e9gies de rem\u00e9diation indispensables pour r\u00e9tablir l&rsquo;int\u00e9grit\u00e9, la robustesse et la validit\u00e9 scientifique de vos mod\u00e8les pr\u00e9dictifs.<\/p>\n<h2>1. Introduction et anatomie de l&rsquo;avertissement dans l&rsquo;environnement R<\/h2>\n<h3>1.1 Contexte d&rsquo;apparition avec la fonction predict.lm<\/h3>\n<p>L&rsquo;avertissement \u00ab <em>prediction from a rank-deficient fit may be misleading<\/em> \u00bb surgit principalement lors de l&rsquo;ex\u00e9cution de la m\u00e9thode <code>predict.lm<\/code> appliqu\u00e9e \u00e0 un objet de classe <code>lm<\/code> ou <code>glm<\/code>. Pour comprendre son \u00e9mission, il convient d&rsquo;analyser la cha\u00eene d&rsquo;ex\u00e9cution interne de R. Lorsqu&rsquo;un mod\u00e8le lin\u00e9aire est estim\u00e9, le moteur d&rsquo;optimisation v\u00e9rifie si l&rsquo;ensemble des colonnes de la matrice de plan est lin\u00e9airement ind\u00e9pendant. Si cette condition \u00e9choue, R conserve l&rsquo;ensemble des variables sp\u00e9cifi\u00e9es dans la formule mais attribue la valeur <code>NA<\/code> aux coefficients estim\u00e9s des colonnes jug\u00e9es redondantes.<\/p>\n<p>Dans la philosophie de conception de R, cette situation n&rsquo;interrompt pas le processus par une erreur bloquante (<em>fatal error<\/em>), mais g\u00e9n\u00e8re un avertissement diff\u00e9r\u00e9. L&rsquo;estimation s&rsquo;ach\u00e8ve avec succ\u00e8s en apparence, produisant un objet exploitable pour le calcul des r\u00e9sidus ou du R-carr\u00e9 intra-\u00e9chantillon. Toutefois, le danger se mat\u00e9rialise d\u00e8s que l&rsquo;analyste sollicite la fonction <code>predict()<\/code> pour \u00e9valuer de nouvelles donn\u00e9es. Le sous-programme constate que la matrice de covariance des param\u00e8tres pr\u00e9sente une singularit\u00e9 et que le vecteur pr\u00e9dictif d\u00e9pend d&rsquo;un sous-espace tronqu\u00e9 de fa\u00e7on arbitraire.<\/p>\n<p>Le comportement de l&rsquo;interpr\u00e9teur face aux coefficients non estimables consiste \u00e0 les ignorer purement et simplement lors du produit matriciel entre la nouvelle matrice d&rsquo;exp\u00e9rience et le vecteur des estimateurs. Les vecteurs de valeurs pr\u00e9dites g\u00e9n\u00e9r\u00e9s par cette op\u00e9ration peuvent s&rsquo;av\u00e9rer corrects pour des observations dont la structure de colin\u00e9arit\u00e9 reproduit exactement celle de l&rsquo;\u00e9chantillon d&rsquo;apprentissage. Cependant, d\u00e8s qu&rsquo;une l\u00e9g\u00e8re d\u00e9viation survient dans la g\u00e9om\u00e9trie des nouveaux pr\u00e9dicteurs, les valeurs pr\u00e9dites deviennent instables, biais\u00e9es, voire totalement aberrantes, justifiant le qualificatif de \u00ab trompeuses \u00bb.<\/p>\n<h3>1.2 D\u00e9finition synth\u00e9tique d&rsquo;un mod\u00e8le \u00e0 rang d\u00e9ficient<\/h3>\n<p>D&rsquo;un point de vue structural, un mod\u00e8le lin\u00e9aire est qualifi\u00e9 de rang d\u00e9ficient lorsque la <a rel=\"noopener noreferrer\" href=\"https:\/\/fr.wikipedia.org\/wiki\/Matrice_de_plan\">matrice de plan<\/a> <span class=\"arabpsy-math-inline\" data-latex=\"X\">$X$<\/span>, de dimensions <span class=\"arabpsy-math-inline\" data-latex=\"n \\times p\">$n \\times p$<\/span> (o\u00f9 <span class=\"arabpsy-math-inline\" data-latex=\"n\">$n$<\/span> repr\u00e9sente le nombre d&rsquo;observations et <span class=\"arabpsy-math-inline\" data-latex=\"p\">$p$<\/span> le nombre de param\u00e8tres \u00e0 estimer en incluant la constante), poss\u00e8de un rang strictement inf\u00e9rieur \u00e0 <span class=\"arabpsy-math-inline\" data-latex=\"p\">$p$<\/span>. Le rang d&rsquo;une matrice correspond au nombre maximal de vecteurs colonnes (ou lignes) lin\u00e9airement ind\u00e9pendants. Lorsque $mathrm{rg}(X) = k < p<span class=\"arabpsy-math-inline\" data-latex=\", les colonnes de la matrice n&#039;engendrent pas un espace de dimension\">$, les colonnes de la matrice n&rsquo;engendrent pas un espace de dimension$<\/span>p<span class=\"arabpsy-math-inline\" data-latex=\", mais un sous-e\\space vectoriel de dimension restreinte\">$, mais un sous-e\\space vectoriel de dimension restreinte$<\/span>k$.<\/p>\n<p>Cette d\u00e9ficience entra\u00eene une incapacit\u00e9 math\u00e9matique fondamentale : le produit matriciel <span class=\"arabpsy-math-inline\" data-latex=\"X^T X\">$X^T X$<\/span>, couramment d\u00e9nomm\u00e9 matrice d&rsquo;information ou matrice de Gram, devient non inversible. Son d\u00e9terminant s&rsquo;annule, ce qui rend caduque l&rsquo;\u00e9quation standard des moindres carr\u00e9s ordinaires. La perte d&rsquo;ind\u00e9pendance lin\u00e9aire stricte entre les pr\u00e9dicteurs signifie qu&rsquo;au moins une variable explicative peut s&rsquo;exprimer sous la forme d&rsquo;une combinaison lin\u00e9aire exacte d&rsquo;une ou plusieurs autres colonnes du mod\u00e8le.<\/p>\n<p>Il est capital d&rsquo;op\u00e9rer une distinction nette entre deux types de d\u00e9ficiences : la d\u00e9ficience structurelle et la d\u00e9ficience accidentelle. La d\u00e9ficience structurelle rel\u00e8ve d&rsquo;une erreur conceptuelle dans la formulation du mod\u00e8le, telle que l&rsquo;inclusion simultan\u00e9e des composantes d&rsquo;un total et de leur somme, ou le non-retrait d&rsquo;une modalit\u00e9 de r\u00e9f\u00e9rence dans les contrastes cat\u00e9goriels. La d\u00e9ficience accidentelle, quant \u00e0 elle, d\u00e9coule des caract\u00e9ristiques intrins\u00e8ques du jeu de donn\u00e9es collect\u00e9, par exemple lorsqu&rsquo;une modalit\u00e9 exp\u00e9rimentale rare n&rsquo;a jamais \u00e9t\u00e9 observ\u00e9e en combinaison avec un autre facteur, cr\u00e9ant des cellules d&rsquo;effectif nul non anticip\u00e9es par le chercheur.<\/p>\n<h3>1.3 Enjeux m\u00e9thodologiques pour la recherche quantitative<\/h3>\n<p>Dans le domaine de la recherche quantitative, en particulier au sein des sciences comportementales, de l&rsquo;\u00e9conomie et de la biom\u00e9decine, la pr\u00e9sence non r\u00e9solue d&rsquo;un ajustement de rang d\u00e9ficient sape l&rsquo;ensemble de la d\u00e9marche inf\u00e9rentielle. Le premier \u00e9cueil r\u00e9side dans le biais d&rsquo;interpr\u00e9tation des coefficients de r\u00e9gression. Dans un mod\u00e8le lin\u00e9aire de plein rang, chaque coefficient repr\u00e9sente l&rsquo;effet marginal th\u00e9orique d&rsquo;un pr\u00e9dicteur sur la variable d\u00e9pendante, toutes les autres variables \u00e9tant maintenues constantes. En pr\u00e9sence de rang d\u00e9ficient, cette condition <em>ceteris paribus<\/em> devient g\u00e9om\u00e9triquement impossible, car les covariables sont interd\u00e9pendantes.<\/p>\n<p>La validit\u00e9 interne des inf\u00e9rences statistiques se trouve d\u00e8s lors compromise. Les tests d&rsquo;hypoth\u00e8ses conventionnels bas\u00e9s sur la distribution de Student ou de Fisher s&rsquo;effondrent pour les param\u00e8tres associ\u00e9s aux variables redondantes. L&rsquo;attribution automatique de la valeur <code>NA<\/code> \u00e9limine artificiellement ces pr\u00e9dicteurs de la table d&rsquo;analyse de la variance, modifiant le calcul des degr\u00e9s de libert\u00e9 r\u00e9siduels et d\u00e9formant le seuil de significativit\u00e9 statistique des variables restantes.<\/p>\n<p>Enfin, sur le plan appliqu\u00e9 de la g\u00e9n\u00e9ralisation des mod\u00e8les, les risques d&rsquo;instabilit\u00e9 num\u00e9rique majeure lors de la pr\u00e9diction sur de nouveaux \u00e9chantillons sont critiques. Un mod\u00e8le \u00e0 rang d\u00e9ficient peut afficher une excellente ad\u00e9quation aux donn\u00e9es d&rsquo;apprentissage tout en produisant une erreur quadratique moyenne de pr\u00e9diction catastrophique lorsqu&rsquo;il est confront\u00e9 \u00e0 des donn\u00e9es externes. Les intervalles de confiance et de pr\u00e9diction deviennent erron\u00e9s, exposant les praticiens \u00e0 des prises de d\u00e9cision strat\u00e9giques, cliniques ou industrielles fond\u00e9es sur des projections m\u00e9thodologiquement trompeuses.<\/p>\n<h2>2. Fondements alg\u00e9briques : Comprendre la d\u00e9ficience de rang matriciel<\/h2>\n<h3>2.1 L&rsquo;alg\u00e8bre lin\u00e9aire sous-jacente aux moindres carr\u00e9s ordinaires (MCO)<\/h3>\n<p>L&rsquo;estimation des param\u00e8tres d&rsquo;un mod\u00e8le lin\u00e9aire repose sur la formulation matricielle classique r\u00e9gie par la relation vectorielle :<\/p>\n<p><span class=\"arabpsy-math-display\" data-latex=\"Y = X\\beta + \\varepsilon\">$$Y = X\\beta + \\varepsilon$$<\/span><\/p>\n<p>Dans cette \u00e9quation, <span class=\"arabpsy-math-inline\" data-latex=\"Y\">$Y$<\/span> est le vecteur de dimension <span class=\"arabpsy-math-inline\" data-latex=\"n \\times 1\">$n \\times 1$<\/span> des observations de la r\u00e9ponse, <span class=\"arabpsy-math-inline\" data-latex=\"X\">$X$<\/span> est la matrice d&rsquo;exp\u00e9rience de dimension <span class=\"arabpsy-math-inline\" data-latex=\"n \\times p\">$n \\times p$<\/span>, <span class=\"arabpsy-math-inline\" data-latex=\"\\beta\">$\\beta$<\/span> est le vecteur <span class=\"arabpsy-math-inline\" data-latex=\"p \\times 1\">$p \\times 1$<\/span> des coefficients inconnus \u00e0 estimer, et <span class=\"arabpsy-math-inline\" data-latex=\"varepsilon\">$varepsilon$<\/span> repr\u00e9sente le terme d&rsquo;erreur stochastique non corr\u00e9l\u00e9e de moyenne nulle et de variance constante <span class=\"arabpsy-math-inline\" data-latex=\"\\sigma^2 I_n\">$\\sigma^2 I_n$<\/span>. L&rsquo;objectif fondamental de la m\u00e9thode des <a rel=\"noopener noreferrer\" href=\"https:\/\/fr.wikipedia.org\/wiki\/M%C3%A9thode_des_moindres_carr%C3%A9s\">moindres carr\u00e9s ordinaires<\/a> consiste \u00e0 d\u00e9terminer le vecteur d&rsquo;estimation <span class=\"arabpsy-math-inline\" data-latex=\"\\hat{\\beta}\">$\\hat{\\beta}$<\/span> qui minimise la somme des carr\u00e9s des r\u00e9sidus, repr\u00e9sent\u00e9e par la norme quadratique <span class=\"arabpsy-math-inline\" data-latex=\"|Y - Xbeta|^2\">$|Y &#8211; Xbeta|^2$<\/span>.<\/p>\n<p>En diff\u00e9rentiant cette expression par rapport au vecteur des coefficients <span class=\"arabpsy-math-inline\" data-latex=\"\\beta\">$\\beta$<\/span> et en \u00e9galisant le gradient r\u00e9sultant au vecteur nul, nous obtenons le syst\u00e8me fondamental des \u00e9quations normales :<\/p>\n<p><span class=\"arabpsy-math-display\" data-latex=\"X^T X \\hat{\\beta} = X^T Y\">$$X^T X \\hat{\\beta} = X^T Y$$<\/span><\/p>\n<p>L&rsquo;existence et l&rsquo;unicit\u00e9 d&rsquo;une solution analytique rigoureuse pour ce syst\u00e8me d&rsquo;\u00e9quations imposent une condition stricte : la matrice carr\u00e9e <span class=\"arabpsy-math-inline\" data-latex=\"X^T X\">$X^T X$<\/span>, de dimensions <span class=\"arabpsy-math-inline\" data-latex=\"p \\times p\">$p \\times p$<\/span>, doit \u00eatre inversible. En alg\u00e8bre lin\u00e9aire matricielle, une matrice carr\u00e9e est inversible si et seulement si son d\u00e9terminant est non nul, ce qui implique que son rang soit \u00e9gal \u00e0 sa dimension, \u00e0 savoir <span class=\"arabpsy-math-inline\" data-latex=\"\\mathrm{rg}(X^T X) = p\">$\\mathrm{rg}(X^T X) = p$<\/span>. Puisque le rang du produit <span class=\"arabpsy-math-inline\" data-latex=\"X^T X\">$X^T X$<\/span> est math\u00e9matiquement identique au rang de la matrice <span class=\"arabpsy-math-inline\" data-latex=\"X\">$X$<\/span> d&rsquo;origine, cette condition impose que <span class=\"arabpsy-math-inline\" data-latex=\"X\">$X$<\/span> soit de plein rang de colonne, c&rsquo;est-\u00e0-dire que <span class=\"arabpsy-math-inline\" data-latex=\"\\mathrm{rg}(X) = p\">$\\mathrm{rg}(X) = p$<\/span>.<\/p>\n<p>Lorsque cette condition de plein rang est respect\u00e9e, l&rsquo;estimateur des moindres carr\u00e9s prend la forme ferm\u00e9e universelle bien connue :<\/p>\n<p><span class=\"arabpsy-math-display\" data-latex=\"\\hat{\\beta} = (X^T X)^{-1} X^T Y\">$$\\hat{\\beta} = (X^T X)^{-1} X^T Y$$<\/span><\/p>\n<p>En revanche, d\u00e8s lors que la matrice <span class=\"arabpsy-math-inline\" data-latex=\"X\">$X$<\/span> accuse une d\u00e9ficience de rang ($mathrm{rg}(X) < p<span class=\"arabpsy-math-inline\" data-latex=\"), le d\u00e9terminant de la matrice d&#039;information s&#039;annule rigoureusement :\">$), le d\u00e9terminant de la matrice d&rsquo;information s&rsquo;annule rigoureusement :$<\/span>det(X^T X) = 0<span class=\"arabpsy-math-inline\" data-latex=\". En cons\u00e9quence g\u00e9om\u00e9trique et alg\u00e9brique directe, la matrice inverse\">$. En cons\u00e9quence g\u00e9om\u00e9trique et alg\u00e9brique directe, la matrice inverse$<\/span>(X^T X)^{-1}$ n&rsquo;existe pas. Le syst\u00e8me des \u00e9quations normales admet alors une infinit\u00e9 de solutions pour le vecteur de r\u00e9gression <span class=\"arabpsy-math-inline\" data-latex=\"\\hat{\\beta}\">$\\hat{\\beta}$<\/span>, induisant une ind\u00e9termination totale quant \u00e0 l&rsquo;impact marginal respectif de chaque variable explicative.<\/p>\n<h3>2.2 D\u00e9composition en valeurs singuli\u00e8res et espaces nuls<\/h3>\n<p>Pour contourner l&rsquo;impossibilit\u00e9 d&rsquo;inverser directement la matrice d&rsquo;information, les logiciels de calcul statistique moderne et en particulier le logiciel R \u00e9vitent le calcul explicite de <span class=\"arabpsy-math-inline\" data-latex=\"X^T X\">$X^T X$<\/span>. Au lieu de multiplier la matrice <span class=\"arabpsy-math-inline\" data-latex=\"X\">$X$<\/span> par sa transpos\u00e9e \u2014 une op\u00e9ration qui double la condition num\u00e9rique du syst\u00e8me \u2014, la fonction <code>lm()<\/code> recourt \u00e0 une routine num\u00e9rique bas\u00e9e sur la <a rel=\"noopener noreferrer\" href=\"https:\/\/fr.wikipedia.org\/wiki\/D%C3%A9composition_QR\">d\u00e9composition QR<\/a> avec pivotement de colonnes, ex\u00e9cut\u00e9e via les algorithmes Fortran de la biblioth\u00e8que LINPACK\/LAPACK (notamment la routine <code>dqrls<\/code>).<\/p>\n<p>Cette approche factorise la matrice d&rsquo;exp\u00e9rience sous la forme suivante :<\/p>\n<p><span class=\"arabpsy-math-display\" data-latex=\"X P = Q R\">$$X P = Q R$$<\/span><\/p>\n<p>o\u00f9 <span class=\"arabpsy-math-inline\" data-latex=\"P\">$P$<\/span> repr\u00e9sente une matrice de permutation de dimension <span class=\"arabpsy-math-inline\" data-latex=\"p \\times p\">$p \\times p$<\/span> servant \u00e0 permuter l&rsquo;ordre des variables, <span class=\"arabpsy-math-inline\" data-latex=\"Q\">$Q$<\/span> est une matrice orthogonale <span class=\"arabpsy-math-inline\" data-latex=\"n \\times n\">$n \\times n$<\/span> telle que <span class=\"arabpsy-math-inline\" data-latex=\"Q^T Q = I\">$Q^T Q = I$<\/span>, et <span class=\"arabpsy-math-inline\" data-latex=\"R\">$R$<\/span> est une matrice triangulaire sup\u00e9rieure <span class=\"arabpsy-math-inline\" data-latex=\"n \\times p\">$n \\times p$<\/span>. Lors de cette d\u00e9composition, les \u00e9l\u00e9ments diagonaux de la matrice triangulaire <span class=\"arabpsy-math-inline\" data-latex=\"R\">$R$<\/span> (not\u00e9s <span class=\"arabpsy-math-inline\" data-latex=\"r_{ii}\">$r_{ii}$<\/span>) sont examin\u00e9s s\u00e9quentiellement en fonction d&rsquo;un seuil de tol\u00e9rance num\u00e9rique stricte. Si un \u00e9l\u00e9ment diagonal devient inf\u00e9rieur \u00e0 la tol\u00e9rance sp\u00e9cifi\u00e9e (par d\u00e9faut dans R, une valeur proche de la pr\u00e9cision machine multipli\u00e9e par la plus grande valeur singuli\u00e8re), la colonne correspondante est imm\u00e9diatement projet\u00e9e dans l&rsquo;espace nul (le noyau matriciel, ou <em>null space<\/em>).<\/p>\n<p>Dans le cadre \u00e9quivalent de la d\u00e9composition en valeurs singuli\u00e8res (SVD), o\u00f9 <span class=\"arabpsy-math-inline\" data-latex=\"X = U \\Sigma V^T\">$X = U \\Sigma V^T$<\/span>, la d\u00e9ficience de rang se manifeste par la pr\u00e9sence de valeurs singuli\u00e8res nulles ou infinit\u00e9simales dans la matrice diagonale <span class=\"arabpsy-math-inline\" data-latex=\"\\Sigma\">$\\Sigma$<\/span>. L&rsquo;espace vectoriel engendr\u00e9 par les colonnes de <span class=\"arabpsy-math-inline\" data-latex=\"X\">$X$<\/span> ne couvre pas la totalit\u00e9 de <span class=\"arabpsy-math-inline\" data-latex=\"\\mathbb{R}^p\">$\\mathbb{R}^p$<\/span>. Les colonnes associ\u00e9es \u00e0 ces valeurs singuli\u00e8res nulles appartiennent au noyau de la transformation lin\u00e9aire <span class=\"arabpsy-math-inline\" data-latex=\"ker(X)\">$ker(X)$<\/span>, signifiant qu&rsquo;il existe des vecteurs non nuls <span class=\"arabpsy-math-inline\" data-latex=\"v\">$v$<\/span> tels que <span class=\"arabpsy-math-inline\" data-latex=\"X v = 0\">$X v = 0$<\/span>. R r\u00e9sout pragmatiquement cette non-inversibilit\u00e9 en stoppant l&rsquo;estimation des colonnes d\u00e9pendantes : il affecte la valeur <code>NA<\/code> \u00e0 leurs coefficients et force leur contribution \u00e0 z\u00e9ro dans la solution num\u00e9rique retenue.<\/p>\n<h3>2.3 Pourquoi les pr\u00e9dictions deviennent-elles trompeuses ?<\/h3>\n<p>La raison fondamentale pour laquelle la documentation et les concepteurs de R qualifient de \u00ab trompeuse \u00bb la pr\u00e9diction issue d&rsquo;un tel ajustement repose sur l&rsquo;arbitraire algorithmique inh\u00e9rent \u00e0 la r\u00e9solution num\u00e9rique. Lorsque <span class=\"arabpsy-math-inline\" data-latex=\"X\">$X$<\/span> est de rang d\u00e9ficient, il existe une infinit\u00e9 de vecteurs de coefficients <span class=\"arabpsy-math-inline\" data-latex=\"\\hat{\\beta}\">$\\hat{\\beta}$<\/span> capables de minimiser identiquement la somme des carr\u00e9s des r\u00e9sidus au sein de l&rsquo;\u00e9chantillon initial. Le choix du sous-ensemble de variables qui re\u00e7oivent une valeur estim\u00e9e et de celles qui re\u00e7oivent un <code>NA<\/code> d\u00e9pend strictement de l&rsquo;ordre d&rsquo;entr\u00e9e des variables dans la formule ou de la strat\u00e9gie de pivotement num\u00e9rique de la d\u00e9composition QR.<\/p>\n<p>Consid\u00e9rons deux sp\u00e9cifications \u00e9quivalentes d&rsquo;un mod\u00e8le o\u00f9 une variable <span class=\"arabpsy-math-inline\" data-latex=\"X_2\">$X_2$<\/span> est \u00e9gale \u00e0 deux fois <span class=\"arabpsy-math-inline\" data-latex=\"X_1\">$X_1$<\/span>. Si l&rsquo;on \u00e9crit <code>lm(Y ~ X1 + X2)<\/code>, l&rsquo;algorithme attribuera g\u00e9n\u00e9ralement une valeur estim\u00e9e \u00e0 <span class=\"arabpsy-math-inline\" data-latex=\"X_1\">$X_1$<\/span> et un <code>NA<\/code> \u00e0 <span class=\"arabpsy-math-inline\" data-latex=\"X_2\">$X_2$<\/span>. \u00c0 l&rsquo;inverse, si l&rsquo;on \u00e9crit <code>lm(Y ~ X2 + X1)<\/code>, le mod\u00e8le retiendra le coefficient pour <span class=\"arabpsy-math-inline\" data-latex=\"X_2\">$X_2$<\/span> et \u00e9liminera <span class=\"arabpsy-math-inline\" data-latex=\"X_1\">$X_1$<\/span>. Tant que les nouvelles observations respectent rigoureusement la relation <span class=\"arabpsy-math-inline\" data-latex=\"X_2 = 2 X_1\">$X_2 = 2 X_1$<\/span>, les pr\u00e9dictions scalaires restent formellement identiques. Cependant, si dans le jeu de test ou dans le monde r\u00e9el, cette colin\u00e9arit\u00e9 d\u00e9terministe est viol\u00e9e ne serait-ce que marginalement (par exemple si <span class=\"arabpsy-math-inline\" data-latex=\"X_2 = 2 X_1 + \\delta\">$X_2 = 2 X_1 + \\delta$<\/span>), la valeur pr\u00e9dite diverge instantan\u00e9ment selon le mod\u00e8le choisi, conduisant \u00e0 des r\u00e9sultats physiquement ou \u00e9conomiquement absurdes.<\/p>\n<p>De surcro\u00eet, cette situation alt\u00e8re profond\u00e9ment le calcul des variances pr\u00e9dictives. Alors que l&rsquo;ajustement global interne mesur\u00e9 par le coefficient de d\u00e9termination (<span class=\"arabpsy-math-inline\" data-latex=\"R^2\">$R^2$<\/span>) ou la somme des carr\u00e9s r\u00e9siduels reste parfaitement invariant face au choix de la base vectorielle arbitraire, la matrice de variance-covariance des param\u00e8tres devient conditionnelle \u00e0 l&rsquo;\u00e9limination artificielle des colonnes redondantes. D\u00e8s lors, les erreurs standards associ\u00e9es aux pr\u00e9dictions s&rsquo;av\u00e8rent fallacieuses, sous-estimant massivement l&rsquo;incertitude r\u00e9elle du mod\u00e8le et g\u00e9n\u00e9rant des intervalles de confiance pr\u00e9dictifs artificiellement \u00e9troits qui trompent l&rsquo;analyste sur la fiabilit\u00e9 de ses projections.<\/p>\n<h2>3. Cause premi\u00e8re : La colin\u00e9arit\u00e9 parfaite entre variables explicatives<\/h2>\n<h3>3.1 M\u00e9canismes de la multicolin\u00e9arit\u00e9 exacte<\/h3>\n<p>La cause la plus fr\u00e9quente et la plus \u00e9l\u00e9mentaire menant \u00e0 une alerte de rang d\u00e9ficient dans R est la multicolin\u00e9arit\u00e9 exacte ou parfaite. Ce ph\u00e9nom\u00e8ne math\u00e9matique survient lorsqu&rsquo;il existe une relation lin\u00e9aire d\u00e9terministe entre deux ou plusieurs pr\u00e9dicteurs inclus dans la sp\u00e9cification du mod\u00e8le. Formellement, il existe un ensemble de constantes scalaires scalaires non toutes nulles <span class=\"arabpsy-math-inline\" data-latex=\"(c_0, c_1, c_2, dots, c_k)\">$(c_0, c_1, c_2, dots, c_k)$<\/span> telles que, pour chaque observation <span class=\"arabpsy-math-inline\" data-latex=\"i\">$i$<\/span> du jeu de donn\u00e9es, la relation suivante soit rigoureusement satisfaite :<\/p>\n<p><span class=\"arabpsy-math-display\" data-latex=\"c_0 + c_1 X_{i1} + c_2 X_{i2} + dots + c_k X_{ik} = 0\">$$c_0 + c_1 X_{i1} + c_2 X_{i2} + dots + c_k X_{ik} = 0$$<\/span><\/p>\n<p>Dans la pratique de la science des donn\u00e9es, cette situation provient rarement d&rsquo;une volont\u00e9 d\u00e9lib\u00e9r\u00e9e du mod\u00e9lisateur, mais plut\u00f4t d&rsquo;erreurs d&rsquo;ing\u00e9nierie des caract\u00e9ristiques (<em>feature engineering<\/em>) ou de manipulations de donn\u00e9es imprudentes. Parmi les exemples embl\u00e9matiques figure la duplication accidentelle d&rsquo;une colonne sous un nom de variable distinct lors d&rsquo;une jointure de tables, ou encore l&rsquo;application d&rsquo;une mise \u00e0 l&rsquo;\u00e9chelle purement lin\u00e9aire sans suppression de la colonne d&rsquo;origine (par exemple, introduire simultan\u00e9ment la temp\u00e9rature mesur\u00e9e en degr\u00e9s Celsius et en degr\u00e9s Fahrenheit, o\u00f9 l&rsquo;on a <span class=\"arabpsy-math-inline\" data-latex=\"T_F = 1.8 \\times T_C + 32\">$T_F = 1.8 \\times T_C + 32$<\/span>).<\/p>\n<p>Sur le plan informatif, l&rsquo;inclusion de covariables parfaitement colin\u00e9aires n&rsquo;apporte strictement aucune information empirique nouvelle au syst\u00e8me statistique. Le sous-espace vectoriel balay\u00e9 par les pr\u00e9dicteurs redondants est strictement superposable \u00e0 celui de la variable d&rsquo;origine. Les tests de significativit\u00e9 individuelle bas\u00e9s sur la statistique de Student deviennent inop\u00e9rants, car ils mesurent l&rsquo;apport marginal d&rsquo;une variable au-del\u00e0 de toutes les autres. L&rsquo;effet de masque est total : chacune des variables redondantes pourrait expliquer la variance, mais aucune ne peut revendiquer une contribution unique, paralysant la m\u00e9thode d&rsquo;estimation.<\/p>\n<h3>3.2 Reproduction empirique sous R : Deux variables parfaitement d\u00e9pendantes<\/h3>\n<p>Pour illustrer de mani\u00e8re concr\u00e8te et reproductible ce m\u00e9canisme d&rsquo;\u00e9chec, nous pouvons simuler un protocole simple au sein d&rsquo;une session R. G\u00e9n\u00e9rons un \u00e9chantillon synth\u00e9tique compos\u00e9 de 100 observations o\u00f9 une variable explicative <span class=\"arabpsy-math-inline\" data-latex=\"x_2\">$x_2$<\/span> est construite comme un multiple parfait d&rsquo;une variable <span class=\"arabpsy-math-inline\" data-latex=\"x_1\">$x_1$<\/span>, avant d&rsquo;ajuster un mod\u00e8le lin\u00e9aire visant \u00e0 pr\u00e9dire une variable continue <span class=\"arabpsy-math-inline\" data-latex=\"y\">$y$<\/span> :<\/p>\n<p>L&rsquo;ex\u00e9cution de la commande classique <code>lm(y ~ x1 + x2, data = df)<\/code> r\u00e9v\u00e8le imm\u00e9diatement la logique de protection interne de R. Si l&rsquo;on sollicite le tableau r\u00e9sum\u00e9 via la commande <code>summary(model)<\/code>, le syst\u00e8me affiche les estimations num\u00e9riques pour l&rsquo;ordonn\u00e9e \u00e0 l&rsquo;origine et pour le pr\u00e9dicteur <span class=\"arabpsy-math-inline\" data-latex=\"x_1\">$x_1$<\/span>. En revanche, pour la ligne correspondant \u00e0 <span class=\"arabpsy-math-inline\" data-latex=\"x_2\">$x_2$<\/span>, l&rsquo;ensemble des colonnes d&rsquo;estimation (l&rsquo;erreur standard, la valeur du test <span class=\"arabpsy-math-inline\" data-latex=\"t\">$t$<\/span> et la <span class=\"arabpsy-math-inline\" data-latex=\"p\">$p$<\/span>-valeur associ\u00e9e) est uniform\u00e9ment remplac\u00e9 par la mention explicite <code>NA<\/code>.<\/p>\n<p>\u00c0 ce stade, aucune interruption critique n&rsquo;a eu lieu dans le script. Toutefois, d\u00e8s lors que l&rsquo;utilisateur applique la commande pr\u00e9dictive <code>predict(model, newdata = data.frame(x1 = c(2, 3), x2 = c(4, 6)))<\/code>, le flux d&rsquo;ex\u00e9cution d\u00e9clenche l&rsquo;avertissement formel :<\/p>\n<p><code>Warning message: In predict.lm(model, newdata = ...): prediction from a rank-deficient fit may be misleading<\/code><\/p>\n<p>Ce d\u00e9clenchement reproductible mat\u00e9rialise le fait que le mod\u00e8le ignore structurellement <span class=\"arabpsy-math-inline\" data-latex=\"x_2\">$x_2$<\/span>. Si le nouveau jeu de donn\u00e9es contenait une observation aberrante o\u00f9 <span class=\"arabpsy-math-inline\" data-latex=\"x_1 = 2\">$x_1 = 2$<\/span> mais <span class=\"arabpsy-math-inline\" data-latex=\"x_2 = 100\">$x_2 = 100$<\/span>, le mod\u00e8le pr\u00e9dirait la valeur de <span class=\"arabpsy-math-inline\" data-latex=\"y\">$y$<\/span> uniquement \u00e0 partir de <span class=\"arabpsy-math-inline\" data-latex=\"x_1\">$x_1$<\/span>, g\u00e9n\u00e9rant une pr\u00e9diction potentiellement catastrophique si le ph\u00e9nom\u00e8ne r\u00e9el sous-jacent avait rompu cette d\u00e9pendance.<\/p>\n<h3>3.3 Manifestations subtiles dans les scores composites et psychom\u00e9triques<\/h3>\n<p>Au-del\u00e0 des duplications \u00e9videntes, la colin\u00e9arit\u00e9 exacte se manifeste sous des formes nettement plus subtiles et pernicieuses, en particulier dans les recherches en psychologie, en sociologie et en sant\u00e9 publique manipulant des scores composites. Un cas prototypique r\u00e9side dans l&rsquo;introduction conjointe, au sein d&rsquo;un m\u00eame mod\u00e8le explicatif, des sous-\u00e9chelles d&rsquo;un instrument de mesure psychom\u00e9trique et du score global qui en d\u00e9rive.<\/p>\n<p>Consid\u00e9rons un questionnaire clinique \u00e9valuant l&rsquo;\u00e9puisement professionnel (burnout) mesur\u00e9 selon trois dimensions fondamentales : l&rsquo;\u00e9puisement \u00e9motionnel, la d\u00e9personnalisation et la perte d&rsquo;accomplissement personnel. Si le chercheur construit une variable de score global d\u00e9finie par la somme arithm\u00e9tique exacte des trois sous-scores, la relation suivante s&rsquo;impose m\u00e9caniquement :<\/p>\n<p><span class=\"arabpsy-math-display\" data-latex=\"\\text{Score Global} - \\text{SousScore}_1 - \\text{SousScore}_2 - \\text{SousScore}_3 = 0\">$$\\text{Score Global} &#8211; \\text{SousScore}_1 &#8211; \\text{SousScore}_2 &#8211; \\text{SousScore}_3 = 0$$<\/span><\/p>\n<p>L&rsquo;introduction simultan\u00e9e de ces quatre variables explicatives dans la formule de r\u00e9gression induit in\u00e9luctablement une d\u00e9pendance lin\u00e9aire stricte \u00e0 quatre termes. R sera dans l&rsquo;obligation math\u00e9matique d&rsquo;annuler l&rsquo;une de ces dimensions en lui attribuant un coefficient <code>NA<\/code>, sans que l&rsquo;analyste non averti ne comprenne pourquoi une \u00e9chelle th\u00e9oriquement fondamentale est subitement ignor\u00e9e par le syst\u00e8me.<\/p>\n<p>Un m\u00e9canisme analogue s&rsquo;observe fr\u00e9quemment dans le traitement des <a rel=\"noopener noreferrer\" href=\"https:\/\/fr.wikipedia.org\/wiki\/Donn%C3%A9e_compositionnelle\">donn\u00e9es compositionnelles<\/a>, o\u00f9 les covariables repr\u00e9sentent des pourcentages ou des proportions d&rsquo;un tout soumis \u00e0 une contrainte de somme constante (la fermeture \u00e0 100 % ou \u00e0 1). Si un mod\u00e8le \u00e9conom\u00e9trique int\u00e8gre la part du budget allou\u00e9e au logement, \u00e0 l&rsquo;alimentation, aux loisirs et aux autres d\u00e9penses, la somme de ces composantes \u00e9gale invariablement 1. En pr\u00e9sence d&rsquo;une constante dans le mod\u00e8le, cette matrice de variables compositionnelles devient math\u00e9matiquement de rang d\u00e9ficient, imposant d&rsquo;exclure une composante pour briser la contrainte d\u00e9terministe.<\/p>\n<h2>4. Cause seconde : Le probl\u00e8me du sur-param\u00e9trage (n < p)<\/h2>\n<h3>4.1 La mal\u00e9diction de la dimensionnalit\u00e9 dans les petits \u00e9chantillons<\/h3>\n<p>La seconde cause pr\u00e9pond\u00e9rante menant \u00e0 une d\u00e9ficience de rang matriciel ne provient pas d&rsquo;une redondance d\u00e9terministe entre les pr\u00e9dicteurs, mais d&rsquo;une discordance fondamentale entre la taille de l&rsquo;\u00e9chantillon d&rsquo;observations et le nombre de param\u00e8tres que l&rsquo;on ambitionne d&rsquo;estimer. Cette configuration, universellement formalis\u00e9e par l&rsquo;in\u00e9galit\u00e9 $n < p$, incarne une expression directe de la <a rel=\"noopener noreferrer\" href=\"https:\/\/fr.wikipedia.org\/wiki\/Fl%C3%A9au_de_la_dimension\">mal\u00e9diction de la dimensionnalit\u00e9<\/a>.<\/p>\n<p>D&rsquo;un point de vue g\u00e9om\u00e9trique, ajuster un mod\u00e8le lin\u00e9aire consiste \u00e0 faire passer un hyperplan de dimension <span class=\"arabpsy-math-inline\" data-latex=\"p-1\">$p-1$<\/span> \u00e0 travers un nuage de <span class=\"arabpsy-math-inline\" data-latex=\"n\">$n$<\/span> points distribu\u00e9s dans l&rsquo;espace euclidien <span class=\"arabpsy-math-inline\" data-latex=\"\\mathbb{R}^p\">$\\mathbb{R}^p$<\/span>. Pour d\u00e9terminer de mani\u00e8re unique une droite dans le plan cart\u00e9sien (<span class=\"arabpsy-math-inline\" data-latex=\"\\mathbb{R}^2\">$\\mathbb{R}^2$<\/span>), il est math\u00e9matiquement indispensable de disposer d&rsquo;au moins deux points distincts (<span class=\"arabpsy-math-inline\" data-latex=\"n ge 2\">$n ge 2$<\/span>). Si l&rsquo;on ne dispose que d&rsquo;un seul point (<span class=\"arabpsy-math-inline\" data-latex=\"n=1\">$n=1$<\/span>), il existe une infinit\u00e9 de droites passant par ce point : le probl\u00e8me n&rsquo;est pas contraint. Par extension directe, pour caler de mani\u00e8re unique un hyperplan dans un espace \u00e0 <span class=\"arabpsy-math-inline\" data-latex=\"p\">$p$<\/span> dimensions, le nombre d&rsquo;observations ind\u00e9pendantes <span class=\"arabpsy-math-inline\" data-latex=\"n\">$n$<\/span> doit imp\u00e9rativement \u00eatre sup\u00e9rieur ou \u00e9gal au nombre total de colonnes de la matrice d&rsquo;exp\u00e9rience <span class=\"arabpsy-math-inline\" data-latex=\"p\">$p$<\/span>.<\/p>\n<p>Lorsque $n < p$, le rang d'une matrice \u00e9tant born\u00e9 par le plus petit de ses ordres de dimension, nous avons obligatoirement :<\/p>\n<p><span class=\"arabpsy-math-display\" data-latex=\"\\mathrm{rg}(X) le \\min(n, p) = n &lt; p\">$$\\mathrm{rg}(X) le \\min(n, p) = n < p$$<\/span><\/p>\n<p>D\u00e8s lors, la matrice de Gram <span class=\"arabpsy-math-inline\" data-latex=\"X^T X\">$X^T X$<\/span>, qui est d&rsquo;ordre <span class=\"arabpsy-math-inline\" data-latex=\"p \\times p\">$p \\times p$<\/span>, ne peut exc\u00e9der le rang <span class=\"arabpsy-math-inline\" data-latex=\"n\">$n$<\/span>. Elle est structurellement et in\u00e9luctablement singuli\u00e8re. Les degr\u00e9s de libert\u00e9 r\u00e9siduels, classiquement calcul\u00e9s par la diff\u00e9rence <span class=\"arabpsy-math-inline\" data-latex=\"n - p\">$n &#8211; p$<\/span>, deviennent nuls ou n\u00e9gatifs. Le mod\u00e8le pr\u00e9sente un ajustement parfait trivial aux donn\u00e9es d&rsquo;entra\u00eenement (la somme des carr\u00e9s des r\u00e9sidus devient strictement nulle et le coefficient <span class=\"arabpsy-math-inline\" data-latex=\"R^2\">$R^2$<\/span> s&rsquo;\u00e9l\u00e8ve artificiellement \u00e0 1.0), mais cet ajustement ne refl\u00e8te aucun apprentissage statistique l\u00e9gitime : il n&rsquo;est que la cons\u00e9quence de l&rsquo;interpolation g\u00e9om\u00e9trique d&rsquo;un syst\u00e8me sous-contraint.<\/p>\n<h3>4.2 Reproduction d&rsquo;un cas p sup\u00e9rieur \u00e0 n sous R<\/h3>\n<p>L&rsquo;observation empirique de cette situation sous R s&rsquo;obtient ais\u00e9ment en g\u00e9n\u00e9rant une matrice artificielle de taille ultra-r\u00e9duite face \u00e0 une abondance de covariables. Simulons un protocole d&rsquo;exp\u00e9rimentation o\u00f9 un investigateur mesure seulement <span class=\"arabpsy-math-inline\" data-latex=\"n = 5\">$n = 5$<\/span> sujets, mais rel\u00e8ve pour chacun d&rsquo;eux <span class=\"arabpsy-math-inline\" data-latex=\"p = 10\">$p = 10$<\/span> pr\u00e9dicteurs quantitatifs continus ind\u00e9pendants et non corr\u00e9l\u00e9s :<\/p>\n<p>Lors de l&rsquo;appel de l&rsquo;ajustement standard <code>lm(y ~ ., data = df_surparam)<\/code>, R ex\u00e9cute sa d\u00e9composition QR. Constatant que la dimension de ligne est \u00e9gale \u00e0 5, l&rsquo;algorithme ne peut identifier plus de 5 vecteurs orthogonaux dans l&rsquo;espace des donn\u00e9es. En cons\u00e9quence m\u00e9canique, le mod\u00e8le parvient \u00e0 estimer l&rsquo;ordonn\u00e9e \u00e0 l&rsquo;origine ainsi que les quatre premiers pr\u00e9dicteurs. L&rsquo;ensemble des cinq pr\u00e9dicteurs suivants (<span class=\"arabpsy-math-inline\" data-latex=\"X_5\">$X_5$<\/span> \u00e0 <span class=\"arabpsy-math-inline\" data-latex=\"X_{10}\">$X_{10}$<\/span>) est brutalement neutralis\u00e9 et re\u00e7oit la mention <code>NA<\/code>.<\/p>\n<p>L&rsquo;inspection du tableau <code>summary()<\/code> affiche alors l&rsquo;avertissement math\u00e9matique terminal : \u00ab <em>Residual standard error: NaN on 0 degrees of freedom<\/em> \u00bb. Les degr\u00e9s de libert\u00e9 ayant \u00e9t\u00e9 totalement \u00e9puis\u00e9s pour interpoler les donn\u00e9es d&rsquo;entra\u00eenement, il ne subsiste plus aucune information pour quantifier l&rsquo;erreur stochastique ou estimer la variance du bruit r\u00e9siduel <span class=\"arabpsy-math-inline\" data-latex=\"\\sigma^2\">$\\sigma^2$<\/span>. Lorsque l&rsquo;on soumet un nouveau profil de sujet \u00e0 la fonction <code>predict()<\/code>, le message d&rsquo;alerte de rang d\u00e9ficient est \u00e9mis instantan\u00e9ment, et la projection r\u00e9sultante ne s&rsquo;appuie que sur les variables arbitrairement pr\u00e9serv\u00e9es par l&rsquo;algorithme, ignorant l&rsquo;impact potentiel de l&rsquo;ensemble des variables \u00e9limin\u00e9es.<\/p>\n<h3>4.3 Contextes d&rsquo;apparition fr\u00e9quents en neuroimagerie et \u00e9tudes pilotes<\/h3>\n<p>L&rsquo;asym\u00e9trie dimensionnelle <span class=\"arabpsy-math-inline\" data-latex=\"n ll p\">$n ll p$<\/span> ne rel\u00e8ve pas d&rsquo;une pure abstraction p\u00e9dagogique ; elle constitue le quotidien de nombreux secteurs de pointe de la recherche scientifique contemporaine. Un domaine embl\u00e9matique est celui de la g\u00e9nomique et de la transcriptomique, o\u00f9 les puces \u00e0 ADN et le s\u00e9quen\u00e7age d&rsquo;ARN mesurent l&rsquo;expression simultan\u00e9e de 20 000 \u00e0 50 000 g\u00e8nes pour une cohorte clinique n&rsquo;exc\u00e9dant que rarement quelques centaines de patients.<\/p>\n<p>De m\u00eame, les protocoles de neuroimagerie fonctionnelle (<a rel=\"noopener noreferrer\" href=\"https:\/\/fr.wikipedia.org\/wiki\/Imagerie_par_r%C3%A9sonance_magn%C3%A9tique_fonctionnelle\">IRMf<\/a>) ou d&rsquo;\u00e9lectroenc\u00e9phalographie \u00e0 haute densit\u00e9 (EEG) g\u00e9n\u00e8rent des matrices de signaux comportant des centaines de milliers de voxels spatiaux ou d&rsquo;\u00e9chantillons temporels pour des protocoles exp\u00e9rimentaux recrutant typiquement 20 \u00e0 40 participants. Tenter d&rsquo;ajuster un mod\u00e8le lin\u00e9aire g\u00e9n\u00e9ralis\u00e9 univari\u00e9 incluant tous les voxels comme r\u00e9gresseurs simultan\u00e9s conduit imm\u00e9diatement \u00e0 une singularit\u00e9 de rang absolue.<\/p>\n<p>Cette probl\u00e9matique frappe \u00e9galement les \u00e9tudes pilotes en psychologie exp\u00e9rimentale ou en ergonomie cognitive. Lorsqu&rsquo;un plan factoriel int\u00e8gre de multiples facteurs crois\u00e9s (par exemple trois facteurs \u00e0 3, 4 et 5 modalit\u00e9s) et que le mod\u00e9lisateur d\u00e9cide de saturer son \u00e9quation en incluant l&rsquo;ensemble des termes d&rsquo;interactions d&rsquo;ordre deux et d&rsquo;ordre trois, le nombre de colonnes d&rsquo;effets interactifs combin\u00e9s d\u00e9passe tr\u00e8s rapidement l&rsquo;effectif des volontaires recrut\u00e9s lors de la phase pr\u00e9liminaire. L&rsquo;inversion matricielle devient impossible, condamnant le mod\u00e8le \u00e0 une d\u00e9ficience de rang majeure.<\/p>\n<h2>5. Cause tierce : Mauvaise gestion des variables qualitatives et codages dummy<\/h2>\n<h3>5.1 Le pi\u00e8ge de la variable muette (Dummy Variable Trap)<\/h3>\n<p>L&rsquo;incorporation de pr\u00e9dicteurs cat\u00e9goriels (de type <code>factor<\/code> dans R) au sein d&rsquo;une r\u00e9gression lin\u00e9aire n\u00e9cessite leur transformation pr\u00e9alable en variables indicatrices num\u00e9riques binaires (ou variables muettes, couramment d\u00e9sign\u00e9es sous le terme anglais de <em>dummy variables<\/em>). Cette manipulation fondamentale rec\u00e8le un \u00e9cueil classique de la mod\u00e9lisation statistique : le pi\u00e8ge de la variable muette (<em>Dummy Variable Trap<\/em>).<\/p>\n<p>Consid\u00e9rons une variable qualitative comportant <span class=\"arabpsy-math-inline\" data-latex=\"K\">$K$<\/span> modalit\u00e9s exhaustives et mutuellement exclusives, par exemple la situation g\u00e9ographique d&rsquo;un individu d\u00e9coup\u00e9e en quatre r\u00e9gions distinctes (<span class=\"arabpsy-math-inline\" data-latex=\"K = 4\">$K = 4$<\/span> : Nord, Sud, Est, Ouest). Si l&rsquo;on cr\u00e9e quatre variables binaires <span class=\"arabpsy-math-inline\" data-latex=\"D_1, D_2, D_3, D_4\">$D_1, D_2, D_3, D_4$<\/span> associ\u00e9es chacune \u00e0 une modalit\u00e9, la somme de ces quatre indicatrices est rigoureusement \u00e9gale \u00e0 1 pour la totalit\u00e9 des observations de l&rsquo;\u00e9chantillon :<\/p>\n<p><span class=\"arabpsy-math-display\" data-latex=\"\\sum_{k=1}^{K} D_{ik} = D_{i1} + D_{i2} + D_{i3} + D_{i4} = 1\">$$\\sum_{k=1}^{K} D_{ik} = D_{i1} + D_{i2} + D_{i3} + D_{i4} = 1$$<\/span><\/p>\n<p>Si le mod\u00e8le de r\u00e9gression incorpore simultan\u00e9ment un terme constant (l&rsquo;ordonn\u00e9e \u00e0 l&rsquo;origine <span class=\"arabpsy-math-inline\" data-latex=\"\\beta_0\">$\\beta_0$<\/span>, repr\u00e9sent\u00e9e formellement dans la matrice <span class=\"arabpsy-math-inline\" data-latex=\"X\">$X$<\/span> par une colonne remplie exclusivement de 1) ainsi que la totalit\u00e9 des <span class=\"arabpsy-math-inline\" data-latex=\"K\">$K$<\/span> indicatrices, la colonne de constante devient une combinaison lin\u00e9aire exacte de la somme des colonnes indicatrices. La matrice de plan devient de facto de rang d\u00e9ficient, avec <span class=\"arabpsy-math-inline\" data-latex=\"\\mathrm{rg}(X) le p - 1\">$\\mathrm{rg}(X) le p &#8211; 1$<\/span>. Pour lever cette singularit\u00e9, il est imp\u00e9ratif d&rsquo;omettre une modalit\u00e9 qui servira de modalit\u00e9 de r\u00e9f\u00e9rence, ou de supprimer l&rsquo;interception globale. R applique par d\u00e9faut les contrastes de traitement (<code>contr.treatment<\/code>), qui excluent automatiquement la premi\u00e8re modalit\u00e9 alphab\u00e9tique du facteur. Cependant, si l&rsquo;utilisateur impose un recodage manuel ou utilise des paquets tiers qui injectent simultan\u00e9ment la constante et l&rsquo;ensemble des <span class=\"arabpsy-math-inline\" data-latex=\"K\">$K$<\/span> modalit\u00e9s, la matrice bascule dans le rang d\u00e9ficient.<\/p>\n<h3>5.2 Sous-cat\u00e9gories vides ou cellules non observ\u00e9es<\/h3>\n<p>Une manifestation plus pernicieuse de la d\u00e9ficience de rang induite par les facteurs r\u00e9side dans la pr\u00e9sence de cellules d&rsquo;\u00e9chantillonnage non observ\u00e9es ou de combinaisons de facteurs totalement vides. Ce ph\u00e9nom\u00e8ne appara\u00eet de fa\u00e7on r\u00e9currente lors de l&rsquo;estimation de mod\u00e8les factoriels comportant des interactions entre deux ou plusieurs variables qualitatives.<\/p>\n<p>Imaginons un protocole clinique \u00e9valuant l&rsquo;efficacit\u00e9 d&rsquo;un traitement \u00e0 trois modalit\u00e9s (Placebo, Mol\u00e9cule A, Mol\u00e9cule B) chez des patients stratifi\u00e9s selon quatre stades de s\u00e9v\u00e9rit\u00e9 d&rsquo;une pathologie (Stade 1, Stade 2, Stade 3, Stade 4). Le plan d&rsquo;exp\u00e9rience th\u00e9orique comprend <span class=\"arabpsy-math-inline\" data-latex=\"3 \\times 4 = 12\">$3 \\times 4 = 12$<\/span> conditions exp\u00e9rimentales distinctes. Si, en raison de contraintes de recrutement ou de raret\u00e9 \u00e9pid\u00e9miologique, aucun patient pr\u00e9sentant un Stade 4 n&rsquo;a re\u00e7u la Mol\u00e9cule B dans les donn\u00e9es collect\u00e9es, le vecteur de l&rsquo;interaction binaire correspondant au produit <span class=\"arabpsy-math-inline\" data-latex=\"\\text{Traitement}_B \\times \\text{Stade}_4\">$\\text{Traitement}_B \\times \\text{Stade}_4$<\/span> sera int\u00e9gralement constitu\u00e9 de z\u00e9ros sur l&rsquo;ensemble des <span class=\"arabpsy-math-inline\" data-latex=\"n\">$n$<\/span> lignes de la base de donn\u00e9es.<\/p>\n<p>Une colonne ne contenant que des z\u00e9ros ne poss\u00e8de aucune variance ; elle est orthogonale \u00e0 l&rsquo;espace des donn\u00e9es et ne peut \u00eatre distingu\u00e9e d&rsquo;une colin\u00e9arit\u00e9 nulle, ce qui r\u00e9duit imm\u00e9diatement le rang effectif de la matrice d&rsquo;interaction. De mani\u00e8re analogue, si un facteur d\u00e9fini dans un vecteur de type <code>factor<\/code> conserve des niveaux r\u00e9siduels th\u00e9oriques (<em>levels<\/em>) pour lesquels aucun individu n&rsquo;est pr\u00e9sent dans le sous-ensemble filtr\u00e9 pour l&rsquo;analyse, R g\u00e9n\u00e9rera une colonne enti\u00e8rement nulle lors de l&rsquo;expansion de la matrice de plan via la fonction <code>model.matrix()<\/code>, d\u00e9clenchant instantan\u00e9ment l&rsquo;alerte d&rsquo;ajustement d\u00e9ficient lors de la mod\u00e9lisation.<\/p>\n<h3>5.3 R\u00f4le des contrastes polynomiaux et non lin\u00e9aires<\/h3>\n<p>L&rsquo;introduction de non-lin\u00e9arit\u00e9s par le biais de d\u00e9veloppements polynomiaux d&rsquo;une variable continue (termes quadratiques, cubiques, etc.) constitue une autre source technique d&rsquo;instabilit\u00e9 de rang, particuli\u00e8rement lorsque la gamme de variation du pr\u00e9dicteur est restreinte ou que le nombre de points d&rsquo;appui distincts est limit\u00e9.<\/p>\n<p>D&rsquo;un point de vue alg\u00e9brique, si un utilisateur tente d&rsquo;estimer un polyn\u00f4me de degr\u00e9 <span class=\"arabpsy-math-inline\" data-latex=\"d\">$d$<\/span> sur une variable explicative continue <span class=\"arabpsy-math-inline\" data-latex=\"x\">$x$<\/span> qui ne prend que <span class=\"arabpsy-math-inline\" data-latex=\"m\">$m$<\/span> valeurs num\u00e9riques distinctes dans l&rsquo;\u00e9chantillon, la matrice de plan ne peut pas \u00eatre de plein rang si <span class=\"arabpsy-math-inline\" data-latex=\"d ge m\">$d ge m$<\/span>. Par exemple, ajuster un terme cubique (<span class=\"arabpsy-math-inline\" data-latex=\"x + x^2 + x^3\">$x + x^2 + x^3$<\/span>) sur une variable qui n&rsquo;a \u00e9t\u00e9 mesur\u00e9e qu&rsquo;\u00e0 trois temps d&rsquo;\u00e9valuation distincts (<span class=\"arabpsy-math-inline\" data-latex=\"t in {0, 1, 2}\">$t in {0, 1, 2}$<\/span>) g\u00e9n\u00e8re une singularit\u00e9 stricte : le nombre de param\u00e8tres polynomiaux exc\u00e8de la dimension de l&rsquo;espace des observations distinctes.<\/p>\n<p>Par ailleurs, m\u00eame lorsque <span class=\"arabpsy-math-inline\" data-latex=\"m &gt; d\">$m > d$<\/span>, le calcul des puissances brutes (par exemple <span class=\"arabpsy-math-inline\" data-latex=\"x, x^2, x^3, x^4\">$x, x^2, x^3, x^4$<\/span>) induit une multicolin\u00e9arit\u00e9 quasi-parfaite extr\u00eame, car les puissances successives d&rsquo;une variable positive sont extr\u00eamement corr\u00e9l\u00e9es entre elles. Bien que cette multicolin\u00e9arit\u00e9 soit techniquement approximative et non d\u00e9terministe, les limites de la pr\u00e9cision flottante de la machine peuvent conduire les routines de factorisation QR \u00e0 consid\u00e9rer les derni\u00e8res colonnes comme nulles sous le seuil de tol\u00e9rance num\u00e9rique. L&rsquo;utilisation de contrastes polynomiaux orthogonaux, garantis sous R par l&rsquo;utilisation de la fonction <code>poly(x, degree, raw = FALSE)<\/code>, s&rsquo;av\u00e8re alors imp\u00e9rative pour pr\u00e9server l&rsquo;ind\u00e9pendance lin\u00e9aire des colonnes.<\/p>\n<h2>6. Protocole de diagnostic : D\u00e9tecter et isoler l&rsquo;origine du rang d\u00e9ficient<\/h2>\n<h3>6.1 Inspection syst\u00e9matique du r\u00e9sum\u00e9 du mod\u00e8le (summary.lm)<\/h3>\n<p>Le diagnostic pr\u00e9coce d&rsquo;un rang d\u00e9ficient commence imp\u00e9rativement par une lecture critique et approfondie de la restitution fournie par la m\u00e9thode <code>summary()<\/code> appliqu\u00e9e \u00e0 l&rsquo;objet mod\u00e8le. L&rsquo;indice visuel le plus imm\u00e9diat et infaillible r\u00e9side dans l&rsquo;apparition de mentions <code>NA<\/code> au sein du tableau des coefficients r\u00e9gressifs (<em>Coefficients table<\/em>).<\/p>\n<p>Lorsqu&rsquo;une variable explicative voit son estimation num\u00e9rique remplac\u00e9e par <code>NA<\/code> pour l&rsquo;erreur type (<em>Std. Error<\/em>), la statistique <span class=\"arabpsy-math-inline\" data-latex=\"t\">$t$<\/span> (<em>t value<\/em>) et la probabilit\u00e9 critique (<em>Pr(>|t|)<\/em>), cela signifie formellement que l&rsquo;algorithme a exclu cette variable pour r\u00e9soudre la singularit\u00e9 de la matrice <span class=\"arabpsy-math-inline\" data-latex=\"X^T X\">$X^T X$<\/span>. Cette \u00e9limination ne traduit pas une absence d&rsquo;effet statistique de la variable dans la population, mais son incapacit\u00e9 alg\u00e9brique \u00e0 apporter une information non redondante par rapport aux pr\u00e9dicteurs qui la pr\u00e9c\u00e8dent dans la formule.<\/p>\n<p>L&rsquo;analyste doit \u00e9galement porter son attention sur la ligne finale rapportant les degr\u00e9s de libert\u00e9 r\u00e9siduels (<em>Residual degrees of freedom<\/em>). Dans une situation de sur-param\u00e9trage o\u00f9 <span class=\"arabpsy-math-inline\" data-latex=\"n le p\">$n le p$<\/span>, les degr\u00e9s de libert\u00e9 r\u00e9siduels chutent \u00e0 z\u00e9ro, signalant que l&rsquo;erreur type des r\u00e9sidus ne peut pas \u00eatre calcul\u00e9e, ce qui se traduit par l&rsquo;affichage d&rsquo;un \u00e9cart-type r\u00e9siduel \u00e9valu\u00e9 \u00e0 <code>NaN<\/code> ou <code>Inf<\/code>. Enfin, sur le plan de la programmation, il est possible d&rsquo;interroger directement l&rsquo;attribut logique de colin\u00e9arit\u00e9 encapsul\u00e9 dans l&rsquo;objet r\u00e9sum\u00e9 via la commande R vectoris\u00e9e :<\/p>\n<p><code>summary(model)$aliased<\/code><\/p>\n<p>Cette commande renvoie un vecteur bool\u00e9en associant chaque terme du mod\u00e8le \u00e0 la valeur <code>TRUE<\/code> si la colonne a \u00e9t\u00e9 identifi\u00e9e comme redondante et neutralis\u00e9e par l&rsquo;ajustement, ou \u00e0 la valeur <code>FALSE<\/code> si elle a \u00e9t\u00e9 conserv\u00e9e dans la solution de plein rang.<\/p>\n<h3>6.2 Utilisation de la fonction alias() int\u00e9gr\u00e9e \u00e0 R<\/h3>\n<p>Si l&rsquo;inspection du r\u00e9sum\u00e9 permet de constater l&rsquo;existence d&rsquo;une d\u00e9ficience de rang, elle ne renseigne pas sur l&rsquo;\u00e9quation exacte de d\u00e9pendance qui lie la variable \u00e9limin\u00e9e aux autres r\u00e9gresseurs. Pour expliciter la structure alg\u00e9brique pr\u00e9cise de cette d\u00e9pendance, le langage R int\u00e8gre un outil analytique de premier plan : la fonction <code>alias()<\/code>.<\/p>\n<p>La commande <code>alias(model)<\/code> interroge la structure de d\u00e9composition QR stock\u00e9e dans l&rsquo;objet mod\u00e8le et calcule la projection exacte des colonnes d\u00e9pendantes sur la base des colonnes ind\u00e9pendantes retenues. La syntaxe g\u00e9n\u00e9rale s&rsquo;ex\u00e9cute comme suit :<\/p>\n<p><code>modele_complet <- lm(y ~ x1 + x2 + x3, data = donnees)<\/code><br \/>\n<code>alias(modele_complet)<\/code><\/p>\n<p>La sortie g\u00e9n\u00e9r\u00e9e par <code>alias()<\/code> se compose d'une matrice o\u00f9 les lignes repr\u00e9sentent les pr\u00e9dicteurs redondants (ceux marqu\u00e9s par <code>NA<\/code> dans le sommaire) et les colonnes repr\u00e9sentent les pr\u00e9dicteurs lin\u00e9aires conserv\u00e9s. Les coefficients affich\u00e9s dans la matrice correspondent exactement aux pond\u00e9rations de la combinaison lin\u00e9aire reliant les variables. Par exemple, si la variable <span class=\"arabpsy-math-inline\" data-latex=\"X_3\">$X_3$<\/span> a \u00e9t\u00e9 neutralis\u00e9e et que la matrice <code>alias<\/code> indique une valeur de 1.0 sous <span class=\"arabpsy-math-inline\" data-latex=\"X_1\">$X_1$<\/span> et de 2.0 sous <span class=\"arabpsy-math-inline\" data-latex=\"X_2\">$X_2$<\/span>, cela \u00e9tablit formellement la preuve empirique que pour chaque observation du jeu de donn\u00e9es, la relation exacte <span class=\"arabpsy-math-inline\" data-latex=\"X_3 = X_1 + 2 X_2\">$X_3 = X_1 + 2 X_2$<\/span> a \u00e9t\u00e9 identifi\u00e9e, permettant ainsi \u00e0 l'analyste de localiser instantan\u00e9ment la source de la colin\u00e9arit\u00e9 d\u00e9terministe.<\/p>\n<h3>6.3 \u00c9valuation du Facteur d'Inflation de la Variance (VIF)<\/h3>\n<p>Dans l'arsenal classique du diagnostic de multicolin\u00e9arit\u00e9, le <a rel=\"noopener noreferrer\" href=\"https:\/\/fr.wikipedia.org\/wiki\/Facteur_d%27inflation_de_la_variance\">Facteur d'Inflation de la Variance<\/a> (VIF) repr\u00e9sente l'indicateur quantitatif le plus populaire. Calcul\u00e9 pour chaque variable explicative <span class=\"arabpsy-math-inline\" data-latex=\"X_j\">$X_j$<\/span>, le VIF mesure l'ampleur avec laquelle la variance de l'estimateur <span class=\"arabpsy-math-inline\" data-latex=\"\\hat{\\beta}_j\">$\\hat{\\beta}_j$<\/span> est gonfl\u00e9e en raison des corr\u00e9lations lin\u00e9aires existant entre ce pr\u00e9dicteur et l'ensemble des <span class=\"arabpsy-math-inline\" data-latex=\"p-1\">$p-1$<\/span> autres covariables :<\/p>\n<p><span class=\"arabpsy-math-display\" data-latex=\"\\mathrm{VIF}_j = \\frac{1}{1 - R_j^2}\">$$\\mathrm{VIF}_j = \\frac{1}{1 - R_j^2}$$<\/span><\/p>\n<p>o\u00f9 <span class=\"arabpsy-math-inline\" data-latex=\"R_j^2\">$R_j^2$<\/span> d\u00e9signe le coefficient de d\u00e9termination issu de la r\u00e9gression auxiliaire du pr\u00e9dicteur <span class=\"arabpsy-math-inline\" data-latex=\"X_j\">$X_j$<\/span> sur tous les autres pr\u00e9dicteurs du mod\u00e8le.<\/p>\n<p>Cependant, en pr\u00e9sence d'une d\u00e9ficience de rang av\u00e9r\u00e9e, l'utilisation standard de la fonction <code>vif()<\/code> (issue de l'incontournable paquet <code>car<\/code> de John Fox) se heurte \u00e0 une impossibilit\u00e9 calculatoire. Puisque au moins une variable pr\u00e9sente une corr\u00e9lation parfaite avec les autres (<span class=\"arabpsy-math-inline\" data-latex=\"R_j^2 = 1\">$R_j^2 = 1$<\/span>), le d\u00e9nominateur s'annule, ce qui conduit formellement \u00e0 un VIF infini. Face \u00e0 une matrice de variance-covariance singuli\u00e8re, la fonction <code>car::vif(model)<\/code> interrompt son ex\u00e9cution et renvoie un message d'erreur explicite :<\/p>\n<p><code>Error in vif.default(model) : there are aliased coefficients in the model<\/code><\/p>\n<p>Pour d\u00e9passer cette limite, le mod\u00e9lisateur doit recourir \u00e0 l'analyse du nombre de conditionnement (<em>condition number<\/em>), accessible nativement sous R via la fonction <code>kappa()<\/code> appliqu\u00e9e \u00e0 la matrice de plan :<\/p>\n<p><code>kappa(model.matrix(model), exact = TRUE)<\/code><\/p>\n<p>Le nombre de conditionnement correspond au ratio entre la plus grande et la plus petite valeur singuli\u00e8re de la matrice d'exp\u00e9rience : <span class=\"arabpsy-math-inline\" data-latex=\"\\kappa = \\sigma_{\\max} \/ \\sigma_{\\min}\">$\\kappa = \\sigma_{\\max} \/ \\sigma_{\\min}$<\/span>. Une r\u00e8gle empirique solidement \u00e9tablie stipule qu'une valeur de $kappa < 100$ t\u00e9moigne de l'absence de colin\u00e9arit\u00e9 probl\u00e9matique. Un indice compris entre 100 et 1 000 signale une colin\u00e9arit\u00e9 mod\u00e9r\u00e9e \u00e0 forte. En revanche, un indice exc\u00e9dant 1 000, ou tendant vers l'infini (au sens de la pr\u00e9cision machine, typiquement <span class=\"arabpsy-math-inline\" data-latex=\"&gt; 10^{12}\">$> 10^{12}$<\/span>), apporte la confirmation formelle d'une matrice num\u00e9riquement singuli\u00e8re et d'une d\u00e9ficience de rang matriciel.<\/p>\n<h3>6.4 Analyse de la matrice de corr\u00e9lation et visualisation<\/h3>\n<p>Compl\u00e9tant les d\u00e9marches alg\u00e9briques formelles, l'analyse descriptive exploratoire de la structure de corr\u00e9lation des variables fournit une validation empirique imm\u00e9diate des d\u00e9pendances bilat\u00e9rales. L'ex\u00e9cution de la commande standard <code>cor(donnees)<\/code> permet d'extraire la matrice des coefficients de corr\u00e9lation lin\u00e9aire de Pearson (<span class=\"arabpsy-math-inline\" data-latex=\"r\">$r$<\/span>).<\/p>\n<p>Dans ce cadre diagnostique, l'investigateur doit scruter attentivement les coefficients extr\u00eames dont la valeur absolue est strictement \u00e9gale \u00e0 1.0 (ou s'en approche \u00e0 un niveau d'arrondi infinit\u00e9simal, par exemple <span class=\"arabpsy-math-inline\" data-latex=\"|r| &gt; 0.9999\">$|r| > 0.9999$<\/span>). Une telle valeur signe la pr\u00e9sence d'une d\u00e9pendance d\u00e9terministe directe entre deux variables quantitatives continues. Pour fluidifier l'exploration de bases de donn\u00e9es comportant plusieurs dizaines de covariables, la repr\u00e9sentation sous forme de cartographie thermique (<em>heatmap<\/em>) via des paquets comme <code>corrplot<\/code> ou <code>ggplot2<\/code> offre une visualisation synoptique des blocs d'invariance.<\/p>\n<p>Enfin, il est imp\u00e9ratif d'\u00e9valuer la variance marginale de chaque colonne explicative prise individuellement. Une variable dont la variance empirique est strictement nulle (colonne constante) ou quasi-nulle (o\u00f9 une unique modalit\u00e9 domine 99,9 % des observations) d\u00e9grade le rang de la matrice d\u00e8s lors qu'une constante globale est incorpor\u00e9e au mod\u00e8le. L'utilisation de la fonction <code>nearZeroVar()<\/code> du paquet <code>caret<\/code> permet d'automatiser cette d\u00e9tection en identifiant de fa\u00e7on syst\u00e9matique les r\u00e9gresseurs d\u00e9pourvus d'information discriminante avant m\u00eame l'\u00e9tape d'estimation lin\u00e9aire.<\/p>\n<h2>7. Solution 1 : Suppression et s\u00e9lection raisonn\u00e9e des variables redondantes<\/h2>\n<h3>7.1 Arbitrage th\u00e9orique versus \u00e9limination aveugle<\/h3>\n<p>La strat\u00e9gie de rem\u00e9diation la plus directe et conceptuellement la plus saine face \u00e0 une d\u00e9pendance lin\u00e9aire d\u00e9terministe consiste \u00e0 retirer manuellement une ou plusieurs variables redondantes de la formule de r\u00e9gression. Cependant, cet arbitrage ne doit sous aucun pr\u00e9texte \u00eatre d\u00e9l\u00e9gu\u00e9 \u00e0 une proc\u00e9dure m\u00e9canique aveugle guid\u00e9e par le seul hasard de l'ordre d'entr\u00e9e des colonnes dans le mod\u00e8le.<\/p>\n<p>Le choix de la variable \u00e0 \u00e9liminer doit reposer sur des fondements th\u00e9oriques, cliniques ou op\u00e9rationnels rigoureusement explicit\u00e9s par le chercheur. Face \u00e0 deux pr\u00e9dicteurs parfaitement colin\u00e9aires, il convient de s'interroger sur la nature \u00e9pist\u00e9mologique du lien unissant les grandeurs : l'une des variables repr\u00e9sente-t-elle la cause fondamentale du ph\u00e9nom\u00e8ne tandis que la seconde n'en est qu'un \u00e9piph\u00e9nom\u00e8ne ou un marqueur indirect ? Dans une mod\u00e9lisation biom\u00e9dicale, par exemple, si la clairance r\u00e9nale calcul\u00e9e et la cr\u00e9atinine s\u00e9rique transform\u00e9e sont en relation alg\u00e9brique exacte, la grandeur physiologique la plus proche du m\u00e9canisme d'action th\u00e9rapeutique devra \u00eatre pr\u00e9serv\u00e9e au d\u00e9triment de l'indicateur d\u00e9riv\u00e9.<\/p>\n<p>De m\u00eame, dans les sciences sociales et l'\u00e9valuation psychologique, il est capital de pr\u00e9server l'interpr\u00e9tabilit\u00e9 clinique ou sociologique du mod\u00e8le final. Si une \u00e9chelle composite de bien-\u00eatre est construite \u00e0 partir de sous-dimensions de satisfaction au travail, conserver les sous-\u00e9chelles distinctes offre des leviers d'intervention pr\u00e9cis pour les praticiens, alors que conserver le score global agr\u00e9g\u00e9 permet une communication synth\u00e9tique mais occulte la dynamique fine des facteurs. La d\u00e9cision d'\u00e9viction doit donc \u00eatre guid\u00e9e par l'objectif final du mod\u00e8le : explication m\u00e9canistique fine ou pilotage macroscopique.<\/p>\n<h3>7.2 Proc\u00e9dure de suppression manuelle dans la formule R<\/h3>\n<p>Une fois l'arbitrage conceptuel op\u00e9r\u00e9, la mise en \u0153uvre de la correction sous R se formalise de fa\u00e7on \u00e9l\u00e9gante et reproductible gr\u00e2ce \u00e0 la fonction g\u00e9n\u00e9rique <code>update()<\/code>. Cette m\u00e9thode permet de re-sp\u00e9cifier un mod\u00e8le lin\u00e9aire sans avoir \u00e0 ressaisir l'int\u00e9gralit\u00e9 des arguments initiaux.<\/p>\n<p>Supposons un mod\u00e8le empirique initial sp\u00e9cifi\u00e9 comme suit :<\/p>\n<p><code>modele_initial <- lm(performance ~ score_partA + score_partB + score_total + age, data = base_rh)<\/code><\/p>\n<p>La commande <code>alias(modele_initial)<\/code> ayant r\u00e9v\u00e9l\u00e9 que <code>score_total<\/code> est la somme exacte des parties A et B, le mod\u00e9lisateur d\u00e9cide d'\u00e9liminer la variable globale <code>score_total<\/code> afin de pr\u00e9server l'estimation des contributions respectives des sous-composantes. La mise \u00e0 jour s'ex\u00e9cute par :<\/p>\n<p><code>modele_corrige <- update(modele_initial, . ~ . - score_total)<\/code><\/p>\n<p>L'inspection du nouveau sommaire via <code>summary(modele_corrige)<\/code> permet de constater imm\u00e9diatement trois \u00e9l\u00e9ments cruciaux :<\/p>\n<ul>\n<li>Aucun coefficient n'affiche la mention <code>NA<\/code>, attestant de l'\u00e9limination de toute redondance lin\u00e9aire dans la base d'estimation.<\/li>\n<li>La somme des carr\u00e9s r\u00e9siduels et le coefficient de d\u00e9termination <span class=\"arabpsy-math-inline\" data-latex=\"R^2\">$R^2$<\/span> demeurent rigoureusement identiques \u00e0 ceux du mod\u00e8le initial, prouvant formellement que la variable retir\u00e9e n'apportait aucune information empirique unique \u00e0 l'ajustement global.<\/li>\n<li>L'application de la fonction <code>predict(modele_corrige, newdata = nouveaux_sujets)<\/code> s'ex\u00e9cute d\u00e9sormais sans d\u00e9clencher le moindre message d'avertissement, garantissant des projections stables, robustes et m\u00e9thodologiquement valides.<\/li>\n<\/ul>\n<h3>7.3 Algorithmes de s\u00e9lection automatis\u00e9e et leurs limites<\/h3>\n<p>Pour automatiser le tri des variables explicatives dans des configurations complexes, certains praticiens se tournent fr\u00e9quemment vers des algorithmes de s\u00e9lection pas-\u00e0-pas (<em>stepwise selection<\/em>), concr\u00e9tis\u00e9s sous R par les fonctions <code>step()<\/code> ou <code>MASS::stepAIC()<\/code>, qui proc\u00e8dent \u00e0 des ajouts et suppressions s\u00e9quentiels fond\u00e9s sur la minimisation du crit\u00e8re d'information d'Akaike (<a rel=\"noopener noreferrer\" href=\"https:\/\/fr.wikipedia.org\/wiki\/Crit%C3%A8re_d%27information_d%27Akaike\">AIC<\/a>).<\/p>\n<p>Bien que ces algorithmes soient g\u00e9n\u00e9ralement capables d'\u00e9vincer les variables affichant une colin\u00e9arit\u00e9 exacte pour \u00e9viter les matrices singuli\u00e8res, leur utilisation en pr\u00e9sence de d\u00e9pendances lin\u00e9aires s\u00e9v\u00e8res pr\u00e9sente des risques m\u00e9thodologiques majeurs. En premier lieu, l'algorithme est particuli\u00e8rement sensible \u00e0 l'ordre d'initialisation des pr\u00e9dicteurs dans la formule de d\u00e9part. Si deux variables sont rigoureusement colin\u00e9aires, la fonction <code>step()<\/code> conservera arbitrairement la premi\u00e8re variable examin\u00e9e lors du parcours arborescent et \u00e9liminera la seconde, sans consid\u00e9rer la pertinence th\u00e9orique de ce choix.<\/p>\n<p>En second lieu, la s\u00e9lection pas-\u00e0-pas biaise syst\u00e9matiquement \u00e0 la hausse les coefficients des variables conserv\u00e9es tout en sous-estimant massivement leurs erreurs types, ce qui invalide les inf\u00e9rences statistiques ult\u00e9rieures (un ph\u00e9nom\u00e8ne connu sous le nom de biais de s\u00e9lection ou paradoxe de Freedman). Si une s\u00e9lection automatique doit imp\u00e9rativement \u00eatre d\u00e9ploy\u00e9e, il est recommand\u00e9 de restreindre au pr\u00e9alable l'espace de recherche en \u00e9liminant manuellement les colin\u00e9arit\u00e9s exactes via la m\u00e9thode des alias, puis de contraindre le mod\u00e8le \u00e0 conserver les covariables th\u00e9oriquement obligatoires avant d'appliquer une r\u00e9gression p\u00e9nalis\u00e9e plut\u00f4t qu'une s\u00e9lection par paliers discrets.<\/p>\n<h2>8. Solution 2 : R\u00e9duction de dimensionnalit\u00e9 et extraction de variables latentes<\/h2>\n<h3>8.1 Analyse en Composantes Principales (ACP) comme pr\u00e9-traitement<\/h3>\n<p>Lorsque la colin\u00e9arit\u00e9 d\u00e9coule d'un vaste bloc de variables continues fortement corr\u00e9l\u00e9es entre elles (par exemple des mesures biom\u00e9triques, des indices financiers synchrones ou des capteurs environnementaux voisins), la suppression discr\u00e8te de certaines variables au d\u00e9triment d'autres peut sembler insatisfaisante car elle d\u00e9truit de l'information utile. Dans ce cas de figure, la <a rel=\"noopener noreferrer\" href=\"https:\/\/fr.wikipedia.org\/wiki\/Analyse_en_composantes_principales\">r\u00e9duction de dimensionnalit\u00e9<\/a> par Analyse en Composantes Principales (ACP) constitue une strat\u00e9gie math\u00e9matique d'une remarquable \u00e9l\u00e9gance.<\/p>\n<p>L'ACP r\u00e9alise une transformation orthogonale lin\u00e9aire des pr\u00e9dicteurs d'origine <span class=\"arabpsy-math-inline\" data-latex=\"X\">$X$<\/span> vers un nouvel ensemble de variables non corr\u00e9l\u00e9es, d\u00e9nomm\u00e9es composantes principales (<span class=\"arabpsy-math-inline\" data-latex=\"Z\">$Z$<\/span>). Alg\u00e9briquement, cette op\u00e9ration s'appuie sur la diagonalisation de la matrice de corr\u00e9lation ou de covariance des variables explicatives :<\/p>\n<p><span class=\"arabpsy-math-display\" data-latex=\"Z = X V\">$$Z = X V$$<\/span><\/p>\n<p>o\u00f9 <span class=\"arabpsy-math-inline\" data-latex=\"V\">$V$<\/span> est la matrice orthogonale des vecteurs propres. Les colonnes de <span class=\"arabpsy-math-inline\" data-latex=\"Z\">$Z$<\/span> poss\u00e8dent la propri\u00e9t\u00e9 fondamentale d'\u00eatre strictement orthogonales entre elles (<span class=\"arabpsy-math-inline\" data-latex=\"Z_j^T Z_k = 0\">$Z_j^T Z_k = 0$<\/span> pour tout <span class=\"arabpsy-math-inline\" data-latex=\"j \\neq k\">$j \\neq k$<\/span>). En cons\u00e9quence, l'ajustement d'un mod\u00e8le lin\u00e9aire sur ces composantes, m\u00e9thode d\u00e9sign\u00e9e sous le nom de R\u00e9gression sur Composantes Principales (PCR, accessible via le paquet R <code>pls<\/code>), garantit formellement que la matrice de Gram <span class=\"arabpsy-math-inline\" data-latex=\"Z^T Z\">$Z^T Z$<\/span> est strictement diagonale, \u00e9liminant par d\u00e9finition tout risque de singularit\u00e9 matricielle ou de d\u00e9ficience de rang.<\/p>\n<p>Dans la pratique sous R, l'investigateur standardise d'abord ses variables avec la fonction native <code>prcomp(..., scale. = TRUE)<\/code>, puis s\u00e9lectionne les <span class=\"arabpsy-math-inline\" data-latex=\"k\">$k$<\/span> premi\u00e8res composantes expliquant la majorit\u00e9 de la variance cumulative (par exemple 80 % ou 90 % de l'inertie globale). Le mod\u00e8le lin\u00e9aire est ensuite estim\u00e9 via <code>lm(Y ~ Z[, 1:k])<\/code>. Cette approche neutralise totalement l'avertissement de pr\u00e9diction tout en synth\u00e9tisant l'information conjointe de pr\u00e9dicteurs initialement indissociables.<\/p>\n<h3>8.2 Mod\u00e9lisation par \u00e9quations structurelles et analyse factorielle<\/h3>\n<p>Dans les sciences comportementales, la colin\u00e9arit\u00e9 exacte ou extr\u00eame refl\u00e8te fr\u00e9quemment le fait que plusieurs variables observ\u00e9es (items de questionnaires, tests psychotechniques) constituent en r\u00e9alit\u00e9 des mesures multiples et imparfaites d'un m\u00eame ph\u00e9nom\u00e8ne abstrait non observable directement : une <a rel=\"noopener noreferrer\" href=\"https:\/\/fr.wikipedia.org\/wiki\/Variable_latente\">variable latente<\/a>. Tenter d'introduire l'ensemble de ces items comme des r\u00e9gresseurs distincts et autonomes au sein d'une \u00e9quation des moindres carr\u00e9s constitue une erreur d'\u00e9chelle de mesure.<\/p>\n<p>La solution m\u00e9thodologique appropri\u00e9e r\u00e9side dans le d\u00e9ploiement d'un mod\u00e8le d'\u00e9quations structurelles (SEM) ou d'une analyse factorielle confirmatoire (CFA), impl\u00e9mentable sous R via l'incontournable paquet <code>lavaan<\/code>. Dans ce paradigme, le mod\u00e8le sp\u00e9cifie formellement que les indicateurs fortement corr\u00e9l\u00e9s <span class=\"arabpsy-math-inline\" data-latex=\"X_1, X_2, dots, X_p\">$X_1, X_2, dots, X_p$<\/span> sont engendr\u00e9s par un facteur latent commun <span class=\"arabpsy-math-inline\" data-latex=\"xi\">$xi$<\/span>, assorti de r\u00e9sidus de mesure sp\u00e9cifiques <span class=\"arabpsy-math-inline\" data-latex=\"\\delta_i\">$\\delta_i$<\/span> :<\/p>\n<p><span class=\"arabpsy-math-display\" data-latex=\"X_i = \\lambda_i \\xi + \\delta_i\">$$X_i = \\lambda_i \\xi + \\delta_i$$<\/span><\/p>\n<p>Cette approche s\u00e9pare formellement l'erreur de mesure de la variance conceptuelle v\u00e9ritable. L'impact pr\u00e9dictif sur la variable d'int\u00e9r\u00eat <span class=\"arabpsy-math-inline\" data-latex=\"Y\">$Y$<\/span> est ensuite estim\u00e9 non plus \u00e0 partir des indicateurs bruts singuliers, mais directement au niveau structurel reliant la variable latente <span class=\"arabpsy-math-inline\" data-latex=\"xi\">$xi$<\/span> \u00e0 la r\u00e9ponse <span class=\"arabpsy-math-inline\" data-latex=\"Y\">$Y$<\/span>. En transf\u00e9rant l'estimation dans le cadre matriciel de l'algorithme du maximum de vraisemblance \u00e0 information compl\u00e8te (FIML), la mod\u00e9lisation en variables latentes l\u00e8ve d\u00e9finitivement l'impasse de la d\u00e9ficience de rang matriciel tout en fournissant une mod\u00e9lisation th\u00e9oriquement bien plus fid\u00e8le aux r\u00e9alit\u00e9s psychom\u00e9triques sous-jacentes.<\/p>\n<h3>8.3 Cr\u00e9ation d'indices composites pond\u00e9r\u00e9s<\/h3>\n<p>Pour les praticiens souhaitant pr\u00e9server la simplicit\u00e9 op\u00e9rationnelle d'un mod\u00e8le lin\u00e9aire classique sans d\u00e9ployer l'appareil lourd d'une analyse factorielle confirmatoire, la construction pragmatique d'un score composite agr\u00e9g\u00e9 repr\u00e9sente une alternative empirique reconnue.<\/p>\n<p>Cette m\u00e9thode consiste \u00e0 condenser un groupe de variables mutuellement redondantes en un indice unique obtenu par sommation simple, calcul de moyenne arithm\u00e9tique ou pond\u00e9ration par scores centr\u00e9s-r\u00e9duits (<span class=\"arabpsy-math-inline\" data-latex=\"z\">$z$<\/span>-scores). Avant de proc\u00e9der \u00e0 cette agr\u00e9gation, le mod\u00e9lisateur doit imp\u00e9rativement attester de la coh\u00e9rence interne de l'\u00e9chelle composite en calculant l'alpha de Cronbach (via la fonction <code>psych::alpha()<\/code>) ou le coefficient om\u00e9ga de McDonald. Un indice sup\u00e9rieur \u00e0 0.80 valide formellement l'homog\u00e9n\u00e9it\u00e9 unidimensionnelle des items consid\u00e9r\u00e9s.<\/p>\n<p>En rempla\u00e7ant un bloc de dix pr\u00e9dicteurs colin\u00e9aires par un unique score composite \u00e9quilibr\u00e9, l'analyste op\u00e8re une r\u00e9duction drastique du ratio <span class=\"arabpsy-math-inline\" data-latex=\"p\/n\">$p\/n$<\/span>. Cette compression lib\u00e8re de pr\u00e9cieux degr\u00e9s de libert\u00e9 pour l'estimation de l'erreur r\u00e9siduelle, restaure le plein rang de colonne de la matrice de plan et immunise d\u00e9finitivement la m\u00e9thode <code>predict()<\/code> contre toute d\u00e9rive num\u00e9rique lors du traitement de nouveaux profils d'observations.<\/p>\n<h2>9. Solution 3 : M\u00e9thodes de r\u00e9gularisation et p\u00e9nalisation statistique<\/h2>\n<h3>9.1 La r\u00e9gression Ridge (p\u00e9nalit\u00e9 L2) : dompter les matrices singuli\u00e8res<\/h3>\n<p>Lorsque l'on est confront\u00e9 \u00e0 une situation o\u00f9 la taille de l'\u00e9chantillon est strictement inf\u00e9rieure au nombre de pr\u00e9dicteurs ($n < p$) ou que l'on refuse d'\u00e9liminer manuellement des variables explicatives, les moindres carr\u00e9s ordinaires s'av\u00e8rent structurellement impuissants. La r\u00e9ponse math\u00e9matique universelle r\u00e9side dans la modification de la fonction de perte par l'introduction d'un terme de p\u00e9nalisation, principe fondateur de la <a rel=\"noopener noreferrer\" href=\"https:\/\/fr.wikipedia.org\/wiki\/R%C3%A9gression_ridge\">r\u00e9gression Ridge<\/a> (ou r\u00e9gularisation de Tikhonov).<\/p>\n<p>La r\u00e9gression Ridge substitue au crit\u00e8re standard des MCO la minimisation de la somme des r\u00e9sidus au carr\u00e9 sous une contrainte quadratique sur la norme <span class=\"arabpsy-math-inline\" data-latex=\"L_2\">$L_2$<\/span> du vecteur des coefficients :<\/p>\n<p><span class=\"arabpsy-math-display\" data-latex=\"\\hat{\\beta}_{\\text{ridge}} = arg\\min_{\\beta} \\left( |Y - Xbeta|^2 + \\lambda \\sum_{j=1}^{p} \\beta_j^2 \\right)\">$$\\hat{\\beta}_{\\text{ridge}} = arg\\min_{\\beta} \\left( |Y - Xbeta|^2 + \\lambda \\sum_{j=1}^{p} \\beta_j^2 \\right)$$<\/span><\/p>\n<p>o\u00f9 <span class=\"arabpsy-math-inline\" data-latex=\"lambda ge 0\">$lambda ge 0$<\/span> repr\u00e9sente un hyperparam\u00e8tre de p\u00e9nalisation contr\u00f4lant l'intensit\u00e9 du r\u00e9tr\u00e9cissement (<em>shrinkage<\/em>) appliqu\u00e9 aux param\u00e8tres. En r\u00e9solvant analytiquement ce probl\u00e8me d'optimisation convexe, l'estimateur prend la formulation matricielle ferm\u00e9e suivante :<\/p>\n<p><span class=\"arabpsy-math-display\" data-latex=\"\\hat{\\beta}_{\\text{ridge}} = (X^T X + \\lambda I_p)^{-1} X^T Y\">$$\\hat{\\beta}_{\\text{ridge}} = (X^T X + \\lambda I_p)^{-1} X^T Y$$<\/span><\/p>\n<p>L'apport alg\u00e9brique de la r\u00e9gression Ridge est spectaculaire : m\u00eame si la matrice de Gram <span class=\"arabpsy-math-inline\" data-latex=\"X^T X\">$X^T X$<\/span> est singuli\u00e8re, de d\u00e9terminant nul et de rang d\u00e9ficient, l'addition d'une constante strictement positive <span class=\"arabpsy-math-inline\" data-latex=\"lambda\">$lambda$<\/span> sur l'ensemble des \u00e9l\u00e9ments de sa diagonale principale via la matrice identit\u00e9 <span class=\"arabpsy-math-inline\" data-latex=\"I_p\">$I_p$<\/span> garantit formellement que toutes les valeurs propres de <span class=\"arabpsy-math-inline\" data-latex=\"(X^T X + \\lambda I_p)\">$(X^T X + \\lambda I_p)$<\/span> deviennent strictement sup\u00e9rieures \u00e0 z\u00e9ro. La matrice r\u00e9sultante est donc inconditionnellement sym\u00e9trique d\u00e9finie positive, ce qui la rend strictement inversible quelles que soient les colin\u00e9arit\u00e9s existantes dans les donn\u00e9es ou l'asym\u00e9trie dimensionnelle du mod\u00e8le.<\/p>\n<p>Sous R, la r\u00e9gression Ridge s'ex\u00e9cute avec le paquet de r\u00e9f\u00e9rence <code>glmnet<\/code> via la fonction \u00e9ponyme en configurant l'argument <code>alpha = 0<\/code>. L'optimisation du param\u00e8tre <span class=\"arabpsy-math-inline\" data-latex=\"lambda\">$lambda$<\/span> s'effectue automatiquement par validation crois\u00e9e \u00e0 l'aide de la fonction <code>cv.glmnet()<\/code>, garantissant des pr\u00e9dictions math\u00e9matiquement stables sans le moindre avertissement de singularit\u00e9 de rang.<\/p>\n<h3>9.2 Le Lasso (p\u00e9nalit\u00e9 L1) et la s\u00e9lection parcimonieuse<\/h3>\n<p>Si la r\u00e9gression Ridge r\u00e9sout int\u00e9gralement l'inversibilit\u00e9 matricielle, elle conserve n\u00e9anmoins la totalit\u00e9 des <span class=\"arabpsy-math-inline\" data-latex=\"p\">$p$<\/span> pr\u00e9dicteurs dans l'\u00e9quation finale en r\u00e9tr\u00e9cissant contin\u00fbment leurs coefficients vers z\u00e9ro sans jamais les annuler exactement. Lorsque l'objectif d'analyse requiert une s\u00e9lection explicite de variables pour restaurer la parcimonie du mod\u00e8le, la m\u00e9thode du <a rel=\"noopener noreferrer\" href=\"https:\/\/fr.wikipedia.org\/wiki\/Lasso_(statistiques)\">Lasso<\/a> (<em>Least Absolute Shrinkage and Selection Operator<\/em>) s'impose comme une alternative de choix.<\/p>\n<p>Le Lasso applique une p\u00e9nalisation fond\u00e9e sur la norme <span class=\"arabpsy-math-inline\" data-latex=\"L_1\">$L_1$<\/span> des param\u00e8tres (la somme des valeurs absolues) :<\/p>\n<p><span class=\"arabpsy-math-display\" data-latex=\"\\hat{\\beta}_{\\text{lasso}} = arg\\min_{\\beta} \\left( |Y - Xbeta|^2 + \\lambda \\sum_{j=1}^{p} |\\beta_j| \\right)\">$$\\hat{\\beta}_{\\text{lasso}} = arg\\min_{\\beta} \\left( |Y - Xbeta|^2 + \\lambda \\sum_{j=1}^{p} |\\beta_j| \\right)$$<\/span><\/p>\n<p>En raison de la g\u00e9om\u00e9trie anguleuse de la boule unit\u00e9 associ\u00e9e \u00e0 la norme <span class=\"arabpsy-math-inline\" data-latex=\"L_1\">$L_1$<\/span>, l'optimisation force exactement \u00e0 z\u00e9ro les coefficients des variables les moins contributives lorsque l'hyperparam\u00e8tre de p\u00e9nalisation <span class=\"arabpsy-math-inline\" data-latex=\"lambda\">$lambda$<\/span> augmente. Le Lasso r\u00e9alise ainsi simultan\u00e9ment l'estimation des param\u00e8tres et une s\u00e9lection automatique et continue de caract\u00e9ristiques.<\/p>\n<p>Dans un contexte d'ajustement \u00e0 rang d\u00e9ficient o\u00f9 deux variables sont strictement colin\u00e9aires, le Lasso s\u00e9lectionne de mani\u00e8re autonome l'une des deux covariables et force le coefficient de la seconde \u00e0 z\u00e9ro, r\u00e9solvant instantan\u00e9ment le probl\u00e8me de singularit\u00e9. La mise en \u0153uvre sous R s'op\u00e8re par l'appel de <code>glmnet(x, y, alpha = 1)<\/code>. L'\u00e9valuation pr\u00e9dictive sur de nouvelles donn\u00e9es s'ex\u00e9cute ensuite via la m\u00e9thode d\u00e9di\u00e9e <code>predict.glmnet()<\/code> en s\u00e9lectionnant le param\u00e8tre optimal identifi\u00e9 par validation crois\u00e9e (<code>s = \"lambda.min\"<\/code> ou <code>s = \"lambda.1se\"<\/code>), produisant des pr\u00e9dictions parfaitement conditionn\u00e9es sans d\u00e9faillance de rang.<\/p>\n<h3>9.3 L'Elastic Net : le compromis id\u00e9al<\/h3>\n<p>Malgr\u00e9 sa puissance, le Lasso pr\u00e9sente une faiblesse algorithmique reconnue lorsqu'il est confront\u00e9 \u00e0 des blocs de variables affichant de fortes corr\u00e9lations mutuelles. Dans une telle situation, le Lasso tend \u00e0 retenir arbitrairement une seule variable du groupe corr\u00e9l\u00e9 et \u00e0 annuler brutalement toutes les autres, sans consid\u00e9ration de leur pertinence partag\u00e9e. De surcro\u00eet, dans les sc\u00e9narios extr\u00eames o\u00f9 <span class=\"arabpsy-math-inline\" data-latex=\"p &gt; n\">$p > n$<\/span>, le Lasso ne peut math\u00e9matiquement s\u00e9lectionner au maximum que <span class=\"arabpsy-math-inline\" data-latex=\"n\">$n$<\/span> variables avant de saturer.<\/p>\n<p>Pour d\u00e9passer ces limitations combin\u00e9es, Zou et Hastie ont d\u00e9velopp\u00e9 l'approche de l'<a rel=\"noopener noreferrer\" href=\"https:\/\/fr.wikipedia.org\/wiki\/R%C3%A9gularisation_Elastic_Net\">Elastic Net<\/a>, qui fusionne de mani\u00e8re convexe les p\u00e9nalit\u00e9s Ridge (<span class=\"arabpsy-math-inline\" data-latex=\"L_2\">$L_2$<\/span>) et Lasso (<span class=\"arabpsy-math-inline\" data-latex=\"L_1\">$L_1$<\/span>) au sein d'une m\u00eame \u00e9quation objective :<\/p>\n<p><span class=\"arabpsy-math-display\" data-latex=\"\\hat{\\beta}_{\\text{enet}} = arg\\min_{\\beta} \\left( |Y - Xbeta|^2 + \\lambda \\left[ \\alpha \\sum_{j=1}^{p} |\\beta_j| + \\frac{1 - \\alpha}{2} \\sum_{j=1}^{p} \\beta_j^2 \\right] \\right)\">$$\\hat{\\beta}_{\\text{enet}} = arg\\min_{\\beta} \\left( |Y - Xbeta|^2 + \\lambda \\left[ \\alpha \\sum_{j=1}^{p} |\\beta_j| + \\frac{1 - \\alpha}{2} \\sum_{j=1}^{p} \\beta_j^2 \\right] \\right)$$<\/span><\/p>\n<p>Le param\u00e8tre de m\u00e9lange <span class=\"arabpsy-math-inline\" data-latex=\"\\alpha in [0, 1]\">$\\alpha in [0, 1]$<\/span> contr\u00f4le l'arbitrage entre la parcimonie du Lasso (<span class=\"arabpsy-math-inline\" data-latex=\"\\alpha = 1\">$\\alpha = 1$<\/span>) et la capacit\u00e9 de regroupement (<em>grouping effect<\/em>) de la r\u00e9gression Ridge (<span class=\"arabpsy-math-inline\" data-latex=\"\\alpha = 0\">$\\alpha = 0$<\/span>).<\/p>\n<p>Gr\u00e2ce \u00e0 la composante quadratique Ridge, la matrice d'information sous-jacente est strictement r\u00e9gularis\u00e9e, ce qui neutralise tout risque de singularit\u00e9 de rang quel que soit le ratio <span class=\"arabpsy-math-inline\" data-latex=\"p\/n\">$p\/n$<\/span>. Simultan\u00e9ment, la composante Lasso assure la s\u00e9lection de variables tout en encourageant les pr\u00e9dicteurs fortement colin\u00e9aires \u00e0 entrer ou sortir conjointement du mod\u00e8le. L'\u00e9talonnage conjoint des hyperparam\u00e8tres <span class=\"arabpsy-math-inline\" data-latex=\"lambda\">$lambda$<\/span> et <span class=\"arabpsy-math-inline\" data-latex=\"\\alpha\">$\\alpha$<\/span> s'effectue sous R de fa\u00e7on rigoureuse \u00e0 l'aide de paquets d'apprentissage supervis\u00e9 comme <code>caret<\/code> (via la m\u00e9thode <code>train(..., method = \"glmnet\")<\/code>) ou <code>tidymodels<\/code>, fournissant ainsi l'armature pr\u00e9dictive la plus robuste face aux matrices d'exp\u00e9rience complexes.<\/p>\n<h2>10. Solution 4 : Correction du codage des contrastes et restructuration des donn\u00e9es<\/h2>\n<h3>10.1 R\u00e9glage explicite des matrices de contraste dans R<\/h3>\n<p>Lorsque la d\u00e9ficience de rang provient d'une mauvaise manipulation des variables qualitatives, la r\u00e9solution de l'anomalie n\u00e9cessite une gestion rigoureuse des matrices de contrastes associ\u00e9es aux facteurs. Par d\u00e9faut, l'interpr\u00e9teur R applique le syst\u00e8me de contrastes de traitement (<code>contr.treatment<\/code>), qui prend la premi\u00e8re modalit\u00e9 par ordre alphab\u00e9tique comme modalit\u00e9 de base et estime l'\u00e9cart des autres niveaux par rapport \u00e0 celle-ci en pr\u00e9sence d'une ordonn\u00e9e \u00e0 l'origine globale.<\/p>\n<p>Toutefois, de nombreux analystes tentent parfois de s'affranchir de cette r\u00e9f\u00e9rence en for\u00e7ant la suppression explicite de l'interception dans la formule de r\u00e9gression, par exemple via la syntaxe :<\/p>\n<p><code>lm(y ~ 0 + facteur1 + facteur2, data = df)<\/code><\/p>\n<p>Bien que cette \u00e9criture permette d'estimer simultan\u00e9ment l'ensemble des modalit\u00e9s du premier facteur sans g\u00e9n\u00e9rer de singularit\u00e9, l'introduction subs\u00e9quente d'un second facteur cat\u00e9goriel r\u00e9introduit imm\u00e9diatement la d\u00e9pendance lin\u00e9aire. En effet, la somme des indicatrices de <code>facteur2<\/code> reproduit exactement la constante implicite d\u00e9j\u00e0 satur\u00e9e par l'ensemble des modalit\u00e9s de <code>facteur1<\/code>. R se trouve contraint d'\u00e9liminer la derni\u00e8re modalit\u00e9 de <code>facteur2<\/code> sous forme de <code>NA<\/code>, r\u00e9activant l'alerte pr\u00e9dictive.<\/p>\n<p>Pour restaurer l'int\u00e9grit\u00e9 du syst\u00e8me, il convient de param\u00e9trer explicitement les contrastes ad\u00e9quats en fonction des objectifs de recherche. L'affectation de contrastes de somme (<em>sum-to-zero contrasts<\/em>, o\u00f9 les coefficients somment \u00e0 z\u00e9ro) via la commande :<\/p>\n<p><code>contrasts(df$facteur) <- contr.sum<\/code><\/p>\n<p>permet de comparer chaque modalit\u00e9 \u00e0 la moyenne g\u00e9n\u00e9rale tout en garantissant l'orthogonalit\u00e9 exacte des colonnes indicatrices vis-\u00e0-vis de l'interception globale, \u00e9vitant ainsi les singularit\u00e9s matricielles accidentelles.<\/p>\n<h3>10.2 Fusion et recodage des modalit\u00e9s \u00e0 faible effectif<\/h3>\n<p>La pr\u00e9sence de facteurs cat\u00e9goriels comportant de nombreuses modalit\u00e9s dont certaines ne regroupent qu'une fraction infime de l'\u00e9chantillon constitue une cause fr\u00e9quente de non-estimabilit\u00e9 num\u00e9rique, particuli\u00e8rement lors de la validation crois\u00e9e ou du d\u00e9ploiement sur de nouvelles donn\u00e9es d'apprentissage.<\/p>\n<p>Si une modalit\u00e9 nominale n'est repr\u00e9sent\u00e9e que par un ou deux individus, il est hautement probable qu'elle se retrouve totalement absente dans l'un des plis de r\u00e9\u00e9chantillonnage ou dans le sous-ensemble de validation. Cette asym\u00e9trie engendre des colonnes vides dans la matrice d'exp\u00e9rience du jeu de test ou des colonnes monopolis\u00e9es par un z\u00e9ro continu, provoquant des erreurs de rang d\u00e9ficient lors de l'appel de <code>predict()<\/code>.<\/p>\n<p>La bonne pratique consiste \u00e0 proc\u00e9der \u00e0 une rationalisation pr\u00e9alable des cat\u00e9gories \u00e0 faible effectif en exploitant les fonctionnalit\u00e9s modernes du paquet <code>forcats<\/code> (int\u00e9gr\u00e9 au c\u0153ur du <code>tidyverse<\/code>). Les fonctions sp\u00e9cialis\u00e9es telles que :<\/p>\n<ul>\n<li><code>fct_lump_min(f, min = 10)<\/code> : regroupe automatiquement sous une \u00e9tiquette commune \u00ab Other \u00bb toutes les modalit\u00e9s dont l'effectif absolu est strictement inf\u00e9rieur au seuil sp\u00e9cifi\u00e9.<\/li>\n<li><code>fct_lump_prop(f, prop = 0.05)<\/code> : consolide toutes les cat\u00e9gories repr\u00e9sentant moins de 5 % de la distribution globale de l'\u00e9chantillon.<\/li>\n<li><code>fct_collapse()<\/code> : permet une fusion manuelle et dirig\u00e9e par la th\u00e9orie des niveaux s\u00e9mantiquement voisins.<\/li>\n<\/ul>\n<p>Cette restructuration \u00e9limine les cellules d'\u00e9chantillonnage quasi-vides, garantit une variance positive au sein de chaque sous-groupe et stabilise d\u00e9finitivement l'estimation des param\u00e8tres de contraste.<\/p>\n<h3>10.3 Nettoyage pr\u00e9alable des donn\u00e9es avec droplevels()<\/h3>\n<p>Une anomalie technique r\u00e9currente au sein de l'\u00e9cosyst\u00e8me R concerne le maintien en m\u00e9moire des niveaux dits \u00ab fant\u00f4mes \u00bb (<em>unused levels<\/em>). Dans R, un objet de classe <code>factor<\/code> conserve l'historique complet de l'ensemble de ses modalit\u00e9s d\u00e9clar\u00e9es dans son attribut <code>levels<\/code>, m\u00eame si l'analyste proc\u00e8de \u00e0 un filtrage ou \u00e0 un sous-\u00e9chantillonnage supprimant physiquement l'ensemble des lignes associ\u00e9es \u00e0 certaines de ces cat\u00e9gories.<\/p>\n<p>Consid\u00e9rons un jeu de donn\u00e9es m\u00e9dicales o\u00f9 la variable <code>pathologie<\/code> comporte trois niveaux : <code>c(\"L\u00e9g\u00e8re\", \"Mod\u00e9r\u00e9e\", \"S\u00e9v\u00e8re\")<\/code>. Si l'investigateur extrait une sous-cohorte ciblant uniquement les cas non hospitalis\u00e9s via la commande :<\/p>\n<p><code>sous_groupe <- subset(base_totale, pathologie != \"S\u00e9v\u00e8re\")<\/code><\/p>\n<p>le vecteur <code>sous_groupe$pathologie<\/code> ne contient plus aucune observation pr\u00e9sentant la modalit\u00e9 \u00ab S\u00e9v\u00e8re \u00bb. Cependant, l'attribut <code>levels(sous_groupe$pathologie)<\/code> affiche toujours les trois modalit\u00e9s d'origine. Lors de l'estimation ult\u00e9rieure d'un mod\u00e8le lin\u00e9aire complexe ou d'un calcul de matrice d'interaction via <code>model.matrix()<\/code>, certaines fonctions automatis\u00e9es continueront d'allouer une colonne pour la modalit\u00e9 \u00ab S\u00e9v\u00e8re \u00bb, une colonne int\u00e9gralement remplie de z\u00e9ros, ce qui cr\u00e9e une d\u00e9ficience de rang purement logicielle.<\/p>\n<p>Pour \u00e9liminer d\u00e9finitivement ce risque, l'application syst\u00e9matique de la fonction de nettoyage <code>droplevels()<\/code> apr\u00e8s toute op\u00e9ration de filtrage, de jointure ou de partitionnement d'\u00e9chantillon constitue une r\u00e8gle d'hygi\u00e8ne imp\u00e9rative :<\/p>\n<p><code>sous_groupe <- droplevels(sous_groupe)<\/code><\/p>\n<p>Cette commande expurge instantan\u00e9ment la table des modalit\u00e9s de toute valeur non repr\u00e9sent\u00e9e empiriquement, garantissant que la matrice de contraste g\u00e9n\u00e9r\u00e9e par la suite sera strictement calibr\u00e9e sur les observations r\u00e9elles.<\/p>\n<h2>11. \u00c9tude de cas pratiques et protocoles de code reproductibles<\/h2>\n<h3>11.1 Cas pratique A : Deux pr\u00e9dicteurs parfaitement corr\u00e9l\u00e9s en sciences sociales<\/h3>\n<p>Afin d'ancrer ces d\u00e9veloppements th\u00e9oriques dans une m\u00e9thodologie op\u00e9rationnelle, nous examinons une premi\u00e8re \u00e9tude de cas portant sur une enqu\u00eate en sociologie de l'\u00e9ducation. L'objectif consiste \u00e0 pr\u00e9dire la r\u00e9ussite universitaire (<span class=\"arabpsy-math-inline\" data-latex=\"Y\">$Y$<\/span>, \u00e9chelle continue de 0 \u00e0 100) en fonction des heures d'\u00e9tude hebdomadaires (<span class=\"arabpsy-math-inline\" data-latex=\"X_1\">$X_1$<\/span>), du temps de r\u00e9vision en biblioth\u00e8que (<span class=\"arabpsy-math-inline\" data-latex=\"X_2\">$X_2$<\/span>, construit accidentellement comme une fraction directe de <span class=\"arabpsy-math-inline\" data-latex=\"X_1\">$X_1$<\/span>) et de l'\u00e2ge de l'\u00e9tudiant (<span class=\"arabpsy-math-inline\" data-latex=\"X_3\">$X_3$<\/span>).<\/p>\n<p>Le protocole de reproduction de l'anomalie et de sa correction s'articule comme suit :<\/p>\n<p>L'analyste g\u00e9n\u00e8re une matrice synth\u00e9tique de 200 \u00e9tudiants. Lors de la saisie des covariables, la variable de temps d'\u00e9tude en biblioth\u00e8que est calcul\u00e9e comme \u00e9tant rigoureusement \u00e9gale \u00e0 la moiti\u00e9 du temps d'\u00e9tude global (<span class=\"arabpsy-math-inline\" data-latex=\"X_2 = 0.5 \\times X_1\">$X_2 = 0.5 \\times X_1$<\/span>). Le mod\u00e8le initial est calibr\u00e9 par la commande <code>modele_socio <- lm(reussite ~ x1_etude + x2_biblio + age, data = base_socio)<\/code>. L'inspection du mod\u00e8le r\u00e9v\u00e8le que le coefficient associ\u00e9 \u00e0 <code>x2_biblio<\/code> re\u00e7oit la valeur <code>NA<\/code>. Lorsque l'analyste ex\u00e9cute la pr\u00e9diction sur dix nouveaux profils d'\u00e9tudiants, l'avertissement de rang d\u00e9ficient est \u00e9mis.<\/p>\n<p>Le diagnostic formel s'effectue en invoquant la commande <code>alias(modele_socio)<\/code>, qui confirme imm\u00e9diatement la relation lin\u00e9aire univoque : <code>x2_biblio = 0.5 * x1_etude<\/code>. Pour rem\u00e9dier au probl\u00e8me, l'analyste d\u00e9cide, sur la base de la th\u00e9orie p\u00e9dagogique, de ne conserver que le temps d'\u00e9tude global, plus exhaustif. Le mod\u00e8le est r\u00e9-estim\u00e9 sans la variable redondante \u00e0 l'aide de l'instruction :<\/p>\n<p><code>modele_socio_clean <- update(modele_socio, . ~ . - x2_biblio)<\/code><\/p>\n<p>La comparaison rigoureuse des m\u00e9triques de sortie valide la r\u00e9solution :<\/p>\n<ul>\n<li>L'estimation du coefficient de <code>x1_etude<\/code> reste statistiquement significative et gagne en stabilit\u00e9.<\/li>\n<li>L'erreur standard r\u00e9siduelle globale demeure rigoureusement invariante (<span class=\"arabpsy-math-inline\" data-latex=\"s_e = 4.12\">$s_e = 4.12$<\/span>), attestant qu'aucune d\u00e9perdition d'information n'a eu lieu.<\/li>\n<li>La commande <code>predict(modele_socio_clean, newdata = test_socio, interval = \"confidence\")<\/code> calcule d\u00e9sormais des intervalles de confiance rigoureux \u00e0 95 %, sans aucun avertissement ni distorsion math\u00e9matique.<\/li>\n<\/ul>\n<h3>11.2 Cas pratique B : Jeu de donn\u00e9es \u00e0 haute dimensionnalit\u00e9 (n < p)<\/h3>\n<p>Notre deuxi\u00e8me cas pratique simule une recherche en neuropharmacologie comportementale o\u00f9 une \u00e9quipe analyse l'effet d'une mol\u00e9cule sur des scores de flexibilit\u00e9 cognitive. L'\u00e9tude ne dispose que de <span class=\"arabpsy-math-inline\" data-latex=\"n = 30\">$n = 30$<\/span> mod\u00e8les animaux, mais l'analyse d'expression g\u00e9nique fournit <span class=\"arabpsy-math-inline\" data-latex=\"p = 60\">$p = 60$<\/span> biomarqueurs neuronaux continus.<\/p>\n<p>L'application d'un mod\u00e8le lin\u00e9aire univari\u00e9 standard <code>lm(score ~ ., data = neuro_data)<\/code> aboutit \u00e0 une d\u00e9faillance m\u00e9thodologique imm\u00e9diate. La matrice de plan pr\u00e9sente des dimensions <span class=\"arabpsy-math-inline\" data-latex=\"30 \\times 61\">$30 \\times 61$<\/span>. L'interpr\u00e9teur R estime les 29 premiers param\u00e8tres disponibles, puis neutralise les 31 variables restantes en leur assignant des coefficients <code>NA<\/code>. L'\u00e9cart-type de l'erreur r\u00e9siduelle affiche une ind\u00e9termination math\u00e9matique avec z\u00e9ro degr\u00e9 de libert\u00e9. L'\u00e9valuation pr\u00e9dictive sur un jeu de test externe via <code>predict.lm()<\/code> \u00e9choue conceptuellement en produisant des projections d\u00e9connect\u00e9es de la complexit\u00e9 biologique globale.<\/p>\n<p>La rem\u00e9diation s'op\u00e8re par le d\u00e9ploiement d'une r\u00e9gression r\u00e9gularis\u00e9e Elastic Net via le paquet <code>glmnet<\/code> :<\/p>\n<p>L'analyste convertit ses variables d'entra\u00eenement en matrice num\u00e9rique <span class=\"arabpsy-math-inline\" data-latex=\"X_{\\text{train}}\">$X_{\\text{train}}$<\/span> et vecteur de r\u00e9ponse <span class=\"arabpsy-math-inline\" data-latex=\"Y_{\\text{train}}\">$Y_{\\text{train}}$<\/span>. \u00c0 l'aide de la fonction <code>cv.glmnet(x = X_train, y = Y_train, alpha = 0.5)<\/code>, le mod\u00e8le effectue une validation crois\u00e9e \u00e0 10 plis (<em>10-fold cross-validation<\/em>) afin d'identifier la valeur optimale de la p\u00e9nalit\u00e9 <span class=\"arabpsy-math-inline\" data-latex=\"lambda\">$lambda$<\/span> qui minimise l'erreur quadratique moyenne de pr\u00e9diction (MSE). Gr\u00e2ce \u00e0 la double p\u00e9nalisation L1 et L2, l'ensemble des 60 biomarqueurs est pris en consid\u00e9ration au sein d'une matrice inversible et r\u00e9gularis\u00e9e.<\/p>\n<p>L'extraction finale des pr\u00e9dictions sur le jeu de test ind\u00e9pendant s'effectue via :<\/p>\n<p><code>predictions_reg <- predict(cv_model, newx = X_test, s = \"lambda.min\")<\/code><\/p>\n<p>L'analyse comparative des performances d\u00e9montre la sup\u00e9riorit\u00e9 absolue de cette d\u00e9marche : alors que le mod\u00e8le lin\u00e9aire conventionnel non r\u00e9gularis\u00e9 pr\u00e9sentait un surapprentissage total intra-\u00e9chantillon (<span class=\"arabpsy-math-inline\" data-latex=\"R^2 = 1.0\">$R^2 = 1.0$<\/span>) mais une erreur de pr\u00e9diction d\u00e9mesur\u00e9e sur les donn\u00e9es de test, le mod\u00e8le p\u00e9nalis\u00e9 affiche une erreur quadratique moyenne de pr\u00e9diction (RMSE) stable et minimale, tout en garantissant une convergence math\u00e9matique parfaite exempte de toute d\u00e9ficience de rang.<\/p>\n<h3>11.3 Cas pratique C : Erreur de codage de variables cat\u00e9gorielles crois\u00e9es<\/h3>\n<p>Le troisi\u00e8me sc\u00e9nario pratique illustre un protocole factoriel en psychologie ergonomique \u00e9valuant la charge mentale d'op\u00e9rateurs en fonction du type d'interface visuelle (3 niveaux : Analogique, Num\u00e9rique, R\u00e9alit\u00e9 Augment\u00e9e) et du niveau de stress environnemental induit (3 niveaux : Faible, Moyen, Extr\u00eame). Le plan d'exp\u00e9rience th\u00e9orique comprend donc 9 cellules factorielles.<\/p>\n<p>Cependant, en raison de protocoles d'\u00e9thique stricts, la condition d'exp\u00e9rimentation croisant l'interface en \u00ab R\u00e9alit\u00e9 Augment\u00e9e \u00bb avec un stress \u00ab Extr\u00eame \u00bb n'a pas \u00e9t\u00e9 autoris\u00e9e sur les sujets humains. La cellule correspondante est donc totalement absente des donn\u00e9es empiriques (<span class=\"arabpsy-math-inline\" data-latex=\"n_{\\text{AR, Extr\u00eame}} = 0\">$n_{\\text{AR, Extr\u00eame}} = 0$<\/span>). Lorsque l'analyste sp\u00e9cifie un mod\u00e8le lin\u00e9aire incluant l'ensemble des effets principaux et leur terme d'interaction factorielle compl\u00e8te :<\/p>\n<p><code>modele_ergo <- lm(charge ~ interface * stress, data = base_ergo)<\/code><\/p>\n<p>la routine QR de R constate instantan\u00e9ment la pr\u00e9sence d'une colonne indicatrice enti\u00e8rement constitu\u00e9e de z\u00e9ros au sein de la matrice de plan expans\u00e9e pour le terme d'interaction manquant. R force le coefficient correspondant \u00e0 <code>NA<\/code> et \u00e9met l'avertissement de rang d\u00e9ficient d\u00e8s que la m\u00e9thode <code>predict()<\/code> est sollicit\u00e9e.<\/p>\n<p>La r\u00e9solution de cette singularit\u00e9 passe par une reconfiguration m\u00e9thodologique du codage factoriel :<\/p>\n<p>Au lieu de sp\u00e9cifier un mod\u00e8le factoriel satur\u00e9 inapplicable contenant des combinaisons structuralement impossibles, l'analyste proc\u00e8de \u00e0 la fusion des deux facteurs en un unique facteur combin\u00e9 \u00e0 8 modalit\u00e9s observables r\u00e9elles (ex. : <code>Interface_Stress<\/code> prenant les niveaux \u00ab Analogique_Faible \u00bb, ..., \u00ab AR_Moyen \u00bb). Le mod\u00e8le lin\u00e9aire est ensuite estim\u00e9 sous la forme simplifi\u00e9e :<\/p>\n<p><code>modele_ergo_recode <- lm(charge ~ condition_combinee, data = base_ergo)<\/code><\/p>\n<p>Cette sp\u00e9cification restitue un mod\u00e8le de plein rang contenant exactement 8 param\u00e8tres (une constante et 7 contrastes de traitement). L'ensemble des coefficients est rigoureusement estimable, les tests de comparaisons multiples <em>post-hoc<\/em> (par exemple via le paquet <code>emmeans<\/code>) retrouvent leur validit\u00e9 inf\u00e9rentielle, et les pr\u00e9dictions appliqu\u00e9es \u00e0 des op\u00e9rateurs futurs s'ex\u00e9cutent de fa\u00e7on transparente sans la moindre d\u00e9faillance de rang.<\/p>\n<h2>12. Synth\u00e8se m\u00e9thodologique, bonnes pratiques et cadre de validation<\/h2>\n<h3>12.1 Liste de contr\u00f4le (Checklist) pr\u00e9-mod\u00e9lisation sous R<\/h3>\n<p>Pour immuniser les protocoles de mod\u00e9lisation statistique contre les risques d'ajustements de rang d\u00e9ficient, il est recommand\u00e9 de syst\u00e9matiser une liste de contr\u00f4le d'assurance qualit\u00e9 avant toute ex\u00e9cution de la fonction <code>lm()<\/code> ou <code>glm()<\/code>. Cette d\u00e9marche rigoureuse s'articule autour de quatre v\u00e9rifications fondamentales :<\/p>\n<ul>\n<li><strong>V\u00e9rification du ratio sujet\/pr\u00e9dicteur :<\/strong> Se conformer aux r\u00e8gles empiriques de la litt\u00e9rature statistique (notamment les recommandations de Frank Harrell et de Green), qui pr\u00e9conisent de disposer d'au minimum 15 \u00e0 20 observations ind\u00e9pendantes par param\u00e8tre libre estim\u00e9 dans un mod\u00e8le lin\u00e9aire continu, et au moins 10 \u00e0 20 \u00e9v\u00e9nements par variable (EPV) pour les mod\u00e8les de r\u00e9gression logistique binaire.<\/li>\n<li><strong>Audit automatis\u00e9 des corr\u00e9lations bivari\u00e9es :<\/strong> Ex\u00e9cuter un balayage pr\u00e9alable des matrices de corr\u00e9lation pour rep\u00e9rer toute relation lin\u00e9aire absolue (<span class=\"arabpsy-math-inline\" data-latex=\"|r| &gt; 0.95\">$|r| > 0.95$<\/span>). L'identification en amont de ces couples \u00e9vite d'incorporer des variables d\u00e9riv\u00e9es ou redondantes qui paralyseraient l'inversion matricielle.<\/li>\n<li><strong>Contr\u00f4le des facteurs qualitatifs et des niveaux orphelins :<\/strong> Appliquer syst\u00e9matiquement la commande <code>droplevels()<\/code> apr\u00e8s chaque op\u00e9ration de filtrage sur la base de donn\u00e9es. Examiner la table de contingence crois\u00e9e (via <code>table(df<span class=\"arabpsy-math-inline\" data-latex=\"facteurA, df\">$facteurA, df$<\/span>facteurB)<\/code>) pour v\u00e9rifier l'absence de cellules d'interaction vides ou \u00e0 variance nulle avant d'inclure des termes d'interaction factorielle.<\/li>\n<li><strong>Inspection num\u00e9rique pr\u00e9ventive de la matrice d'exp\u00e9rience :<\/strong> Avant l'inf\u00e9rence d\u00e9finitive, \u00e9valuer le conditionnement de la matrice d'exp\u00e9rience avec <code>kappa(model.matrix(~ ., data = predicteurs))<\/code> afin de v\u00e9rifier que le nombre de conditionnement reste largement inf\u00e9rieur au seuil critique de 1 000.<\/li>\n<\/ul>\n<h3>12.2 Automatisation des alertes dans les pipelines de calculs<\/h3>\n<p>Dans le cadre de cha\u00eenes de traitement automatis\u00e9es (<em>machine learning pipelines<\/em>), de processus d'int\u00e9gration continue ou d'\u00e9tudes pr\u00e9-enregistr\u00e9es, les messages d'avertissement \u00e9mis par la console R peuvent passer inaper\u00e7us s'ils ne sont pas formellement intercept\u00e9s. Laisser un mod\u00e8le \u00e0 rang d\u00e9ficient \u00e9mettre des pr\u00e9dictions non supervis\u00e9es dans une infrastructure de production expose l'organisation \u00e0 des erreurs de pr\u00e9vision majeures.<\/p>\n<p>L'environnement R offre des outils de contr\u00f4le d'ex\u00e9cution avanc\u00e9s permettant de capturer ces signaux faibles. En exploitant la fonction <code>withCallingHandlers()<\/code> ou la structure de contr\u00f4le <code>tryCatch()<\/code>, il est possible de programmer une interruption s\u00e9curis\u00e9e ou un basculement algorithmique automatique d\u00e8s l'\u00e9mission de l'avertissement cible :<\/p>\n<p>L'impl\u00e9mentation d'une fonction de surveillance permet d'intercepter sp\u00e9cifiquement les avertissements \u00e9mis par <code>predict.lm<\/code>. Si la cha\u00eene de caract\u00e8res contient l'expression \u00ab <em>rank-deficient fit<\/em> \u00bb, le programme peut \u00eatre configur\u00e9 pour rejeter le mod\u00e8le lin\u00e9aire MCO, consigner l'incident dans un journal d'audit m\u00e9thodologique et basculer instantan\u00e9ment l'entra\u00eenement vers un algorithme r\u00e9gularis\u00e9 de type <code>glmnet<\/code> (Ridge ou Elastic Net). Ce m\u00e9canisme garantit la r\u00e9silience op\u00e9rationnelle du pipeline pr\u00e9dictif tout en pr\u00e9servant l'int\u00e9grit\u00e9 num\u00e9rique des r\u00e9sultats diffus\u00e9s aux utilisateurs finaux.<\/p>\n<h3>12.3 Recommandations pour la publication acad\u00e9mique<\/h3>\n<p>L'\u00e9thique et les normes de publication dans les revues acad\u00e9miques \u00e0 comit\u00e9 de lecture imposent une transparence absolue quant au traitement des anomalies de mod\u00e9lisation statistique. Dissimuler ou omettre la pr\u00e9sence de coefficients non estimables (<code>NA<\/code>) dans les r\u00e9sultats rapport\u00e9s constitue une faute m\u00e9thodologique s\u00e9rieuse qui alt\u00e8re la reproductibilit\u00e9 de la recherche.<\/p>\n<p>Dans la section \u00ab M\u00e9thodes \u00bb ou \u00ab Analyse statistique \u00bb d'un manuscrit scientifique, les auteurs doivent explicitement d\u00e9clarer les crit\u00e8res ayant pr\u00e9sid\u00e9 \u00e0 l'exclusion de pr\u00e9dicteurs colin\u00e9aires. Si des variables ont \u00e9t\u00e9 retir\u00e9es du mod\u00e8le final, il convient d'exposer la justification th\u00e9orique ou clinique qui a sous-tendu cet arbitrage plut\u00f4t que de pr\u00e9senter le sous-mod\u00e8le comme s'il avait \u00e9t\u00e9 sp\u00e9cifi\u00e9 <em>a priori<\/em>. De m\u00eame, les valeurs du Facteur d'Inflation de la Variance (VIF) ou les nombres de conditionnement matriciel doivent \u00eatre syst\u00e9matiquement document\u00e9s pour attester de l'absence de multicolin\u00e9arit\u00e9 r\u00e9siduelle.<\/p>\n<p>Enfin, dans l'esprit de la science ouverte (<em>Open Science<\/em>), les chercheurs sont vivement encourag\u00e9s \u00e0 d\u00e9poser leurs scripts d'analyse R complets au sein de d\u00e9p\u00f4ts institutionnels ou de plateformes publiques certifi\u00e9es (comme le <a rel=\"noopener noreferrer\" href=\"https:\/\/osf.io\/\">Center for Open Science \/ OSF<\/a> ou Zenodo). Le script partag\u00e9 doit inclure l'ensemble des instructions d'inspection, le diagnostic des alias et le code de nettoyage des donn\u00e9es, garantissant ainsi \u00e0 la communaut\u00e9 scientifique la possibilit\u00e9 de v\u00e9rifier rigoureusement l'absence d'estimations trompeuses issues de matrices \u00e0 rang d\u00e9ficient.<\/p>\n<h2>R\u00e9f\u00e9rences<\/h2>\n<p>Belsley, D. A., Kuh, E., & Welsch, R. E. (2005). <em>Regression diagnostics: Identifying influential data and sources of collinearity<\/em>. John Wiley & Sons. <a rel=\"noopener noreferrer\" href=\"https:\/\/doi.org\/10.1002\/0471725153\">https:\/\/doi.org\/10.1002\/0471725153<\/a><\/p>\n<p>Fox, J., & Weisberg, S. (2019). <em>An R companion to applied regression<\/em> (3rd ed.). SAGE Publications. <a rel=\"noopener noreferrer\" href=\"https:\/\/socialsciences.mcmaster.ca\/jfox\/Books\/Companion\/\">https:\/\/socialsciences.mcmaster.ca\/jfox\/Books\/Companion\/<\/a><\/p>\n<p>Friedman, J., Hastie, T., & Tibshirani, R. (2010). Regularization paths for generalized linear models via coordinate descent. <em>Journal of Statistical Software<\/em>, 33(1), 1\u201322. <a rel=\"noopener noreferrer\" href=\"https:\/\/doi.org\/10.18637\/jss.v033.i01\">https:\/\/doi.org\/10.18637\/jss.v033.i01<\/a><\/p>\n<p>Harrell, F. E. (2015). <em>Regression modeling strategies: With applications to linear models, logistic and ordinal regression, and survival analysis<\/em> (2nd ed.). Springer. <a rel=\"noopener noreferrer\" href=\"https:\/\/doi.org\/10.1007\/978-3-319-19425-7\">https:\/\/doi.org\/10.1007\/978-3-319-19425-7<\/a><\/p>\n<p>Hastie, T., Tibshirani, R., & Friedman, J. (2009). <em>The elements of statistical learning: Data mining, inference, and prediction<\/em> (2nd ed.). Springer. <a rel=\"noopener noreferrer\" href=\"https:\/\/doi.org\/10.1007\/978-0-387-84858-7\">https:\/\/doi.org\/10.1007\/978-0-387-84858-7<\/a><\/p>\n<p>Hoerl, A. E., & Kennard, R. W. (1970). Ridge regression: Biased estimation for nonorthogonal problems. <em>Technometrics<\/em>, 12(1), 55\u201367. <a rel=\"noopener noreferrer\" href=\"https:\/\/doi.org\/10.1080\/00401706.1970.10488634\">https:\/\/doi.org\/10.1080\/00401706.1970.10488634<\/a><\/p>\n<p>R Core Team. (2023). <em>R: A language and environment for statistical computing<\/em>. R Foundation for Statistical Computing, Vienna, Austria. <a rel=\"noopener noreferrer\" href=\"https:\/\/www.R-project.org\/\">https:\/\/www.R-project.org\/<\/a><\/p>\n<p>Rosseel, Y. (2012). lavaan: An R package for structural equation modeling. <em>Journal of Statistical Software<\/em>, 48(2), 1\u201336. <a rel=\"noopener noreferrer\" href=\"https:\/\/doi.org\/10.18637\/jss.v048.i02\">https:\/\/doi.org\/10.18637\/jss.v048.i02<\/a><\/p>\n<p>Tibshirani, R. (1996). Regression shrinkage and selection via the lasso. <em>Journal of the Royal Statistical Society: Series B (Methodological)<\/em>, 58(1), 267\u2013288. <a rel=\"noopener noreferrer\" href=\"https:\/\/doi.org\/10.1111\/j.2517-6161.1996.tb02080.x\">https:\/\/doi.org\/10.1111\/j.2517-6161.1996.tb02080.x<\/a><\/p>\n<p>Zou, H., & Hastie, T. (2005). Regularization and variable selection via the elastic net. <em>Journal of the Royal Statistical Society: Series B (Statistical Methodology)<\/em>, 67(2), 301\u2013320. <a rel=\"noopener noreferrer\" href=\"https:\/\/doi.org\/10.1111\/j.1467-9868.2005.00503.x\">https:\/\/doi.org\/10.1111\/j.1467-9868.2005.00503.x<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Guide complet pour comprendre et r\u00e9soudre l&rsquo;avertissement &lsquo;prediction from a rank-deficient fit may be misleading&rsquo; lors de mod\u00e9lisations sous R.<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"closed","template":"","categories":[2193,359],"tags":[2874,4787,7002,7003,7004],"class_list":["post-5043","psych_stat","type-psych_stat","status-publish","hentry","category-programmation-r","category-statistiques-appliquees","tag-modelisation-lineaire","tag-multicolinearite","tag-predict-lm","tag-rang-deficient","tag-regularisation-r"],"_links":{"self":[{"href":"https:\/\/french.arabpsychology.com\/index.php?rest_route=\/wp\/v2\/psych_stat\/5043","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/french.arabpsychology.com\/index.php?rest_route=\/wp\/v2\/psych_stat"}],"about":[{"href":"https:\/\/french.arabpsychology.com\/index.php?rest_route=\/wp\/v2\/types\/psych_stat"}],"author":[{"embeddable":true,"href":"https:\/\/french.arabpsychology.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/french.arabpsychology.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=5043"}],"version-history":[{"count":1,"href":"https:\/\/french.arabpsychology.com\/index.php?rest_route=\/wp\/v2\/psych_stat\/5043\/revisions"}],"predecessor-version":[{"id":16725,"href":"https:\/\/french.arabpsychology.com\/index.php?rest_route=\/wp\/v2\/psych_stat\/5043\/revisions\/16725"}],"wp:attachment":[{"href":"https:\/\/french.arabpsychology.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=5043"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/french.arabpsychology.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=5043"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/french.arabpsychology.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=5043"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}