{"id":1300,"date":"2026-08-21T14:31:11","date_gmt":"2026-08-21T14:31:11","guid":{"rendered":"https:\/\/matforge.org\/?p=1300","raw":"https:\/\/matforge.org\/?p=1300"},"modified":"2026-08-21T14:31:11","modified_gmt":"2026-08-21T14:31:11","slug":"inverse-problems-parameter-estimation-pde-models","status":"publish","type":"post","link":"https:\/\/matforge.org\/fr\/inverse-problems-parameter-estimation-pde-models\/","title":{"rendered":"Probl\u00e8mes inverses et estimation des param\u00e8tres pour les mod\u00e8les PDE","raw":"Probl\u00e8mes inverses et estimation des param\u00e8tres pour les mod\u00e8les PDE"},"content":{"rendered":"<span class=\"span-reading-time rt-reading-time\" style=\"display: block;\"><span class=\"rt-label rt-prefix\">Reading Time: <\/span> <span class=\"rt-time\"> 16<\/span> <span class=\"rt-label rt-postfix\">minutes<\/span><\/span><p>Un probl\u00e8me inverse pose une question simple mais fondamentalement difficile&nbsp;: \u00e9tant donn\u00e9 les mesures ou les sorties de simulation, quels sont les param\u00e8tres cach\u00e9s qui les ont produits&nbsp;? Dans la mod\u00e9lisation directe, vous sp\u00e9cifiez les conditions initiales et aux limites, les propri\u00e9t\u00e9s des mat\u00e9riaux et les termes de la source, puis int\u00e9grez les \u00e9quations qui gouvernent pour pr\u00e9dire le comportement du syst\u00e8me. Dans un probl\u00e8me inverse, vous retournez le processus. Vous observez le r\u00e9sultat &#8211; un champ de temp\u00e9rature, un profil de pression, un d\u00e9placement &#8211; et essayez de r\u00e9cup\u00e9rer les entr\u00e9es inconnues qui l&rsquo;ont pilot\u00e9.<\/p>\n<p>Il s&rsquo;agit d&rsquo;une estimation des param\u00e8tres pour les mod\u00e8les PDE&nbsp;: la machinerie math\u00e9matique pour transformer les mesures en estimations de param\u00e8tres et les outils de calcul qui le rendent pratique. Il appara\u00eet partout, de la g\u00e9ophysique (estimation de la perm\u00e9abilit\u00e9 du sous-sol \u00e0 partir des mesures de puits) \u00e0 la science des mat\u00e9riaux (r\u00e9cup\u00e9ration des coefficients de diffusion des champs de concentration observ\u00e9s) \u00e0 l&rsquo;apprentissage automatique bas\u00e9 sur la physique (d\u00e9couverte des \u00e9quations r\u00e9gissant les donn\u00e9es).<\/p>\n<p>Le d\u00e9fi est que les probl\u00e8mes inverses sont presque toujours mal pos\u00e9s. De petites erreurs dans vos donn\u00e9es peuvent produire des estimations extr\u00eamement erron\u00e9es. Sans formulation math\u00e9matique minutieuse et r\u00e9gularisation num\u00e9rique, vos param\u00e8tres les mieux adapt\u00e9s peuvent \u00eatre compl\u00e8tement trompeurs.<\/p>\n<h2>Points \u00e0 retenir cl\u00e9s<\/h2>\n<ul>\n<li><strong>Chaque probl\u00e8me inverse commence par un mod\u00e8le avanc\u00e9.<\/strong> La carte param\u00e8tre-\u00e0-solution $y = mathcal{g}(theta)$ d\u00e9finit comment les param\u00e8tres $theta$ produisent des observables $y$. Les probl\u00e8mes inverses r\u00e9cup\u00e8rent $theta$ des mesures bruyantes.<\/li>\n<li><strong>La discr\u00e9tisation compte plus que vous ne le pensez.<\/strong> L&rsquo;ordre dans lequel vous discr\u00e9ditez le mod\u00e8le avant, imposez une r\u00e9gularisation et r\u00e9solvez le probl\u00e8me inverse (DTI vs CTI vs ITD) d\u00e9termine si vos r\u00e9sultats d\u00e9pendent de votre maillage ou refl\u00e8tent la r\u00e9alit\u00e9 physique.<\/li>\n<li><strong>La r\u00e9gularisation apprivoise la mauvaise pose.<\/strong> La r\u00e9gularisation de Tikhonov, l&rsquo;analyse de la courbe en L et le principe de divergence vous donnent des moyens pratiques de choisir les param\u00e8tres de r\u00e9gularisation sans surajustement.<\/li>\n<li><strong>La m\u00e9thode Adjoint calcule efficacement les gradients.<\/strong> Au lieu de calculer des approximations de diff\u00e9rences finies co\u00fbteuses pour chaque param\u00e8tre, les \u00e9quations adjointes r\u00e9solvent les informations de gradient dans un seul balayage vers l&rsquo;arri\u00e8re, critique lorsque vous avez des milliers de param\u00e8tres.<\/li>\n<li><strong>L&rsquo;inversion bay\u00e9sienne vous donne des distributions, pas seulement des estimations ponctuelles.<\/strong> La distribution post\u00e9rieure $Mu^y$ caract\u00e9rise la totalit\u00e9 de l&rsquo;incertitude des param\u00e8tres conditionnel aux donn\u00e9es, et les formulations d&rsquo;espace de fonction garantissent des r\u00e9sultats invariants de discr\u00e9tisation.<\/li>\n<\/ul>\n<h2>Qu&rsquo;est-ce qu&rsquo;un probl\u00e8me inverse ?<\/h2>\n<p>Chaque probl\u00e8me inverse associe un mod\u00e8le avanc\u00e9 \u00e0 un ensemble de donn\u00e9es et pose une question de reconstruction. Le mod\u00e8le avant est un objet math\u00e9matique qui mappe des param\u00e8tres sur des observables. Dans les contextes PDE, il s&rsquo;agit g\u00e9n\u00e9ralement d&rsquo;un op\u00e9rateur de solution&nbsp;: \u00e9tant donn\u00e9 un ensemble de propri\u00e9t\u00e9s de mat\u00e9riaux, de conditions aux limites ou de termes sources, r\u00e9solvez les \u00e9quations r\u00e9gissant et extrayez les quantit\u00e9s qui vous int\u00e9ressent.<\/p>\n<p>Pour un PDE lin\u00e9aire, le probl\u00e8me vers l&rsquo;avant ressemble \u00e0<\/p>\n<p>$$AU = f, quad y = mathcal{c}(u),$$<\/p>\n<p>Lorsque $A$ est un op\u00e9rateur diff\u00e9rentiel encodant la physique (diffusion, advection, \u00e9lasticit\u00e9), $u$ est la variable d&rsquo;\u00e9tat, $f$ contient des termes sources et des conditions aux limites, et $mathcal{c}$ est un op\u00e9rateur d&rsquo;observation qui extrait des mesures \u00e0 des endroits ou \u00e0 des moments sp\u00e9cifiques.<\/p>\n<p>Le probl\u00e8me inverse inverse cette relation. Vous recevez des donn\u00e9es bruyantes $y^delta$ et vous souhaitez trouver les param\u00e8tres $theta$ qui l&rsquo;ont produit&nbsp;:<\/p>\n<p>$$y^delta = mathcal{g}(theta^dagger) + eta, qquad eta sim mathcal{n}(0, gamma),$$<\/p>\n<p>O\u00f9 $mathcal{g}$ est l&rsquo;op\u00e9rateur d&rsquo;observation qui applique le mod\u00e8le avant, la carte d&rsquo;observation, $theta^dagger$ est le vrai param\u00e8tre et $eta$ repr\u00e9sente le bruit de mesure.<\/p>\n<p>La question fondamentale est <strong>bien pos\u00e9e<\/strong>. Hadamar&rsquo;d Well-posedness n\u00e9cessite trois propri\u00e9t\u00e9s : l&rsquo;existence d&rsquo;une solution, l&rsquo;unicit\u00e9 et la d\u00e9pendance continue aux donn\u00e9es. Les probl\u00e8mes inverses violent souvent la troisi\u00e8me propri\u00e9t\u00e9. Si vous perturbez vos mesures d&rsquo;une petite quantit\u00e9 de $delta$, la variation correspondante de vos param\u00e8tres estim\u00e9s peut exploser. C&rsquo;est la caract\u00e9ristique d&rsquo;un probl\u00e8me mal pos\u00e9.<\/p>\n<p><strong>Conseil de pro&nbsp;:<\/strong> Pensez \u00e0 la mauvaise pose comme \u00e0 l&rsquo;expression math\u00e9matique de la \u00ab&nbsp;perte d&rsquo;informations&nbsp;\u00bb. Lorsque vous observez une distribution de temp\u00e9rature, vous avez perdu des informations sur l&rsquo;\u00e9tat initial, les conditions aux limites ou les propri\u00e9t\u00e9s du mat\u00e9riau. La reconstruction de ces quantit\u00e9s cach\u00e9es est math\u00e9matiquement \u00e9quivalente \u00e0 une dur\u00e9e de fonctionnement inverse, ce qui amplifie tout bruit pr\u00e9sent.<\/p>\n<h3>Pourquoi les probl\u00e8mes inverses de PDE sont-ils difficiles<\/h3>\n<p>Lorsque votre mod\u00e8le avanc\u00e9 est un PDE, la situation est plus limit\u00e9e que dans les simples probl\u00e8mes inverses comme la d\u00e9convolution. L&rsquo;op\u00e9rateur de transfert $mathcal{g}$ est g\u00e9n\u00e9ralement un op\u00e9rateur compact sur des espaces de fonctions de dimension infinie, ce qui signifie qu&rsquo;il a des valeurs propres qui se d\u00e9gradent \u00e0 z\u00e9ro. Cette d\u00e9croissance est exactement ce qui rend le probl\u00e8me mal pos\u00e9 &#8211; de petites valeurs singuli\u00e8res signifient que le bruit dans ces directions est amplifi\u00e9 sans \u00eatre li\u00e9.<\/p>\n<p>Cela distingue les probl\u00e8mes inverses induits par la PDE de l&rsquo;estimation statistique standard. Vos param\u00e8tres vivent dans l&rsquo;espace des fonctions (champs variables dans l&rsquo;espace), et non dans $mathbb{r}^n$, et vos informations pr\u00e9alables \u00e0 leur sujet doivent refl\u00e9ter cette structure. Le domaine de <strong>l&rsquo;inversion bay\u00e9sienne dans l&rsquo;espace des fonctions<\/strong> &#8211; lanc\u00e9 par Franka (1970), Mandelbaum (1984) et formalis\u00e9 par Lassas et Siltanen (2004) &#8211; fournit le cadre rigoureux pour g\u00e9rer cela.<\/p>\n<p>L&rsquo;id\u00e9e cl\u00e9 de l&rsquo;inversion bay\u00e9sienne de l&rsquo;espace fonction est que vous devez formuler vos mesures ant\u00e9rieures et post\u00e9rieures sur des espaces de dimension infinie, puis les discr\u00e9tiser de mani\u00e8re coh\u00e9rente. Si vous discr\u00e9ditez d&rsquo;abord, puis faites des Bayes, votre post\u00e9rieur peut d\u00e9pendre du maillage &#8211; un signe que vous n&rsquo;avez pas respect\u00e9 la nature continue du probl\u00e8me.<\/p>\n<p>Voir aussi <a href=\"https:\/\/matforge.org\/verification-vs-validation-in-scientific-simulations-a-practical-guide\/\">V\u00e9rification vs validation dans les simulations scientifiques<\/a> pour le contexte de la relation entre l&rsquo;estimation des param\u00e8tres et le pipeline V&amp;v plus large, et <a href=\"https:\/\/matforge.org\/uncertainty-quantification-sensitivity-analysis-scientific-simulation\/\">Quantification d&rsquo;incertitude et analyse de sensibilit\u00e9 dans la simulation scientifique<\/a> pour le sujet compl\u00e9mentaire de Propagation de l&rsquo;incertitude des param\u00e8tres \u00e0 travers des mod\u00e8les avanc\u00e9s.<\/p>\n<h2>Trois strat\u00e9gies de discr\u00e9tisation<\/h2>\n<p>Lorsque vous impl\u00e9mentez num\u00e9riquement un probl\u00e8me inverse, l&rsquo;ordre dans lequel vous discr\u00e9ditez les choses fondamentalement. Il existe trois strat\u00e9gies \u00e9tablies, chacune avec des compromis diff\u00e9rents entre la propret\u00e9 th\u00e9orique et la complexit\u00e9 pratique.<\/p>\n<table>\n<thead>\n<tr>\n<th>Strat\u00e9gie<\/th>\n<th>Pr\u00e9nom<\/th>\n<th>ce qu&rsquo;il fait<\/th>\n<th>Pros<\/th>\n<th>Les inconv\u00e9nients<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td><strong>DTI<\/strong><\/td>\n<td>Discr\u00e9tiser puis informer<\/td>\n<td>Discr\u00e9tisez d&rsquo;abord le mod\u00e8le vers l&rsquo;avant, puis choisissez la discr\u00e9tisation pour minimiser le probl\u00e8me inverse<\/td>\n<td>simple \u00e0 mettre en \u0153uvre; Utilise des solveurs avanc\u00e9s standard<\/td>\n<td>La solution peut d\u00e9pendre du maillage ; Pas de discr\u00e9tisation invariant<\/td>\n<\/tr>\n<tr>\n<td><strong>CTI<\/strong><\/td>\n<td>continu puis informer<\/td>\n<td>Formuler le probl\u00e8me inverse complet (y compris la r\u00e9gularisation) dans l&rsquo;espace des fonctions continues, puis discr\u00e9tiser<\/td>\n<td>discr\u00e9tisation invariante&nbsp;; th\u00e9oriquement propre<\/td>\n<td>N\u00e9cessite un choix prudent d&rsquo;espaces discrets qui respectent la formulation continue<\/td>\n<\/tr>\n<tr>\n<td><strong>ITD<\/strong><\/td>\n<td>informer puis discr\u00e9tionner<\/td>\n<td>Reformuler le probl\u00e8me continu pour am\u00e9liorer la bonne position avant la discr\u00e9tisation<\/td>\n<td>le plus flexible; Peut utiliser diff\u00e9rentes discr\u00e9tisations<\/td>\n<td>le plus complexe \u00e0 d\u00e9river; N\u00e9cessite une compr\u00e9hension math\u00e9matique approfondie<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p><strong>DTI (discret-puis-informer)<\/strong> est le plus courant dans la pratique. Vous prenez votre solveur PDE standard, discr\u00e9tisez le mod\u00e8le avanc\u00e9 sur un maillage, puis r\u00e9solvez le probl\u00e8me inverse discret r\u00e9sultant avec des m\u00e9thodes de r\u00e9gularisation standard. Ceci est simple mais a un co\u00fbt cach\u00e9 : votre solution d\u00e9pendra de la r\u00e9solution du maillage. Si vous affinez le maillage, votre solution r\u00e9gularis\u00e9e peut changer consid\u00e9rablement. Ceci est th\u00e9oriquement insatisfaisant et pratiquement risqu\u00e9.<\/p>\n<p><strong>CTI (continu-alors-informer)<\/strong> inverse la commande. Vous formulez l&rsquo;int\u00e9gralit\u00e9 du probl\u00e8me inverse &#8211; y compris les distributions, la probabilit\u00e9 et la r\u00e9gularisation ant\u00e9rieures &#8211; dans le cadre de dimensions infinies. Ensuite, vous discr\u00e9ditez r\u00e9guli\u00e8rement. Par exemple, vous pouvez placer un processus gaussien ant\u00e9rieur sur l&rsquo;espace des param\u00e8tres de dimension infinie, sp\u00e9cifier une probabilit\u00e9 sur l&rsquo;espace d&rsquo;observation et d\u00e9river l&rsquo;espace de fonction. Ce n&rsquo;est qu&rsquo;alors que vous discr\u00e9ditez le calcul. L&rsquo;avantage est que votre post\u00e9rieur ne d\u00e9pend pas d&rsquo;un maillage arbitraire &#8211; il refl\u00e8te le probl\u00e8me du continuum.<\/p>\n<p>Les travaux fondateurs de Lassas, Saksman et Siltanen (2009) sur l&rsquo;inversion bay\u00e9sienne invariante de la discr\u00e9tisation ont \u00e9tabli que les approches CTI donnent des mesures post\u00e9rieures qui convergent vers une limite ind\u00e9pendante du maillage. Leur cadre utilise des ant\u00e9c\u00e9dents d&rsquo;espace besov qui codent pour des connaissances pr\u00e9alables sur la r\u00e9gularit\u00e9, et cela montre que tant que vos espaces discrets se rapprochent des espaces continus, vos estimations post\u00e9rieures convergent.<\/p>\n<p><strong>ITD (inform-alors-discretiser)<\/strong> est le plus sophistiqu\u00e9 mais aussi le plus flexible. Ici, vous reformulez le probl\u00e8me lui-m\u00eame &#8211; peut-\u00eatre en modifiant l&rsquo;op\u00e9rateur avanc\u00e9, en modifiant les conditions aux limites ou en ajoutant des contraintes auxiliaires &#8211; pour am\u00e9liorer sa bonne pose avant de discr\u00e9tiser. Par exemple, vous pouvez remplacer un PDE du second ordre par un syst\u00e8me de premier ordre (formulaire Redheffer-Wign), ce qui convient mieux \u00e0 certains algorithmes d&rsquo;inversion. Cette strat\u00e9gie est moins couramment enseign\u00e9e dans les manuels scolaires mais appara\u00eet fr\u00e9quemment dans l&rsquo;informatique scientifique moderne.<\/p>\n<p><strong>\u26a0\ufe0f Erreur courante&nbsp;:<\/strong> Utiliser DTI et supposer que votre solution converge au fur et \u00e0 mesure que vous affinez le maillage. Pour les probl\u00e8mes mal pos\u00e9s, affiner le maillage sans resserrer la r\u00e9gularisation finira par diverger &#8211; votre solution oscillera de plus en plus autour des donn\u00e9es. Vous devez montrer que votre s\u00e9quence r\u00e9gularis\u00e9e converge comme $delta to 0$ et le param\u00e8tre de r\u00e9gularisation $alpha to 0$ simultan\u00e9ment.<\/p>\n<h2>R\u00e9gularisation : apprivoiser les probl\u00e8mes mal pos\u00e9s<\/h2>\n<p>L&rsquo;approche la plus courante pour r\u00e9soudre un probl\u00e8me mal pos\u00e9 est la <strong> r\u00e9gularisation de Tikhonov<\/strong>. Au lieu de r\u00e9soudre $AU = F$ directement, vous r\u00e9solvez un probl\u00e8me modifi\u00e9 qui p\u00e9nalise les solutions \u00ab\u00a0complexes\u00a0\u00bb&nbsp;:<\/p>\n<p>$$min_{u} |au &#8211; f|_{gamma}^2 + alpha |lu|^2, $$<\/p>\n<p>Lorsque $L$ est un op\u00e9rateur de r\u00e9gularisation (souvent une approximation discr\u00e8te du gradient ou du laplacien), $alpha$ est le param\u00e8tre de r\u00e9gularisation et $gamma$ est la covariance du bruit. Le premier terme est le <strong>Data Misfit<\/strong> (\u00e0 quel point votre mod\u00e8le explique les observations). Le deuxi\u00e8me terme est la <strong>p\u00e9nalit\u00e9 de r\u00e9gularisation<\/strong> (\u00e0 quel point votre solution est \u00ab\u00a0lisse\u00a0\u00bb ou \u00ab\u00a0simple\u00a0\u00bb).<\/p>\n<p>Le param\u00e8tre de r\u00e9gularisation $alpha$ est le bouton critique. Trop gros et vous \u00eates trop lisse &#8211; votre solution est proche de l&rsquo;ancien mais ignore les donn\u00e9es. Trop petit et vous sous-r\u00e9gularisez, vous adaptez le bruit et obtenez des solutions instables. Trouver la bonne valeur est lui-m\u00eame un probl\u00e8me inverse.<\/p>\n<h3>La courbe en L<\/h3>\n<p>La courbe en L est l&rsquo;heuristique la plus utilis\u00e9e pour choisir $alpha$. Vous tracez le journal des donn\u00e9es inadapt\u00e9es $|au &#8211; f|$ par rapport au journal de la norme de solution r\u00e9gularis\u00e9e $|LU|$ comme $alpha$ varie. La courbe r\u00e9sultante a g\u00e9n\u00e9ralement une forme en \u00ab\u00a0L\u00a0\u00bb&nbsp;: un segment vertical o\u00f9 la r\u00e9gularisation domine, un segment horizontal o\u00f9 les donn\u00e9es sont domin\u00e9es et une r\u00e9gion de coin o\u00f9 les deux s&rsquo;\u00e9quilibrent.<\/p>\n<p><strong>Conseil de pro&nbsp;:<\/strong> Le coin de la courbe en L est g\u00e9n\u00e9ralement l&rsquo;endroit o\u00f9 $alpha$ devrait s&rsquo;asseoir, mais pas toujours. Pour les probl\u00e8mes de bruit corr\u00e9l\u00e9 (par exemple, des erreurs de mesure dans l&rsquo;espacement lisse), vous voudrez peut-\u00eatre vous d\u00e9placer l\u00e9g\u00e8rement vers le segment horizontal &#8211; laisser la solution \u00eatre l\u00e9g\u00e8rement plus rugueuse est souvent meilleure que la lissage excessive.<\/p>\n<p>La courbe en L est facile \u00e0 calculer pour les probl\u00e8mes \u00e0 petite \u00e9chelle, mais devient co\u00fbteuse pour les probl\u00e8mes inverses de PDE \u00e0 grande \u00e9chelle. Chaque point de la courbe n\u00e9cessite la r\u00e9solution du probl\u00e8me d&rsquo;avance avec un param\u00e8tre de r\u00e9gularisation diff\u00e9rent. Avec des centaines de param\u00e8tres, ce n&rsquo;est pas pratique.<\/p>\n<h3>Le principe de divergence<\/h3>\n<p>Une approche plus th\u00e9oriquement fond\u00e9e est le <strong>principe de divergence<\/strong> (Moroz, 1968). Si vous connaissez ou pouvez estimer le niveau de bruit $delta = |eta|$, le principe de divergence s\u00e9lectionne $alpha$ tel que&nbsp;:<\/p>\n<p>$$|au^alpha &#8211; f| = eta delta, quad eta &gt; 1.$$<\/p>\n<p>Le facteur de s\u00e9curit\u00e9 $eta &gt; 1&nbsp;$ emp\u00eache le surajustement&nbsp;: vous arr\u00eatez de vous installer d\u00e8s que le r\u00e9sidu atteint le niveau de bruit estim\u00e9. Tout ce qui est au-del\u00e0, c&rsquo;est un bruit appropri\u00e9, pas un signal. Le principe est facile \u00e0 mettre en \u0153uvre &#8211; vous r\u00e9solvez pour $alpha$ par la m\u00e9thode de bisection ou de Newton &#8211; et il a des propri\u00e9t\u00e9s de convergence prouvables.<\/p>\n<p>Voir <a href=\"https:\/\/matforge.org\/time-integration-methods-for-pde-solvers-explicit-vs-implicit-schemes\/\">M\u00e9thodes d&rsquo;int\u00e9gration temporelle pour les solveurs PDE<\/a> pour le contexte de la fa\u00e7on dont la stabilit\u00e9 num\u00e9rique est li\u00e9e aux choix de r\u00e9gularisation, et <a href=\"https:\/\/matforge.org\/stiff-problems-and-stiff-solvers\/\">Probl\u00e8mes raides et solveurs rigides<\/a> lorsque votre syst\u00e8me r\u00e9gularis\u00e9 pr\u00e9sente une rigidit\u00e9.<\/p>\n<h2>La m\u00e9thode adjointe : calculer efficacement les gradients<\/h2>\n<p>Supposons que votre mod\u00e8le de transfert associe 1&nbsp;000&nbsp;param\u00e8tres de mat\u00e9riaux $theta_1, ldots, theta_{1000}$ aux observables. Vous souhaitez minimiser une fonction d&rsquo;inad\u00e9quation &#8211; peut-\u00eatre la somme des diff\u00e9rences entre les donn\u00e9es observ\u00e9es et les donn\u00e9es pr\u00e9dites &#8211; et vous avez besoin de gradients $partial f \/ partial theta_i$ pour chaque $i$.<\/p>\n<p>Une approche na\u00efve utilise des diff\u00e9rences finies&nbsp;: perturber $theta_i$ par $epsilon$, r\u00e9soudre \u00e0 nouveau le probl\u00e8me de l&rsquo;avenir et estimer le gradient. C&rsquo;est 1&nbsp;000&nbsp;r\u00e9solutions vers l&rsquo;avant par \u00e9valuation de gradient. Pour un solveur PDE qui prend des minutes par r\u00e9solution, ce n&rsquo;est que pour une \u00e9tape de d\u00e9grad\u00e9.<\/p>\n<p>La <strong>m\u00e9thode adjointe<\/strong> r\u00e9sout cela en deux balayages quel que soit le nombre de param\u00e8tres. Il exploite le fait que le gradient d&rsquo;une fonction de perte scalaire par rapport aux param\u00e8tres peut \u00eatre calcul\u00e9 en r\u00e9solvant une PDE suppl\u00e9mentaire &#8211; l&rsquo;\u00e9quation adjointe.<\/p>\n<p>La m\u00e9thode adjointe remonte aux travaux de Pironneau (1974) et Kontoleadis et al. (2013) et a \u00e9t\u00e9 formalis\u00e9 pour une optimisation limit\u00e9e par la PDE par Gunther et al. (2013) dans le contexte de Dolfin-Adjoint. L&rsquo;id\u00e9e de base :<\/p>\n<ol>\n<li>R\u00e9solvez le probl\u00e8me de transfert $a(theta)u = f$ pour obtenir l&rsquo;\u00e9tat $u$.<\/li>\n<li>R\u00e9solvez l&rsquo;\u00e9quation adjointe $a(theta)^* p = frac{partial r}{partial u}$ pour obtenir l&rsquo;\u00e9tat adjoint $p$, o\u00f9 $r$ est votre fonction de co\u00fbt et $a^*$ est l&rsquo;op\u00e9rateur adjoint.<\/li>\n<li>Calculez le gradient $nabla_theta f = frac{partial f}{partial theta} + text{terms impliquant } p text{ et } u$.<\/li>\n<\/ol>\n<p>L&rsquo;\u00e9quation adjointe est essentiellement le mod\u00e8le avanc\u00e9 ex\u00e9cut\u00e9 en arri\u00e8re dans le temps (si la PDE d\u00e9pend du temps) avec le gradient de la fonction de co\u00fbt comme terme source. Pour une PDE parabolique, vous r\u00e9solvez de la derni\u00e8re fois \u00e0 l&rsquo;heure initiale, en r\u00e9cup\u00e9rant les contributions en cours de route.<\/p>\n<p>Le co\u00fbt de calcul de la m\u00e9thode adjointe est essentiellement une solution directe suppl\u00e9mentaire, pas une par param\u00e8tre. Cela le rend pratique pour des milliers de param\u00e8tres, o\u00f9 des diff\u00e9rences finies seraient impossibles.<\/p>\n<p>Givoli (2021) fournit un excellent didacticiel p\u00e9dagogique sur la m\u00e9thode Adjoint pour les probl\u00e8mes d&rsquo;\u00e9l\u00e9ments finis, montrant comment l&rsquo;adjoint discret est d\u00e9riv\u00e9 de la formulation des \u00e9l\u00e9ments finis et comment il se rapporte \u00e0 l&rsquo;adjoint continu. L&rsquo;id\u00e9e cl\u00e9 est que l&rsquo;adjoint discret d&rsquo;un mod\u00e8le discret vers l&rsquo;avant n&rsquo;est pas n\u00e9cessairement la discr\u00e9tisation de l&rsquo;adjoint continu &#8211; c&rsquo;est l\u00e0 que les strat\u00e9gies de discr\u00e9tisation de la section 2 redeviennent pertinentes.<\/p>\n<p><strong>Pr\u00e8s du pro&nbsp;:<\/strong> Si vous utilisez Fenics pour votre mod\u00e8le avant, Dolfin-Adjoint est le choix canonique pour la d\u00e9rivation adjointe automatique. Il construit automatiquement l&rsquo;adjoint discret \u00e0 partir de votre code avant en diff\u00e9renciant le syst\u00e8me assembl\u00e9. La configuration est simple &#8211; enveloppez votre r\u00e9solution de transfert avec <code>DOLFIN_Adjoint()<\/code>, sp\u00e9cifiez votre fonction de co\u00fbt et appelez <code>compute_gradient()<\/code> &#8211; et elle g\u00e8re la d\u00e9rivation adjointe automatiquement.<\/p>\n<p>Pour une introduction pratique, le didacticiel adjoint de Stanford Ambad (Bradi\u0107 et al.) parcourt la d\u00e9rivation des \u00e9quations adjointes pour les probl\u00e8mes de Navier-Stokes et d&rsquo;advection-diffusion, avec des formulations d&rsquo;\u00e9l\u00e9ments finis clairs. C&rsquo;est une excellente r\u00e9f\u00e9rence pratique.<\/p>\n<h2>Inversion bay\u00e9sienne&nbsp;: estimation des param\u00e8tres de l&rsquo;incertitude<\/h2>\n<p>Les estimations ponctuelles, qu&rsquo;elles soient issues de la r\u00e9gularisation Tikhonov ou de l&rsquo;optimisation bas\u00e9e sur les associations, vous donnent un \u00ab\u00a0meilleur\u00a0\u00bb ensemble de param\u00e8tres. Mais ils ne vous disent pas \u00e0 quel point vous devriez \u00eatre confiant. Dans de nombreuses applications, vous avez besoin de la distribution compl\u00e8te de l&rsquo;incertitude&nbsp;: quel est l&rsquo;intervalle de 95&nbsp;% sur la perm\u00e9abilit\u00e9&nbsp;? Quelle est la probabilit\u00e9 que le v\u00e9ritable param\u00e8tre se situe en dehors de la plage estim\u00e9e&nbsp;?<\/p>\n<p>L&rsquo;inversion bay\u00e9sienne fournit cela en traitant les param\u00e8tres comme des variables al\u00e9atoires. Vous sp\u00e9cifiez une distribution ant\u00e9rieure $mu_0$ encodant vos connaissances pr\u00e9alables sur les param\u00e8tres, puis calculez la distribution post\u00e9rieure $mu^y$ \u00e0 l&rsquo;aide de la r\u00e8gle de Bayes&nbsp;:<\/p>\n<p>$$mu^y(theta) propto expleft(-frac{1}{2} | y &#8211; mathcal{g}(theta) |_{gamma}^2right) mu_0(theta). $$<\/p>\n<p>Le terme exponentiel est la probabilit\u00e9 (la probabilit\u00e9 que les donn\u00e9es re\u00e7oivent les param\u00e8tres), et $mu_0$ est le pr\u00e9c\u00e9dent. Le post\u00e9rieur combine les deux : il \u00e9quilibre les donn\u00e9es par rapport aux connaissances ant\u00e9rieures.<\/p>\n<h3>Le d\u00e9fi : MCMC<\/h3>\n<p>Le calcul du post\u00e9rieur n&rsquo;est traitable que dans des cas simples lin\u00e9aires gaussiens. Pour les PDE non lin\u00e9aires, vous avez besoin des m\u00e9thodes de la cha\u00eene de Markov Monte Carlo (MCMC) pour \u00e9chantillonner \u00e0 partir de $mu^y$. Le probl\u00e8me est que chaque proposition MCMC n\u00e9cessite de r\u00e9soudre le mod\u00e8le \u00e0 terme. Avec 10&nbsp;000&nbsp;propositions et une r\u00e9solution de PDE qui prend 5&nbsp;minutes, vous envisagez des jours ou des semaines de calcul.<\/p>\n<p>C&rsquo;est pourquoi les mod\u00e8les de substitution sont essentiels dans les probl\u00e8mes inverses bay\u00e9siens. Au lieu de r\u00e9soudre le PDE \u00e0 chaque \u00e9tape du MCMC, vous cr\u00e9ez une approximation rapide de la carte avant. Les substituts courants comprennent :<\/p>\n<ul>\n<li><strong>R\u00e9gression du processus gaussien (GP)<\/strong> &#8211; fournit \u00e0 la fois des pr\u00e9dictions et des estimations d&rsquo;incertitude. Efficace pour les espaces de param\u00e8tres de faible dimension mais co\u00fbteux en termes de calcul pour les param\u00e8tres de haute dimension ($mathcal{o}(n^3)$ pour les points d&rsquo;entra\u00eenement $n$).<\/li>\n<li><strong>Substituts du r\u00e9seau de neurones<\/strong> \u2014 \u00c9valuation plus rapide mais plus difficile \u00e0 quantifier l&rsquo;incertitude. Le cadre de Deepgala (Jimenez-Beltran et al., 2024) aborde ce probl\u00e8me en combinant la m\u00e9thode Deep Galerkin avec l&rsquo;approximation de Laplace, fournissant des estimations d&rsquo;incertitude calibr\u00e9es \u00e0 la derni\u00e8re couche du r\u00e9seau.<\/li>\n<\/ul>\n<h3>Discr\u00e9tisation-inversion invariante<\/h3>\n<p>Un aper\u00e7u critique de l&rsquo;inversion bay\u00e9sienne de l&rsquo;espace fonction (Lassas et al., 2009) est que votre post\u00e9rieur ne doit pas d\u00e9pendre du maillage. Dans l&rsquo;approche DTI, vous pouvez placer un a priori sur un vecteur de param\u00e8tres discr\u00e9tis\u00e9, puis affiner le maillage et d\u00e9couvrir que votre post\u00e9rieur a chang\u00e9. C&rsquo;est parce que le prieur lui-m\u00eame d\u00e9pend de la discr\u00e9tisation.<\/p>\n<p>L&rsquo;approche CTI \u00e9vite cela en pla\u00e7ant des priors sur des espaces de fonctions de dimension infinie (g\u00e9n\u00e9ralement des processus gaussiens ou des espaces Besov), en sp\u00e9cifiant la probabilit\u00e9 sur l&rsquo;espace d&rsquo;observation et en discr\u00e9tisant la mesure post\u00e9rieure de mani\u00e8re coh\u00e9rente. Au fur et \u00e0 mesure que le maillage se raffine, le post\u00e9rieur discret converge vers une limite ind\u00e9pendante du maillage.<\/p>\n<p>Pour une pr\u00e9sentation pratique des probl\u00e8mes inverses bay\u00e9siens dans l&rsquo;espace de fonction, le notebook de Dan MacKinlay fournit une introduction accessible qui relie la th\u00e9orie et la mise en \u0153uvre, montrant comment la discr\u00e9tisation des mesures et la discr\u00e9tisation informatique interagissent dans le cadre bay\u00e9sien.<\/p>\n<h2>Impl\u00e9mentation de Python&nbsp;: TRIPS-PY et Dolfin-Adjoint<\/h2>\n<p>Deux packages Python rendent accessibles les probl\u00e8mes inverses pratiques. <strong>Trips-py<\/strong> (Pasha et al., 2024) se concentre sur les probl\u00e8mes inverses discrets lin\u00e9aires, tandis que <strong>Dolfin-adjoint<\/strong> g\u00e8re l&rsquo;optimisation contrainte par PDE avec une d\u00e9rivation adjointe automatique.<\/p>\n<h3>TRIPS-PY&nbsp;: r\u00e9gularisation pour les probl\u00e8mes inverses lin\u00e9aires<\/h3>\n<p>TRIPS-PY est con\u00e7u pour les probl\u00e8mes inverses lin\u00e9aires de la forme $AX = B$. Il fournit :<\/p>\n<ul>\n<li>M\u00e9thodes directes : TSVD, Tikhonov, GSVD tronqu\u00e9<\/li>\n<li>M\u00e9thodes it\u00e9ratives : GMRES, LSQR, CGLS, variantes hybrides<\/li>\n<li>S\u00e9lection des param\u00e8tres de r\u00e9gularisation : L-courbe, principe de divergence, GCV<\/li>\n<li>Probl\u00e8mes de test : d\u00e9gradation 1D\/2D, tomographie<\/li>\n<\/ul>\n<pre><code class=\"language-python\">from trips_py import Deblurring1D, TSVD, Tikhonov, GCV\n\n# Setup\ndeblurr = Deblurring1D()\nnx = 200\nx_true = deblurr.gen_xtrue(nx, test='curve2')\nA = deblurr.forward_Op_1D(parameter=30, nx=nx)\nb = deblurr.gen_data(x_true)\nb_noisy, delta = deblurr.add_noise(b, 'Gaussian', noise_level=0.01)\n\n# Solve with Tikhonov regularization\nsolver = Tikhonov()\nx_reg = solver.solve(A, b_noisy, regularization_parameter=0.01)\n\n# Or use GCV to find the regularization parameter automatically\nsolver = Tikhonov(regularization='auto')\nsolver.set_reg_param_method('GCV')\nx_reg = solver.solve(A, b_noisy)\n<\/code><\/pre>\n<p>L&rsquo;option <code>CommitCrime<\/code> dans TRIPS-PY vaut la peine d&rsquo;\u00eatre comprise. Par d\u00e9faut, TRIPS-PY \u00e9vite le d\u00e9lit inverse en utilisant des op\u00e9rateurs avanc\u00e9s incompatibles pour la g\u00e9n\u00e9ration et la solution des donn\u00e9es. Il s&rsquo;agit d&rsquo;une sauvegarde pratique&nbsp;: si votre op\u00e9rateur avanc\u00e9 pour r\u00e9soudre correspond exactement \u00e0 celui utilis\u00e9 pour g\u00e9n\u00e9rer les donn\u00e9es, votre r\u00e9gularisation peut sembler plus efficace qu&rsquo;elle ne l&rsquo;est r\u00e9ellement. D\u00e9finissez <code>CommitCrime=True<\/code> uniquement si vous souhaitez sp\u00e9cifiquement \u00e9tudier le ph\u00e9nom\u00e8ne de la criminalit\u00e9 inverse.<\/p>\n<h3>Dolfin-Adjoint : Adjoint automatique pour les syst\u00e8mes PDE<\/h3>\n<p>Dolfin-Adjoint s&rsquo;int\u00e8gre \u00e0 FENICS pour fournir une d\u00e9rivation adjointe automatique pour une optimisation limit\u00e9e par PDE&nbsp;:<\/p>\n<pre><code class=\"language-python\">from fenics import *\nfrom dolfin_adjoint import *\n\n# Define forward model\nmesh = RectangleMesh(50, 50, 1.0, 1.0)\nV = FunctionSpace(mesh, \"Lagrange\", 1)\nu = TrialFunction(V)\nv = TestFunction(V)\nalpha = Function(V)  # Unknown parameter field\n\n# Forward PDE: -\u2207\u00b7(\u03b1\u2207u) = f\nf = Constant(1.0)\nsolve(Inner(grad(u), grad(v))*dx == f*v*dx, alpha, \n      adjoint=adj_solve(Inner(grad(u), grad(v))*dx == f*v*dx))\n\n# Cost function\nJ = 0.5 * sum(v*v for v in V.sub(0).split())\n\n# Compute gradient via adjoint method\ncompute_gradient(J, alpha)\n<\/code><\/pre>\n<p>La fonction <code>adj_solve<\/code> diff\u00e9rencie automatiquement la r\u00e9solution directe, g\u00e9n\u00e9rant l&rsquo;\u00e9quation adjointe en interne. Vous n&rsquo;avez pas besoin de d\u00e9river ou d&rsquo;impl\u00e9menter l&rsquo;adjoint manuellement &#8211; Dolfin-Adjoint le g\u00e8re. Ceci est particuli\u00e8rement utile lorsque votre PDE a des conditions aux limites complexes ou des op\u00e9rateurs non lin\u00e9aires.<\/p>\n<p>Pour les probl\u00e8mes o\u00f9 vous avez besoin d&rsquo;une quantification de l&rsquo;incertitude ainsi que de l&rsquo;estimation des param\u00e8tres, la combinaison de Dolfin-Adjoint (pour un calcul de gradient efficace) avec des \u00e9chantillonneurs bay\u00e9siens (comme le ma\u00eetre de c\u00e9r\u00e9monie ou le PYMC) fournit un cadre puissant. Les informations de gradient de Dolfin-Adjoint acc\u00e9l\u00e8rent les m\u00e9thodes MCMC bas\u00e9es sur le gradient comme l&rsquo;\u00e9chantillonneur No-U-Turn (NUTS).<\/p>\n<h2>Le \u00ab\u00a0crime inverse\u00a0\u00bb&nbsp;: pourquoi vos donn\u00e9es synth\u00e9tiques peuvent vous mentir<\/h2>\n<p>Le crime inverse est un \u00e9cueil notoire dans la recherche sur les probl\u00e8mes inverses. Cela se produit lorsque l&rsquo;op\u00e9rateur avanc\u00e9 utilis\u00e9 pour g\u00e9n\u00e9rer des donn\u00e9es de test synth\u00e9tiques est identique \u00e0 celui utilis\u00e9 pour r\u00e9soudre le probl\u00e8me inverse. Le r\u00e9sultat ? Votre r\u00e9gularisation semble consid\u00e9rablement plus efficace qu&rsquo;elle ne l&rsquo;est en r\u00e9alit\u00e9.<\/p>\n<p>Voici pourquoi : Les m\u00e9thodes de r\u00e9gularisation telles que Tikhonov p\u00e9nalisent implicitement certaines fonctionnalit\u00e9s de la solution. Si vos donn\u00e9es synth\u00e9tiques ont \u00e9t\u00e9 g\u00e9n\u00e9r\u00e9es avec un op\u00e9rateur qui s&rsquo;aligne sur votre r\u00e9gularisation ant\u00e9rieure, vous r\u00e9cup\u00e9rerez le terrain sans effort, non pas parce que votre m\u00e9thode est bonne, mais parce que vous vous pr\u00e9parez \u00e0 r\u00e9ussir.<\/p>\n<p>La cons\u00e9quence est que les benchmarks publi\u00e9s bas\u00e9s sur des donn\u00e9es sur les crimes inverses peuvent \u00eatre trompeurs. Une m\u00e9thode qui permet d&rsquo;obtenir une pr\u00e9cision de 99&nbsp;% sur les donn\u00e9es de d\u00e9nonciation inverse peut chuter \u00e0 60&nbsp;% sur des donn\u00e9es du monde r\u00e9el o\u00f9 l&rsquo;op\u00e9rateur avanc\u00e9 est v\u00e9ritablement incompatible (en raison des diff\u00e9rences de discr\u00e9tisation, des simplifications de mod\u00e8les ou de la g\u00e9om\u00e9trie de mesure).<\/p>\n<p><strong>\u26a0\ufe0f Erreur courante&nbsp;:<\/strong> G\u00e9n\u00e9rer des donn\u00e9es de test avec le m\u00eame mod\u00e8le avanc\u00e9 que vous utilisez pour l&rsquo;inversion, puis pr\u00e9tendre que votre m\u00e9thode est \u00ab\u00a0robuste\u00a0\u00bb bas\u00e9e sur l&rsquo;excellente r\u00e9cup\u00e9ration. Il s&rsquo;agit du crime inverse &#8211; il gonfle les mesures de performance en exploitant l&rsquo;alignement structurel entre la g\u00e9n\u00e9ration de donn\u00e9es et l&rsquo;inversion.<\/p>\n<p>TRIPS-PY aborde cela par d\u00e9faut&nbsp;: sa classe <code>Deblurring1D<\/code> utilise des conditions aux limites diff\u00e9rentes pour la g\u00e9n\u00e9ration de donn\u00e9es par rapport \u00e0 la solution, en \u00e9vitant le crime inverse. Pour \u00e9tudier sp\u00e9cifiquement le crime inverse, vous devez d\u00e9finir explicitement <code>CommitCrime=True<\/code>. Cette protection par d\u00e9faut rend le TRIPS-PY particuli\u00e8rement utile pour un benchmarking honn\u00eate.<\/p>\n<p>Le fondement math\u00e9matique du crime inverse a \u00e9t\u00e9 clarifi\u00e9 par Kaipio et Sereno (2007), qui ont montr\u00e9 que le crime inverse peut \u00eatre quantifi\u00e9 comme l&rsquo;alignement entre les espaces nuls de l&rsquo;op\u00e9rateur avanc\u00e9 et de l&rsquo;op\u00e9rateur de r\u00e9gularisation. Lorsque ces espaces nuls s&rsquo;alignent, la r\u00e9gularisation devient artificiellement efficace. Quand ce n&rsquo;est pas le cas, la v\u00e9ritable difficult\u00e9 du probl\u00e8me inverse \u00e9merge.<\/p>\n<h2>CONNEXES: PINNs et apprentissage automatique pour les probl\u00e8mes inverses<\/h2>\n<p>L&rsquo;apprentissage automatique est entr\u00e9 dans l&rsquo;espace des probl\u00e8mes inverses de deux mani\u00e8res principales&nbsp;: les <strong>r\u00e9seaux de neurones inform\u00e9s par la physique (PINN)<\/strong> et les <strong>substituts de l&rsquo;op\u00e9rateur de neurones<\/strong>.<\/p>\n<p>Pinns (Raissi et al., 2019) int\u00e8grent directement la PDE dans la fonction de perte du r\u00e9seau neuronal. Le r\u00e9seau apprend \u00e0 satisfaire \u00e0 la fois les donn\u00e9es et la physique simultan\u00e9ment. Pour les probl\u00e8mes inverses, les PINN peuvent d\u00e9couvrir des param\u00e8tres inconnus en minimisant le r\u00e9sidu des \u00e9quations gouvernantes \u00e0 c\u00f4t\u00e9 des donn\u00e9es inadapt\u00e9es. La beaut\u00e9 est que vous n&rsquo;avez pas besoin de conna\u00eetre les param\u00e8tres pour configurer le r\u00e9seau &#8211; ils sont trait\u00e9s comme des constantes d&rsquo;apprentissage.<\/p>\n<p>Cependant, les PINN sont confront\u00e9s \u00e0 des d\u00e9fis&nbsp;:<\/p>\n<ul>\n<li><strong>Bias spectraux&nbsp;:<\/strong> Les r\u00e9seaux de neurones apprennent d&rsquo;abord les composants \u00e0 basse fr\u00e9quence, ce qui peut leur faire manquer les variations de param\u00e8tres \u00e0 \u00e9chelle fine.<\/li>\n<li><strong>\u00c9quilibrage des pertes&nbsp;:<\/strong>&nbsp;Diff\u00e9rents termes de la perte (PDE r\u00e9siduelle, conditions aux limites, donn\u00e9es inadapt\u00e9es) ont des \u00e9chelles diff\u00e9rentes. Obtenir le bon \u00e9quilibre n\u00e9cessite un r\u00e9glage ou une pond\u00e9ration adaptative.<\/li>\n<li><strong>Garanties de convergence&nbsp;:<\/strong> Contrairement \u00e0 la r\u00e9gularisation de Tikhonov, il n&rsquo;y a pas de r\u00e9sultats de convergence prouv\u00e9s pour les PINN dans la limite de bruit \u00e0 signal.<\/li>\n<\/ul>\n<p>Les substituts des op\u00e9rateurs de neurones (comme Deepgala) sont une autre approche \u00e9mergente. Au lieu d&rsquo;apprendre directement la carte de la solution, ils apprennent une approximation rapide du mod\u00e8le avanc\u00e9 qui peut \u00eatre \u00e9valu\u00e9 des millions de fois au cours de l&rsquo;\u00e9chantillonnage MCMC. Deepgala (Jimenez-Beltran et al., 2024) fournit un cadre concret&nbsp;: entra\u00eenez un substitut de r\u00e9seau de neurones avec la m\u00e9thode de Deep Galerkin, puis utilisez l&rsquo;approximation de Laplace pour quantifier l&rsquo;incertitude \u00e0 la derni\u00e8re couche. Le substitut al\u00e9atoire r\u00e9sultant permet des probl\u00e8mes inverses bay\u00e9siens \u00e9volutifs sans sacrifier la fiabilit\u00e9.<\/p>\n<p>Pour un contexte plus approfondi sur les PINN, consultez <a href=\"https:\/\/matforge.org\/physics-informed-neural-networks-pinns-for-scientific-simulations\/\">R\u00e9seaux de neurones \u00e0 base de physique (PINN) pour les simulations scientifiques<\/a>.<\/p>\n<h2>R\u00e9sum\u00e9 + \u00c9tapes suivantes<\/h2>\n<p>Les probl\u00e8mes inverses pour les mod\u00e8les de PDE se situent \u00e0 l&rsquo;intersection de trois disciplines&nbsp;: l&rsquo;analyse num\u00e9rique (comment les r\u00e9soudre efficacement), les math\u00e9matiques appliqu\u00e9es (comment garantir la convergence) et les statistiques (comment quantifier l&rsquo;incertitude). Le d\u00e9fi pratique est de choisir la bonne combinaison de m\u00e9thodes pour votre probl\u00e8me sp\u00e9cifique.<\/p>\n<p>Voici un workflow pratique :<\/p>\n<ol>\n<li><strong>Commencez avec un mod\u00e8le avanc\u00e9.<\/strong> Impl\u00e9mentez ou validez votre solveur PDE. Si vous ne l&rsquo;avez pas fait, consultez <a href=\"https:\/\/matforge.org\/verification-vs-validation-in-scientific-simulations-a-practical-guide\/\">V\u00e9rification vs validation dans les simulations scientifiques<\/a>.<\/li>\n<li><strong>Formulez le probl\u00e8me inverse.<\/strong> Sp\u00e9cifiez les param\u00e8tres que vous r\u00e9cup\u00e9rez, les donn\u00e9es dont vous disposez et le niveau de bruit auquel vous devez vous attendre.<\/li>\n<li><strong>Choisissez une strat\u00e9gie de discr\u00e9tisation.<\/strong> Le DTI est le plus simple&nbsp;; CTI donne l&rsquo;ind\u00e9pendance du maillage. Si vous avez besoin des deux, ITD offre le plus de flexibilit\u00e9.<\/li>\n<li><strong>Choisissez une m\u00e9thode de r\u00e9gularisation.<\/strong> Tikhonov avec le principe de la courbe en L ou de l&rsquo;\u00e9cart est le point de d\u00e9part standard. TRIPS-PY fournit des impl\u00e9mentations.<\/li>\n<li><strong>Calculez efficacement les gradients.<\/strong> Si vous avez de nombreux param\u00e8tres, utilisez la m\u00e9thode Adjoint. Dolfin-Adjoint g\u00e8re la d\u00e9rivation automatiquement.<\/li>\n<li><strong>Quantifier l&rsquo;incertitude.<\/strong> Pour les param\u00e8tres de grande dimension, consid\u00e9rez les substituts neuronaux comme DeepGala. Pour les dimensions inf\u00e9rieures, le MCMC avec un substitut de GP est efficace.<\/li>\n<li><strong>\u00c9vitez le crime inverse.<\/strong> V\u00e9rifiez toujours que votre op\u00e9rateur avanc\u00e9 pour la g\u00e9n\u00e9ration de donn\u00e9es diff\u00e8re de votre op\u00e9rateur d&rsquo;inversion, ou \u00e9tudiez explicitement le crime.<\/li>\n<\/ol>\n<p>Le champ \u00e9volue rapidement. Les approches d&rsquo;apprentissage approfondi compl\u00e8tent les m\u00e9thodes de r\u00e9gularisation traditionnelles, et les outils de diff\u00e9renciation automatique comme Dolfin-Adjoint rendent l&rsquo;inversion adjointe accessible aux praticiens qui ne souhaitent pas d\u00e9river les \u00e9quations adjointes manuellement. La cl\u00e9 est d&rsquo;ancrer votre choix dans les propri\u00e9t\u00e9s math\u00e9matiques de votre probl\u00e8me sp\u00e9cifique &#8211; savoir quand un probl\u00e8me est mal pos\u00e9, comment la r\u00e9gularisation l&rsquo;apprivoise et ce que la quantification de l&rsquo;incertitude vous dit sur vos param\u00e8tres.<\/p>\n<h2>Guides connexes<\/h2>\n<ul>\n<li><a href=\"https:\/\/matforge.org\/verification-vs-validation-in-scientific-simulations-a-practical-guide\/\">V\u00e9rification vs validation dans les simulations scientifiques<\/a> Cadre de validation plus large<\/li>\n<li><a href=\"https:\/\/matforge.org\/uncertainty-quantification-sensitivity-analysis-scientific-simulation\/\">Quantification de l&rsquo;incertitude et analyse de sensibilit\u00e9 dans la simulation scientifique<\/a> \u2014 Propagation de l&rsquo;incertitude des param\u00e8tres \u00e0 travers des mod\u00e8les avanc\u00e9s<\/li>\n<li><a href=\"https:\/\/matforge.org\/time-integration-methods-for-pde-solvers-explicit-vs-implicit-schemes\/\">M\u00e9thodes d&rsquo;int\u00e9gration de temps pour les solveurs PDE<\/a> \u2014 Comment le pas de temps num\u00e9rique affecte la pr\u00e9cision de la r\u00e9solution de transfert<\/li>\n<li><a href=\"https:\/\/matforge.org\/stiff-problems-and-stiff-solvers\/\">Probl\u00e8mes raides et solveurs rigides<\/a> &#8211; Lorsque la r\u00e9gularisation introduit la rigidit\u00e9 dans vos solutions avanc\u00e9es<\/li>\n<li><a href=\"https:\/\/matforge.org\/physics-informed-neural-networks-pinns-for-scientific-simulations\/\">R\u00e9seaux de neurones informatis\u00e9s (PINN) pour les simulations scientifiques<\/a> &#8211; ML Approches qui int\u00e8grent les PDE directement dans l&rsquo;apprentissage<\/li>\n<\/ul>\n","protected":false,"raw":"<p>Un probl\u00e8me inverse pose une question simple mais fondamentalement difficile&nbsp;: \u00e9tant donn\u00e9 les mesures ou les sorties de simulation, quels sont les param\u00e8tres cach\u00e9s qui les ont produits&nbsp;? Dans la mod\u00e9lisation directe, vous sp\u00e9cifiez les conditions initiales et aux limites, les propri\u00e9t\u00e9s des mat\u00e9riaux et les termes de la source, puis int\u00e9grez les \u00e9quations qui gouvernent pour pr\u00e9dire le comportement du syst\u00e8me. Dans un probl\u00e8me inverse, vous retournez le processus. Vous observez le r\u00e9sultat - un champ de temp\u00e9rature, un profil de pression, un d\u00e9placement - et essayez de r\u00e9cup\u00e9rer les entr\u00e9es inconnues qui l'ont pilot\u00e9.<\/p>\n<p>Il s'agit d'une estimation des param\u00e8tres pour les mod\u00e8les PDE&nbsp;: la machinerie math\u00e9matique pour transformer les mesures en estimations de param\u00e8tres et les outils de calcul qui le rendent pratique. Il appara\u00eet partout, de la g\u00e9ophysique (estimation de la perm\u00e9abilit\u00e9 du sous-sol \u00e0 partir des mesures de puits) \u00e0 la science des mat\u00e9riaux (r\u00e9cup\u00e9ration des coefficients de diffusion des champs de concentration observ\u00e9s) \u00e0 l'apprentissage automatique bas\u00e9 sur la physique (d\u00e9couverte des \u00e9quations r\u00e9gissant les donn\u00e9es).<\/p>\n<p>Le d\u00e9fi est que les probl\u00e8mes inverses sont presque toujours mal pos\u00e9s. De petites erreurs dans vos donn\u00e9es peuvent produire des estimations extr\u00eamement erron\u00e9es. Sans formulation math\u00e9matique minutieuse et r\u00e9gularisation num\u00e9rique, vos param\u00e8tres les mieux adapt\u00e9s peuvent \u00eatre compl\u00e8tement trompeurs.<\/p>\n<h2>Points \u00e0 retenir cl\u00e9s<\/h2>\n<ul>\n<li><strong>Chaque probl\u00e8me inverse commence par un mod\u00e8le avanc\u00e9.<\/strong> La carte param\u00e8tre-\u00e0-solution $y = mathcal{g}(theta)$ d\u00e9finit comment les param\u00e8tres $theta$ produisent des observables $y$. Les probl\u00e8mes inverses r\u00e9cup\u00e8rent $theta$ des mesures bruyantes.<\/li>\n<li><strong>La discr\u00e9tisation compte plus que vous ne le pensez.<\/strong> L'ordre dans lequel vous discr\u00e9ditez le mod\u00e8le avant, imposez une r\u00e9gularisation et r\u00e9solvez le probl\u00e8me inverse (DTI vs CTI vs ITD) d\u00e9termine si vos r\u00e9sultats d\u00e9pendent de votre maillage ou refl\u00e8tent la r\u00e9alit\u00e9 physique.<\/li>\n<li><strong>La r\u00e9gularisation apprivoise la mauvaise pose.<\/strong> La r\u00e9gularisation de Tikhonov, l'analyse de la courbe en L et le principe de divergence vous donnent des moyens pratiques de choisir les param\u00e8tres de r\u00e9gularisation sans surajustement.<\/li>\n<li><strong>La m\u00e9thode Adjoint calcule efficacement les gradients.<\/strong> Au lieu de calculer des approximations de diff\u00e9rences finies co\u00fbteuses pour chaque param\u00e8tre, les \u00e9quations adjointes r\u00e9solvent les informations de gradient dans un seul balayage vers l'arri\u00e8re, critique lorsque vous avez des milliers de param\u00e8tres.<\/li>\n<li><strong>L'inversion bay\u00e9sienne vous donne des distributions, pas seulement des estimations ponctuelles.<\/strong> La distribution post\u00e9rieure $Mu^y$ caract\u00e9rise la totalit\u00e9 de l'incertitude des param\u00e8tres conditionnel aux donn\u00e9es, et les formulations d'espace de fonction garantissent des r\u00e9sultats invariants de discr\u00e9tisation.<\/li>\n<\/ul>\n<h2>Qu'est-ce qu'un probl\u00e8me inverse ?<\/h2>\n<p>Chaque probl\u00e8me inverse associe un mod\u00e8le avanc\u00e9 \u00e0 un ensemble de donn\u00e9es et pose une question de reconstruction. Le mod\u00e8le avant est un objet math\u00e9matique qui mappe des param\u00e8tres sur des observables. Dans les contextes PDE, il s'agit g\u00e9n\u00e9ralement d'un op\u00e9rateur de solution&nbsp;: \u00e9tant donn\u00e9 un ensemble de propri\u00e9t\u00e9s de mat\u00e9riaux, de conditions aux limites ou de termes sources, r\u00e9solvez les \u00e9quations r\u00e9gissant et extrayez les quantit\u00e9s qui vous int\u00e9ressent.<\/p>\n<p>Pour un PDE lin\u00e9aire, le probl\u00e8me vers l'avant ressemble \u00e0<\/p>\n<p>$$AU = f, quad y = mathcal{c}(u),$$<\/p>\n<p>Lorsque $A$ est un op\u00e9rateur diff\u00e9rentiel encodant la physique (diffusion, advection, \u00e9lasticit\u00e9), $u$ est la variable d'\u00e9tat, $f$ contient des termes sources et des conditions aux limites, et $mathcal{c}$ est un op\u00e9rateur d'observation qui extrait des mesures \u00e0 des endroits ou \u00e0 des moments sp\u00e9cifiques.<\/p>\n<p>Le probl\u00e8me inverse inverse cette relation. Vous recevez des donn\u00e9es bruyantes $y^delta$ et vous souhaitez trouver les param\u00e8tres $theta$ qui l'ont produit&nbsp;:<\/p>\n<p>$$y^delta = mathcal{g}(theta^dagger) + eta, qquad eta sim mathcal{n}(0, gamma),$$<\/p>\n<p>O\u00f9 $mathcal{g}$ est l'op\u00e9rateur d'observation qui applique le mod\u00e8le avant, la carte d'observation, $theta^dagger$ est le vrai param\u00e8tre et $eta$ repr\u00e9sente le bruit de mesure.<\/p>\n<p>La question fondamentale est <strong>bien pos\u00e9e<\/strong>. Hadamar'd Well-posedness n\u00e9cessite trois propri\u00e9t\u00e9s : l'existence d'une solution, l'unicit\u00e9 et la d\u00e9pendance continue aux donn\u00e9es. Les probl\u00e8mes inverses violent souvent la troisi\u00e8me propri\u00e9t\u00e9. Si vous perturbez vos mesures d'une petite quantit\u00e9 de $delta$, la variation correspondante de vos param\u00e8tres estim\u00e9s peut exploser. C'est la caract\u00e9ristique d'un probl\u00e8me mal pos\u00e9.<\/p>\n<p><strong>Conseil de pro&nbsp;:<\/strong> Pensez \u00e0 la mauvaise pose comme \u00e0 l'expression math\u00e9matique de la \u00ab&nbsp;perte d'informations&nbsp;\u00bb. Lorsque vous observez une distribution de temp\u00e9rature, vous avez perdu des informations sur l'\u00e9tat initial, les conditions aux limites ou les propri\u00e9t\u00e9s du mat\u00e9riau. La reconstruction de ces quantit\u00e9s cach\u00e9es est math\u00e9matiquement \u00e9quivalente \u00e0 une dur\u00e9e de fonctionnement inverse, ce qui amplifie tout bruit pr\u00e9sent.<\/p>\n<h3>Pourquoi les probl\u00e8mes inverses de PDE sont-ils difficiles<\/h3>\n<p>Lorsque votre mod\u00e8le avanc\u00e9 est un PDE, la situation est plus limit\u00e9e que dans les simples probl\u00e8mes inverses comme la d\u00e9convolution. L'op\u00e9rateur de transfert $mathcal{g}$ est g\u00e9n\u00e9ralement un op\u00e9rateur compact sur des espaces de fonctions de dimension infinie, ce qui signifie qu'il a des valeurs propres qui se d\u00e9gradent \u00e0 z\u00e9ro. Cette d\u00e9croissance est exactement ce qui rend le probl\u00e8me mal pos\u00e9 - de petites valeurs singuli\u00e8res signifient que le bruit dans ces directions est amplifi\u00e9 sans \u00eatre li\u00e9.<\/p>\n<p>Cela distingue les probl\u00e8mes inverses induits par la PDE de l'estimation statistique standard. Vos param\u00e8tres vivent dans l'espace des fonctions (champs variables dans l'espace), et non dans $mathbb{r}^n$, et vos informations pr\u00e9alables \u00e0 leur sujet doivent refl\u00e9ter cette structure. Le domaine de <strong>l'inversion bay\u00e9sienne dans l'espace des fonctions<\/strong> - lanc\u00e9 par Franka (1970), Mandelbaum (1984) et formalis\u00e9 par Lassas et Siltanen (2004) - fournit le cadre rigoureux pour g\u00e9rer cela.<\/p>\n<p>L'id\u00e9e cl\u00e9 de l'inversion bay\u00e9sienne de l'espace fonction est que vous devez formuler vos mesures ant\u00e9rieures et post\u00e9rieures sur des espaces de dimension infinie, puis les discr\u00e9tiser de mani\u00e8re coh\u00e9rente. Si vous discr\u00e9ditez d'abord, puis faites des Bayes, votre post\u00e9rieur peut d\u00e9pendre du maillage - un signe que vous n'avez pas respect\u00e9 la nature continue du probl\u00e8me.<\/p>\n<p>Voir aussi <a href=\"https:\/\/matforge.org\/verification-vs-validation-in-scientific-simulations-a-practical-guide\/\">V\u00e9rification vs validation dans les simulations scientifiques<\/a> pour le contexte de la relation entre l'estimation des param\u00e8tres et le pipeline V&amp;v plus large, et <a href=\"https:\/\/matforge.org\/uncertainty-quantification-sensitivity-analysis-scientific-simulation\/\">Quantification d'incertitude et analyse de sensibilit\u00e9 dans la simulation scientifique<\/a> pour le sujet compl\u00e9mentaire de Propagation de l'incertitude des param\u00e8tres \u00e0 travers des mod\u00e8les avanc\u00e9s.<\/p>\n<h2>Trois strat\u00e9gies de discr\u00e9tisation<\/h2>\n<p>Lorsque vous impl\u00e9mentez num\u00e9riquement un probl\u00e8me inverse, l'ordre dans lequel vous discr\u00e9ditez les choses fondamentalement. Il existe trois strat\u00e9gies \u00e9tablies, chacune avec des compromis diff\u00e9rents entre la propret\u00e9 th\u00e9orique et la complexit\u00e9 pratique.<\/p>\n<table>\n<thead>\n<tr>\n<th>Strat\u00e9gie<\/th>\n<th>Pr\u00e9nom<\/th>\n<th>ce qu'il fait<\/th>\n<th>Pros<\/th>\n<th>Les inconv\u00e9nients<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td><strong>DTI<\/strong><\/td>\n<td>Discr\u00e9tiser puis informer<\/td>\n<td>Discr\u00e9tisez d'abord le mod\u00e8le vers l'avant, puis choisissez la discr\u00e9tisation pour minimiser le probl\u00e8me inverse<\/td>\n<td>simple \u00e0 mettre en \u0153uvre; Utilise des solveurs avanc\u00e9s standard<\/td>\n<td>La solution peut d\u00e9pendre du maillage ; Pas de discr\u00e9tisation invariant<\/td>\n<\/tr>\n<tr>\n<td><strong>CTI<\/strong><\/td>\n<td>continu puis informer<\/td>\n<td>Formuler le probl\u00e8me inverse complet (y compris la r\u00e9gularisation) dans l'espace des fonctions continues, puis discr\u00e9tiser<\/td>\n<td>discr\u00e9tisation invariante&nbsp;; th\u00e9oriquement propre<\/td>\n<td>N\u00e9cessite un choix prudent d'espaces discrets qui respectent la formulation continue<\/td>\n<\/tr>\n<tr>\n<td><strong>ITD<\/strong><\/td>\n<td>informer puis discr\u00e9tionner<\/td>\n<td>Reformuler le probl\u00e8me continu pour am\u00e9liorer la bonne position avant la discr\u00e9tisation<\/td>\n<td>le plus flexible; Peut utiliser diff\u00e9rentes discr\u00e9tisations<\/td>\n<td>le plus complexe \u00e0 d\u00e9river; N\u00e9cessite une compr\u00e9hension math\u00e9matique approfondie<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p><strong>DTI (discret-puis-informer)<\/strong> est le plus courant dans la pratique. Vous prenez votre solveur PDE standard, discr\u00e9tisez le mod\u00e8le avanc\u00e9 sur un maillage, puis r\u00e9solvez le probl\u00e8me inverse discret r\u00e9sultant avec des m\u00e9thodes de r\u00e9gularisation standard. Ceci est simple mais a un co\u00fbt cach\u00e9 : votre solution d\u00e9pendra de la r\u00e9solution du maillage. Si vous affinez le maillage, votre solution r\u00e9gularis\u00e9e peut changer consid\u00e9rablement. Ceci est th\u00e9oriquement insatisfaisant et pratiquement risqu\u00e9.<\/p>\n<p><strong>CTI (continu-alors-informer)<\/strong> inverse la commande. Vous formulez l'int\u00e9gralit\u00e9 du probl\u00e8me inverse - y compris les distributions, la probabilit\u00e9 et la r\u00e9gularisation ant\u00e9rieures - dans le cadre de dimensions infinies. Ensuite, vous discr\u00e9ditez r\u00e9guli\u00e8rement. Par exemple, vous pouvez placer un processus gaussien ant\u00e9rieur sur l'espace des param\u00e8tres de dimension infinie, sp\u00e9cifier une probabilit\u00e9 sur l'espace d'observation et d\u00e9river l'espace de fonction. Ce n'est qu'alors que vous discr\u00e9ditez le calcul. L'avantage est que votre post\u00e9rieur ne d\u00e9pend pas d'un maillage arbitraire - il refl\u00e8te le probl\u00e8me du continuum.<\/p>\n<p>Les travaux fondateurs de Lassas, Saksman et Siltanen (2009) sur l'inversion bay\u00e9sienne invariante de la discr\u00e9tisation ont \u00e9tabli que les approches CTI donnent des mesures post\u00e9rieures qui convergent vers une limite ind\u00e9pendante du maillage. Leur cadre utilise des ant\u00e9c\u00e9dents d'espace besov qui codent pour des connaissances pr\u00e9alables sur la r\u00e9gularit\u00e9, et cela montre que tant que vos espaces discrets se rapprochent des espaces continus, vos estimations post\u00e9rieures convergent.<\/p>\n<p><strong>ITD (inform-alors-discretiser)<\/strong> est le plus sophistiqu\u00e9 mais aussi le plus flexible. Ici, vous reformulez le probl\u00e8me lui-m\u00eame - peut-\u00eatre en modifiant l'op\u00e9rateur avanc\u00e9, en modifiant les conditions aux limites ou en ajoutant des contraintes auxiliaires - pour am\u00e9liorer sa bonne pose avant de discr\u00e9tiser. Par exemple, vous pouvez remplacer un PDE du second ordre par un syst\u00e8me de premier ordre (formulaire Redheffer-Wign), ce qui convient mieux \u00e0 certains algorithmes d'inversion. Cette strat\u00e9gie est moins couramment enseign\u00e9e dans les manuels scolaires mais appara\u00eet fr\u00e9quemment dans l'informatique scientifique moderne.<\/p>\n<p><strong>\u26a0\ufe0f Erreur courante&nbsp;:<\/strong> Utiliser DTI et supposer que votre solution converge au fur et \u00e0 mesure que vous affinez le maillage. Pour les probl\u00e8mes mal pos\u00e9s, affiner le maillage sans resserrer la r\u00e9gularisation finira par diverger - votre solution oscillera de plus en plus autour des donn\u00e9es. Vous devez montrer que votre s\u00e9quence r\u00e9gularis\u00e9e converge comme $delta to 0$ et le param\u00e8tre de r\u00e9gularisation $alpha to 0$ simultan\u00e9ment.<\/p>\n<h2>R\u00e9gularisation : apprivoiser les probl\u00e8mes mal pos\u00e9s<\/h2>\n<p>L'approche la plus courante pour r\u00e9soudre un probl\u00e8me mal pos\u00e9 est la <strong> r\u00e9gularisation de Tikhonov<\/strong>. Au lieu de r\u00e9soudre $AU = F$ directement, vous r\u00e9solvez un probl\u00e8me modifi\u00e9 qui p\u00e9nalise les solutions \"complexes\"&nbsp;:<\/p>\n<p>$$min_{u} |au - f|_{gamma}^2 + alpha |lu|^2, $$<\/p>\n<p>Lorsque $L$ est un op\u00e9rateur de r\u00e9gularisation (souvent une approximation discr\u00e8te du gradient ou du laplacien), $alpha$ est le param\u00e8tre de r\u00e9gularisation et $gamma$ est la covariance du bruit. Le premier terme est le <strong>Data Misfit<\/strong> (\u00e0 quel point votre mod\u00e8le explique les observations). Le deuxi\u00e8me terme est la <strong>p\u00e9nalit\u00e9 de r\u00e9gularisation<\/strong> (\u00e0 quel point votre solution est \"lisse\" ou \"simple\").<\/p>\n<p>Le param\u00e8tre de r\u00e9gularisation $alpha$ est le bouton critique. Trop gros et vous \u00eates trop lisse - votre solution est proche de l'ancien mais ignore les donn\u00e9es. Trop petit et vous sous-r\u00e9gularisez, vous adaptez le bruit et obtenez des solutions instables. Trouver la bonne valeur est lui-m\u00eame un probl\u00e8me inverse.<\/p>\n<h3>La courbe en L<\/h3>\n<p>La courbe en L est l'heuristique la plus utilis\u00e9e pour choisir $alpha$. Vous tracez le journal des donn\u00e9es inadapt\u00e9es $|au - f|$ par rapport au journal de la norme de solution r\u00e9gularis\u00e9e $|LU|$ comme $alpha$ varie. La courbe r\u00e9sultante a g\u00e9n\u00e9ralement une forme en \"L\"&nbsp;: un segment vertical o\u00f9 la r\u00e9gularisation domine, un segment horizontal o\u00f9 les donn\u00e9es sont domin\u00e9es et une r\u00e9gion de coin o\u00f9 les deux s'\u00e9quilibrent.<\/p>\n<p><strong>Conseil de pro&nbsp;:<\/strong> Le coin de la courbe en L est g\u00e9n\u00e9ralement l'endroit o\u00f9 $alpha$ devrait s'asseoir, mais pas toujours. Pour les probl\u00e8mes de bruit corr\u00e9l\u00e9 (par exemple, des erreurs de mesure dans l'espacement lisse), vous voudrez peut-\u00eatre vous d\u00e9placer l\u00e9g\u00e8rement vers le segment horizontal - laisser la solution \u00eatre l\u00e9g\u00e8rement plus rugueuse est souvent meilleure que la lissage excessive.<\/p>\n<p>La courbe en L est facile \u00e0 calculer pour les probl\u00e8mes \u00e0 petite \u00e9chelle, mais devient co\u00fbteuse pour les probl\u00e8mes inverses de PDE \u00e0 grande \u00e9chelle. Chaque point de la courbe n\u00e9cessite la r\u00e9solution du probl\u00e8me d'avance avec un param\u00e8tre de r\u00e9gularisation diff\u00e9rent. Avec des centaines de param\u00e8tres, ce n'est pas pratique.<\/p>\n<h3>Le principe de divergence<\/h3>\n<p>Une approche plus th\u00e9oriquement fond\u00e9e est le <strong>principe de divergence<\/strong> (Moroz, 1968). Si vous connaissez ou pouvez estimer le niveau de bruit $delta = |eta|$, le principe de divergence s\u00e9lectionne $alpha$ tel que&nbsp;:<\/p>\n<p>$$|au^alpha - f| = eta delta, quad eta &gt; 1.$$<\/p>\n<p>Le facteur de s\u00e9curit\u00e9 $eta &gt; 1&nbsp;$ emp\u00eache le surajustement&nbsp;: vous arr\u00eatez de vous installer d\u00e8s que le r\u00e9sidu atteint le niveau de bruit estim\u00e9. Tout ce qui est au-del\u00e0, c'est un bruit appropri\u00e9, pas un signal. Le principe est facile \u00e0 mettre en \u0153uvre - vous r\u00e9solvez pour $alpha$ par la m\u00e9thode de bisection ou de Newton - et il a des propri\u00e9t\u00e9s de convergence prouvables.<\/p>\n<p>Voir <a href=\"https:\/\/matforge.org\/time-integration-methods-for-pde-solvers-explicit-vs-implicit-schemes\/\">M\u00e9thodes d'int\u00e9gration temporelle pour les solveurs PDE<\/a> pour le contexte de la fa\u00e7on dont la stabilit\u00e9 num\u00e9rique est li\u00e9e aux choix de r\u00e9gularisation, et <a href=\"https:\/\/matforge.org\/stiff-problems-and-stiff-solvers\/\">Probl\u00e8mes raides et solveurs rigides<\/a> lorsque votre syst\u00e8me r\u00e9gularis\u00e9 pr\u00e9sente une rigidit\u00e9.<\/p>\n<h2>La m\u00e9thode adjointe : calculer efficacement les gradients<\/h2>\n<p>Supposons que votre mod\u00e8le de transfert associe 1&nbsp;000&nbsp;param\u00e8tres de mat\u00e9riaux $theta_1, ldots, theta_{1000}$ aux observables. Vous souhaitez minimiser une fonction d'inad\u00e9quation - peut-\u00eatre la somme des diff\u00e9rences entre les donn\u00e9es observ\u00e9es et les donn\u00e9es pr\u00e9dites - et vous avez besoin de gradients $partial f \/ partial theta_i$ pour chaque $i$.<\/p>\n<p>Une approche na\u00efve utilise des diff\u00e9rences finies&nbsp;: perturber $theta_i$ par $epsilon$, r\u00e9soudre \u00e0 nouveau le probl\u00e8me de l'avenir et estimer le gradient. C'est 1&nbsp;000&nbsp;r\u00e9solutions vers l'avant par \u00e9valuation de gradient. Pour un solveur PDE qui prend des minutes par r\u00e9solution, ce n'est que pour une \u00e9tape de d\u00e9grad\u00e9.<\/p>\n<p>La <strong>m\u00e9thode adjointe<\/strong> r\u00e9sout cela en deux balayages quel que soit le nombre de param\u00e8tres. Il exploite le fait que le gradient d'une fonction de perte scalaire par rapport aux param\u00e8tres peut \u00eatre calcul\u00e9 en r\u00e9solvant une PDE suppl\u00e9mentaire - l'\u00e9quation adjointe.<\/p>\n<p>La m\u00e9thode adjointe remonte aux travaux de Pironneau (1974) et Kontoleadis et al. (2013) et a \u00e9t\u00e9 formalis\u00e9 pour une optimisation limit\u00e9e par la PDE par Gunther et al. (2013) dans le contexte de Dolfin-Adjoint. L'id\u00e9e de base :<\/p>\n<ol>\n<li>R\u00e9solvez le probl\u00e8me de transfert $a(theta)u = f$ pour obtenir l'\u00e9tat $u$.<\/li>\n<li>R\u00e9solvez l'\u00e9quation adjointe $a(theta)^* p = frac{partial r}{partial u}$ pour obtenir l'\u00e9tat adjoint $p$, o\u00f9 $r$ est votre fonction de co\u00fbt et $a^*$ est l'op\u00e9rateur adjoint.<\/li>\n<li>Calculez le gradient $nabla_theta f = frac{partial f}{partial theta} + text{terms impliquant } p text{ et } u$.<\/li>\n<\/ol>\n<p>L'\u00e9quation adjointe est essentiellement le mod\u00e8le avanc\u00e9 ex\u00e9cut\u00e9 en arri\u00e8re dans le temps (si la PDE d\u00e9pend du temps) avec le gradient de la fonction de co\u00fbt comme terme source. Pour une PDE parabolique, vous r\u00e9solvez de la derni\u00e8re fois \u00e0 l'heure initiale, en r\u00e9cup\u00e9rant les contributions en cours de route.<\/p>\n<p>Le co\u00fbt de calcul de la m\u00e9thode adjointe est essentiellement une solution directe suppl\u00e9mentaire, pas une par param\u00e8tre. Cela le rend pratique pour des milliers de param\u00e8tres, o\u00f9 des diff\u00e9rences finies seraient impossibles.<\/p>\n<p>Givoli (2021) fournit un excellent didacticiel p\u00e9dagogique sur la m\u00e9thode Adjoint pour les probl\u00e8mes d'\u00e9l\u00e9ments finis, montrant comment l'adjoint discret est d\u00e9riv\u00e9 de la formulation des \u00e9l\u00e9ments finis et comment il se rapporte \u00e0 l'adjoint continu. L'id\u00e9e cl\u00e9 est que l'adjoint discret d'un mod\u00e8le discret vers l'avant n'est pas n\u00e9cessairement la discr\u00e9tisation de l'adjoint continu - c'est l\u00e0 que les strat\u00e9gies de discr\u00e9tisation de la section 2 redeviennent pertinentes.<\/p>\n<p><strong>Pr\u00e8s du pro&nbsp;:<\/strong> Si vous utilisez Fenics pour votre mod\u00e8le avant, Dolfin-Adjoint est le choix canonique pour la d\u00e9rivation adjointe automatique. Il construit automatiquement l'adjoint discret \u00e0 partir de votre code avant en diff\u00e9renciant le syst\u00e8me assembl\u00e9. La configuration est simple - enveloppez votre r\u00e9solution de transfert avec <code>DOLFIN_Adjoint()<\/code>, sp\u00e9cifiez votre fonction de co\u00fbt et appelez <code>compute_gradient()<\/code> - et elle g\u00e8re la d\u00e9rivation adjointe automatiquement.<\/p>\n<p>Pour une introduction pratique, le didacticiel adjoint de Stanford Ambad (Bradi\u0107 et al.) parcourt la d\u00e9rivation des \u00e9quations adjointes pour les probl\u00e8mes de Navier-Stokes et d'advection-diffusion, avec des formulations d'\u00e9l\u00e9ments finis clairs. C'est une excellente r\u00e9f\u00e9rence pratique.<\/p>\n<h2>Inversion bay\u00e9sienne&nbsp;: estimation des param\u00e8tres de l'incertitude<\/h2>\n<p>Les estimations ponctuelles, qu'elles soient issues de la r\u00e9gularisation Tikhonov ou de l'optimisation bas\u00e9e sur les associations, vous donnent un \"meilleur\" ensemble de param\u00e8tres. Mais ils ne vous disent pas \u00e0 quel point vous devriez \u00eatre confiant. Dans de nombreuses applications, vous avez besoin de la distribution compl\u00e8te de l'incertitude&nbsp;: quel est l'intervalle de 95&nbsp;% sur la perm\u00e9abilit\u00e9&nbsp;? Quelle est la probabilit\u00e9 que le v\u00e9ritable param\u00e8tre se situe en dehors de la plage estim\u00e9e&nbsp;?<\/p>\n<p>L'inversion bay\u00e9sienne fournit cela en traitant les param\u00e8tres comme des variables al\u00e9atoires. Vous sp\u00e9cifiez une distribution ant\u00e9rieure $mu_0$ encodant vos connaissances pr\u00e9alables sur les param\u00e8tres, puis calculez la distribution post\u00e9rieure $mu^y$ \u00e0 l'aide de la r\u00e8gle de Bayes&nbsp;:<\/p>\n<p>$$mu^y(theta) propto expleft(-frac{1}{2} | y - mathcal{g}(theta) |_{gamma}^2right) mu_0(theta). $$<\/p>\n<p>Le terme exponentiel est la probabilit\u00e9 (la probabilit\u00e9 que les donn\u00e9es re\u00e7oivent les param\u00e8tres), et $mu_0$ est le pr\u00e9c\u00e9dent. Le post\u00e9rieur combine les deux : il \u00e9quilibre les donn\u00e9es par rapport aux connaissances ant\u00e9rieures.<\/p>\n<h3>Le d\u00e9fi : MCMC<\/h3>\n<p>Le calcul du post\u00e9rieur n'est traitable que dans des cas simples lin\u00e9aires gaussiens. Pour les PDE non lin\u00e9aires, vous avez besoin des m\u00e9thodes de la cha\u00eene de Markov Monte Carlo (MCMC) pour \u00e9chantillonner \u00e0 partir de $mu^y$. Le probl\u00e8me est que chaque proposition MCMC n\u00e9cessite de r\u00e9soudre le mod\u00e8le \u00e0 terme. Avec 10&nbsp;000&nbsp;propositions et une r\u00e9solution de PDE qui prend 5&nbsp;minutes, vous envisagez des jours ou des semaines de calcul.<\/p>\n<p>C'est pourquoi les mod\u00e8les de substitution sont essentiels dans les probl\u00e8mes inverses bay\u00e9siens. Au lieu de r\u00e9soudre le PDE \u00e0 chaque \u00e9tape du MCMC, vous cr\u00e9ez une approximation rapide de la carte avant. Les substituts courants comprennent :<\/p>\n<ul>\n<li><strong>R\u00e9gression du processus gaussien (GP)<\/strong> - fournit \u00e0 la fois des pr\u00e9dictions et des estimations d'incertitude. Efficace pour les espaces de param\u00e8tres de faible dimension mais co\u00fbteux en termes de calcul pour les param\u00e8tres de haute dimension ($mathcal{o}(n^3)$ pour les points d'entra\u00eenement $n$).<\/li>\n<li><strong>Substituts du r\u00e9seau de neurones<\/strong> \u2014 \u00c9valuation plus rapide mais plus difficile \u00e0 quantifier l'incertitude. Le cadre de Deepgala (Jimenez-Beltran et al., 2024) aborde ce probl\u00e8me en combinant la m\u00e9thode Deep Galerkin avec l'approximation de Laplace, fournissant des estimations d'incertitude calibr\u00e9es \u00e0 la derni\u00e8re couche du r\u00e9seau.<\/li>\n<\/ul>\n<h3>Discr\u00e9tisation-inversion invariante<\/h3>\n<p>Un aper\u00e7u critique de l'inversion bay\u00e9sienne de l'espace fonction (Lassas et al., 2009) est que votre post\u00e9rieur ne doit pas d\u00e9pendre du maillage. Dans l'approche DTI, vous pouvez placer un a priori sur un vecteur de param\u00e8tres discr\u00e9tis\u00e9, puis affiner le maillage et d\u00e9couvrir que votre post\u00e9rieur a chang\u00e9. C'est parce que le prieur lui-m\u00eame d\u00e9pend de la discr\u00e9tisation.<\/p>\n<p>L'approche CTI \u00e9vite cela en pla\u00e7ant des priors sur des espaces de fonctions de dimension infinie (g\u00e9n\u00e9ralement des processus gaussiens ou des espaces Besov), en sp\u00e9cifiant la probabilit\u00e9 sur l'espace d'observation et en discr\u00e9tisant la mesure post\u00e9rieure de mani\u00e8re coh\u00e9rente. Au fur et \u00e0 mesure que le maillage se raffine, le post\u00e9rieur discret converge vers une limite ind\u00e9pendante du maillage.<\/p>\n<p>Pour une pr\u00e9sentation pratique des probl\u00e8mes inverses bay\u00e9siens dans l'espace de fonction, le notebook de Dan MacKinlay fournit une introduction accessible qui relie la th\u00e9orie et la mise en \u0153uvre, montrant comment la discr\u00e9tisation des mesures et la discr\u00e9tisation informatique interagissent dans le cadre bay\u00e9sien.<\/p>\n<h2>Impl\u00e9mentation de Python&nbsp;: TRIPS-PY et Dolfin-Adjoint<\/h2>\n<p>Deux packages Python rendent accessibles les probl\u00e8mes inverses pratiques. <strong>Trips-py<\/strong> (Pasha et al., 2024) se concentre sur les probl\u00e8mes inverses discrets lin\u00e9aires, tandis que <strong>Dolfin-adjoint<\/strong> g\u00e8re l'optimisation contrainte par PDE avec une d\u00e9rivation adjointe automatique.<\/p>\n<h3>TRIPS-PY&nbsp;: r\u00e9gularisation pour les probl\u00e8mes inverses lin\u00e9aires<\/h3>\n<p>TRIPS-PY est con\u00e7u pour les probl\u00e8mes inverses lin\u00e9aires de la forme $AX = B$. Il fournit :<\/p>\n<ul>\n<li>M\u00e9thodes directes : TSVD, Tikhonov, GSVD tronqu\u00e9<\/li>\n<li>M\u00e9thodes it\u00e9ratives : GMRES, LSQR, CGLS, variantes hybrides<\/li>\n<li>S\u00e9lection des param\u00e8tres de r\u00e9gularisation : L-courbe, principe de divergence, GCV<\/li>\n<li>Probl\u00e8mes de test : d\u00e9gradation 1D\/2D, tomographie<\/li>\n<\/ul>\n<pre><code class=\"language-python\">from trips_py import Deblurring1D, TSVD, Tikhonov, GCV\n\n# Setup\ndeblurr = Deblurring1D()\nnx = 200\nx_true = deblurr.gen_xtrue(nx, test='curve2')\nA = deblurr.forward_Op_1D(parameter=30, nx=nx)\nb = deblurr.gen_data(x_true)\nb_noisy, delta = deblurr.add_noise(b, 'Gaussian', noise_level=0.01)\n\n# Solve with Tikhonov regularization\nsolver = Tikhonov()\nx_reg = solver.solve(A, b_noisy, regularization_parameter=0.01)\n\n# Or use GCV to find the regularization parameter automatically\nsolver = Tikhonov(regularization='auto')\nsolver.set_reg_param_method('GCV')\nx_reg = solver.solve(A, b_noisy)\n<\/code><\/pre>\n<p>L'option <code>CommitCrime<\/code> dans TRIPS-PY vaut la peine d'\u00eatre comprise. Par d\u00e9faut, TRIPS-PY \u00e9vite le d\u00e9lit inverse en utilisant des op\u00e9rateurs avanc\u00e9s incompatibles pour la g\u00e9n\u00e9ration et la solution des donn\u00e9es. Il s'agit d'une sauvegarde pratique&nbsp;: si votre op\u00e9rateur avanc\u00e9 pour r\u00e9soudre correspond exactement \u00e0 celui utilis\u00e9 pour g\u00e9n\u00e9rer les donn\u00e9es, votre r\u00e9gularisation peut sembler plus efficace qu'elle ne l'est r\u00e9ellement. D\u00e9finissez <code>CommitCrime=True<\/code> uniquement si vous souhaitez sp\u00e9cifiquement \u00e9tudier le ph\u00e9nom\u00e8ne de la criminalit\u00e9 inverse.<\/p>\n<h3>Dolfin-Adjoint : Adjoint automatique pour les syst\u00e8mes PDE<\/h3>\n<p>Dolfin-Adjoint s'int\u00e8gre \u00e0 FENICS pour fournir une d\u00e9rivation adjointe automatique pour une optimisation limit\u00e9e par PDE&nbsp;:<\/p>\n<pre><code class=\"language-python\">from fenics import *\nfrom dolfin_adjoint import *\n\n# Define forward model\nmesh = RectangleMesh(50, 50, 1.0, 1.0)\nV = FunctionSpace(mesh, \"Lagrange\", 1)\nu = TrialFunction(V)\nv = TestFunction(V)\nalpha = Function(V)  # Unknown parameter field\n\n# Forward PDE: -\u2207\u00b7(\u03b1\u2207u) = f\nf = Constant(1.0)\nsolve(Inner(grad(u), grad(v))*dx == f*v*dx, alpha, \n      adjoint=adj_solve(Inner(grad(u), grad(v))*dx == f*v*dx))\n\n# Cost function\nJ = 0.5 * sum(v*v for v in V.sub(0).split())\n\n# Compute gradient via adjoint method\ncompute_gradient(J, alpha)\n<\/code><\/pre>\n<p>La fonction <code>adj_solve<\/code> diff\u00e9rencie automatiquement la r\u00e9solution directe, g\u00e9n\u00e9rant l'\u00e9quation adjointe en interne. Vous n'avez pas besoin de d\u00e9river ou d'impl\u00e9menter l'adjoint manuellement - Dolfin-Adjoint le g\u00e8re. Ceci est particuli\u00e8rement utile lorsque votre PDE a des conditions aux limites complexes ou des op\u00e9rateurs non lin\u00e9aires.<\/p>\n<p>Pour les probl\u00e8mes o\u00f9 vous avez besoin d'une quantification de l'incertitude ainsi que de l'estimation des param\u00e8tres, la combinaison de Dolfin-Adjoint (pour un calcul de gradient efficace) avec des \u00e9chantillonneurs bay\u00e9siens (comme le ma\u00eetre de c\u00e9r\u00e9monie ou le PYMC) fournit un cadre puissant. Les informations de gradient de Dolfin-Adjoint acc\u00e9l\u00e8rent les m\u00e9thodes MCMC bas\u00e9es sur le gradient comme l'\u00e9chantillonneur No-U-Turn (NUTS).<\/p>\n<h2>Le \"crime inverse\"&nbsp;: pourquoi vos donn\u00e9es synth\u00e9tiques peuvent vous mentir<\/h2>\n<p>Le crime inverse est un \u00e9cueil notoire dans la recherche sur les probl\u00e8mes inverses. Cela se produit lorsque l'op\u00e9rateur avanc\u00e9 utilis\u00e9 pour g\u00e9n\u00e9rer des donn\u00e9es de test synth\u00e9tiques est identique \u00e0 celui utilis\u00e9 pour r\u00e9soudre le probl\u00e8me inverse. Le r\u00e9sultat ? Votre r\u00e9gularisation semble consid\u00e9rablement plus efficace qu'elle ne l'est en r\u00e9alit\u00e9.<\/p>\n<p>Voici pourquoi : Les m\u00e9thodes de r\u00e9gularisation telles que Tikhonov p\u00e9nalisent implicitement certaines fonctionnalit\u00e9s de la solution. Si vos donn\u00e9es synth\u00e9tiques ont \u00e9t\u00e9 g\u00e9n\u00e9r\u00e9es avec un op\u00e9rateur qui s'aligne sur votre r\u00e9gularisation ant\u00e9rieure, vous r\u00e9cup\u00e9rerez le terrain sans effort, non pas parce que votre m\u00e9thode est bonne, mais parce que vous vous pr\u00e9parez \u00e0 r\u00e9ussir.<\/p>\n<p>La cons\u00e9quence est que les benchmarks publi\u00e9s bas\u00e9s sur des donn\u00e9es sur les crimes inverses peuvent \u00eatre trompeurs. Une m\u00e9thode qui permet d'obtenir une pr\u00e9cision de 99&nbsp;% sur les donn\u00e9es de d\u00e9nonciation inverse peut chuter \u00e0 60&nbsp;% sur des donn\u00e9es du monde r\u00e9el o\u00f9 l'op\u00e9rateur avanc\u00e9 est v\u00e9ritablement incompatible (en raison des diff\u00e9rences de discr\u00e9tisation, des simplifications de mod\u00e8les ou de la g\u00e9om\u00e9trie de mesure).<\/p>\n<p><strong>\u26a0\ufe0f Erreur courante&nbsp;:<\/strong> G\u00e9n\u00e9rer des donn\u00e9es de test avec le m\u00eame mod\u00e8le avanc\u00e9 que vous utilisez pour l'inversion, puis pr\u00e9tendre que votre m\u00e9thode est \"robuste\" bas\u00e9e sur l'excellente r\u00e9cup\u00e9ration. Il s'agit du crime inverse - il gonfle les mesures de performance en exploitant l'alignement structurel entre la g\u00e9n\u00e9ration de donn\u00e9es et l'inversion.<\/p>\n<p>TRIPS-PY aborde cela par d\u00e9faut&nbsp;: sa classe <code>Deblurring1D<\/code> utilise des conditions aux limites diff\u00e9rentes pour la g\u00e9n\u00e9ration de donn\u00e9es par rapport \u00e0 la solution, en \u00e9vitant le crime inverse. Pour \u00e9tudier sp\u00e9cifiquement le crime inverse, vous devez d\u00e9finir explicitement <code>CommitCrime=True<\/code>. Cette protection par d\u00e9faut rend le TRIPS-PY particuli\u00e8rement utile pour un benchmarking honn\u00eate.<\/p>\n<p>Le fondement math\u00e9matique du crime inverse a \u00e9t\u00e9 clarifi\u00e9 par Kaipio et Sereno (2007), qui ont montr\u00e9 que le crime inverse peut \u00eatre quantifi\u00e9 comme l'alignement entre les espaces nuls de l'op\u00e9rateur avanc\u00e9 et de l'op\u00e9rateur de r\u00e9gularisation. Lorsque ces espaces nuls s'alignent, la r\u00e9gularisation devient artificiellement efficace. Quand ce n'est pas le cas, la v\u00e9ritable difficult\u00e9 du probl\u00e8me inverse \u00e9merge.<\/p>\n<h2>CONNEXES: PINNs et apprentissage automatique pour les probl\u00e8mes inverses<\/h2>\n<p>L'apprentissage automatique est entr\u00e9 dans l'espace des probl\u00e8mes inverses de deux mani\u00e8res principales&nbsp;: les <strong>r\u00e9seaux de neurones inform\u00e9s par la physique (PINN)<\/strong> et les <strong>substituts de l'op\u00e9rateur de neurones<\/strong>.<\/p>\n<p>Pinns (Raissi et al., 2019) int\u00e8grent directement la PDE dans la fonction de perte du r\u00e9seau neuronal. Le r\u00e9seau apprend \u00e0 satisfaire \u00e0 la fois les donn\u00e9es et la physique simultan\u00e9ment. Pour les probl\u00e8mes inverses, les PINN peuvent d\u00e9couvrir des param\u00e8tres inconnus en minimisant le r\u00e9sidu des \u00e9quations gouvernantes \u00e0 c\u00f4t\u00e9 des donn\u00e9es inadapt\u00e9es. La beaut\u00e9 est que vous n'avez pas besoin de conna\u00eetre les param\u00e8tres pour configurer le r\u00e9seau - ils sont trait\u00e9s comme des constantes d'apprentissage.<\/p>\n<p>Cependant, les PINN sont confront\u00e9s \u00e0 des d\u00e9fis&nbsp;:<\/p>\n<ul>\n<li><strong>Bias spectraux&nbsp;:<\/strong> Les r\u00e9seaux de neurones apprennent d'abord les composants \u00e0 basse fr\u00e9quence, ce qui peut leur faire manquer les variations de param\u00e8tres \u00e0 \u00e9chelle fine.<\/li>\n<li><strong>\u00c9quilibrage des pertes&nbsp;:<\/strong>&nbsp;Diff\u00e9rents termes de la perte (PDE r\u00e9siduelle, conditions aux limites, donn\u00e9es inadapt\u00e9es) ont des \u00e9chelles diff\u00e9rentes. Obtenir le bon \u00e9quilibre n\u00e9cessite un r\u00e9glage ou une pond\u00e9ration adaptative.<\/li>\n<li><strong>Garanties de convergence&nbsp;:<\/strong> Contrairement \u00e0 la r\u00e9gularisation de Tikhonov, il n'y a pas de r\u00e9sultats de convergence prouv\u00e9s pour les PINN dans la limite de bruit \u00e0 signal.<\/li>\n<\/ul>\n<p>Les substituts des op\u00e9rateurs de neurones (comme Deepgala) sont une autre approche \u00e9mergente. Au lieu d'apprendre directement la carte de la solution, ils apprennent une approximation rapide du mod\u00e8le avanc\u00e9 qui peut \u00eatre \u00e9valu\u00e9 des millions de fois au cours de l'\u00e9chantillonnage MCMC. Deepgala (Jimenez-Beltran et al., 2024) fournit un cadre concret&nbsp;: entra\u00eenez un substitut de r\u00e9seau de neurones avec la m\u00e9thode de Deep Galerkin, puis utilisez l'approximation de Laplace pour quantifier l'incertitude \u00e0 la derni\u00e8re couche. Le substitut al\u00e9atoire r\u00e9sultant permet des probl\u00e8mes inverses bay\u00e9siens \u00e9volutifs sans sacrifier la fiabilit\u00e9.<\/p>\n<p>Pour un contexte plus approfondi sur les PINN, consultez <a href=\"https:\/\/matforge.org\/physics-informed-neural-networks-pinns-for-scientific-simulations\/\">R\u00e9seaux de neurones \u00e0 base de physique (PINN) pour les simulations scientifiques<\/a>.<\/p>\n<h2>R\u00e9sum\u00e9 + \u00c9tapes suivantes<\/h2>\n<p>Les probl\u00e8mes inverses pour les mod\u00e8les de PDE se situent \u00e0 l'intersection de trois disciplines&nbsp;: l'analyse num\u00e9rique (comment les r\u00e9soudre efficacement), les math\u00e9matiques appliqu\u00e9es (comment garantir la convergence) et les statistiques (comment quantifier l'incertitude). Le d\u00e9fi pratique est de choisir la bonne combinaison de m\u00e9thodes pour votre probl\u00e8me sp\u00e9cifique.<\/p>\n<p>Voici un workflow pratique :<\/p>\n<ol>\n<li><strong>Commencez avec un mod\u00e8le avanc\u00e9.<\/strong> Impl\u00e9mentez ou validez votre solveur PDE. Si vous ne l'avez pas fait, consultez <a href=\"https:\/\/matforge.org\/verification-vs-validation-in-scientific-simulations-a-practical-guide\/\">V\u00e9rification vs validation dans les simulations scientifiques<\/a>.<\/li>\n<li><strong>Formulez le probl\u00e8me inverse.<\/strong> Sp\u00e9cifiez les param\u00e8tres que vous r\u00e9cup\u00e9rez, les donn\u00e9es dont vous disposez et le niveau de bruit auquel vous devez vous attendre.<\/li>\n<li><strong>Choisissez une strat\u00e9gie de discr\u00e9tisation.<\/strong> Le DTI est le plus simple&nbsp;; CTI donne l'ind\u00e9pendance du maillage. Si vous avez besoin des deux, ITD offre le plus de flexibilit\u00e9.<\/li>\n<li><strong>Choisissez une m\u00e9thode de r\u00e9gularisation.<\/strong> Tikhonov avec le principe de la courbe en L ou de l'\u00e9cart est le point de d\u00e9part standard. TRIPS-PY fournit des impl\u00e9mentations.<\/li>\n<li><strong>Calculez efficacement les gradients.<\/strong> Si vous avez de nombreux param\u00e8tres, utilisez la m\u00e9thode Adjoint. Dolfin-Adjoint g\u00e8re la d\u00e9rivation automatiquement.<\/li>\n<li><strong>Quantifier l'incertitude.<\/strong> Pour les param\u00e8tres de grande dimension, consid\u00e9rez les substituts neuronaux comme DeepGala. Pour les dimensions inf\u00e9rieures, le MCMC avec un substitut de GP est efficace.<\/li>\n<li><strong>\u00c9vitez le crime inverse.<\/strong> V\u00e9rifiez toujours que votre op\u00e9rateur avanc\u00e9 pour la g\u00e9n\u00e9ration de donn\u00e9es diff\u00e8re de votre op\u00e9rateur d'inversion, ou \u00e9tudiez explicitement le crime.<\/li>\n<\/ol>\n<p>Le champ \u00e9volue rapidement. Les approches d'apprentissage approfondi compl\u00e8tent les m\u00e9thodes de r\u00e9gularisation traditionnelles, et les outils de diff\u00e9renciation automatique comme Dolfin-Adjoint rendent l'inversion adjointe accessible aux praticiens qui ne souhaitent pas d\u00e9river les \u00e9quations adjointes manuellement. La cl\u00e9 est d'ancrer votre choix dans les propri\u00e9t\u00e9s math\u00e9matiques de votre probl\u00e8me sp\u00e9cifique - savoir quand un probl\u00e8me est mal pos\u00e9, comment la r\u00e9gularisation l'apprivoise et ce que la quantification de l'incertitude vous dit sur vos param\u00e8tres.<\/p>\n<h2>Guides connexes<\/h2>\n<ul>\n<li><a href=\"https:\/\/matforge.org\/verification-vs-validation-in-scientific-simulations-a-practical-guide\/\">V\u00e9rification vs validation dans les simulations scientifiques<\/a> Cadre de validation plus large<\/li>\n<li><a href=\"https:\/\/matforge.org\/uncertainty-quantification-sensitivity-analysis-scientific-simulation\/\">Quantification de l'incertitude et analyse de sensibilit\u00e9 dans la simulation scientifique<\/a> \u2014 Propagation de l'incertitude des param\u00e8tres \u00e0 travers des mod\u00e8les avanc\u00e9s<\/li>\n<li><a href=\"https:\/\/matforge.org\/time-integration-methods-for-pde-solvers-explicit-vs-implicit-schemes\/\">M\u00e9thodes d'int\u00e9gration de temps pour les solveurs PDE<\/a> \u2014 Comment le pas de temps num\u00e9rique affecte la pr\u00e9cision de la r\u00e9solution de transfert<\/li>\n<li><a href=\"https:\/\/matforge.org\/stiff-problems-and-stiff-solvers\/\">Probl\u00e8mes raides et solveurs rigides<\/a> - Lorsque la r\u00e9gularisation introduit la rigidit\u00e9 dans vos solutions avanc\u00e9es<\/li>\n<li><a href=\"https:\/\/matforge.org\/physics-informed-neural-networks-pinns-for-scientific-simulations\/\">R\u00e9seaux de neurones informatis\u00e9s (PINN) pour les simulations scientifiques<\/a> - ML Approches qui int\u00e8grent les PDE directement dans l'apprentissage<\/li>\n<\/ul>\n"},"excerpt":{"rendered":"<p><span class=\"span-reading-time rt-reading-time\" style=\"display: block;\"><span class=\"rt-label rt-prefix\">Reading Time: <\/span> <span class=\"rt-time\"> 16<\/span> <span class=\"rt-label rt-postfix\">minutes<\/span><\/span>Apprenez \u00e0 estimer des param\u00e8tres inconnus \u00e0 partir de simulations PDE \u00e0 l&rsquo;aide de m\u00e9thodes Adjoint, d&rsquo;inversion bay\u00e9sienne et de packages Python tels que TRIPS-PY et Dolfin-Adjoint.<\/p>\n","protected":false,"raw":"Apprenez \u00e0 estimer des param\u00e8tres inconnus \u00e0 partir de simulations PDE \u00e0 l'aide de m\u00e9thodes Adjoint, d'inversion bay\u00e9sienne et de packages Python tels que TRIPS-PY et Dolfin-Adjoint."},"author":6,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_locale":"fr_FR","_original_post":"https:\/\/matforge.org\/inverse-problems-parameter-estimation-pde-models\/","iawp_total_views":2,"footnotes":""},"categories":[1],"tags":[],"class_list":["post-1300","post","type-post","status-publish","format-standard","hentry","category-simulation-modeling-projects","fr-FR"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v28.3 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Probl\u00e8mes inverses et estimation des param\u00e8tres pour les mod\u00e8les PDE - matforge.org<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/matforge.org\/fr\/inverse-problems-parameter-estimation-pde-models\/\" \/>\n<meta property=\"og:locale\" content=\"fr_FR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Probl\u00e8mes inverses et estimation des param\u00e8tres pour les mod\u00e8les PDE - matforge.org\" \/>\n<meta property=\"og:description\" content=\"Reading Time:  16 minutesApprenez \u00e0 estimer des param\u00e8tres inconnus \u00e0 partir de simulations PDE \u00e0 l&#039;aide de m\u00e9thodes Adjoint, d&#039;inversion bay\u00e9sienne et de packages Python tels que TRIPS-PY et Dolfin-Adjoint.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/matforge.org\/fr\/inverse-problems-parameter-estimation-pde-models\/\" \/>\n<meta property=\"og:site_name\" content=\"matforge.org\" \/>\n<meta property=\"article:published_time\" content=\"2026-08-21T14:31:11+00:00\" \/>\n<meta name=\"author\" content=\"steven\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"\u00c9crit par\" \/>\n\t<meta name=\"twitter:data1\" content=\"steven\" \/>\n\t<meta name=\"twitter:label2\" content=\"Dur\u00e9e de lecture estim\u00e9e\" \/>\n\t<meta name=\"twitter:data2\" content=\"27 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/matforge.org\\\/fr\\\/inverse-problems-parameter-estimation-pde-models\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/matforge.org\\\/fr\\\/inverse-problems-parameter-estimation-pde-models\\\/\"},\"author\":{\"name\":\"steven\",\"@id\":\"https:\\\/\\\/matforge.org\\\/#\\\/schema\\\/person\\\/8f690fb596d657b12994b83caa788f03\"},\"headline\":\"Probl\u00e8mes inverses et estimation des param\u00e8tres pour les mod\u00e8les PDE\",\"datePublished\":\"2026-08-21T14:31:11+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/matforge.org\\\/fr\\\/inverse-problems-parameter-estimation-pde-models\\\/\"},\"wordCount\":5336,\"commentCount\":0,\"articleSection\":[\"Simulation &amp; Projets de mod\u00e9lisation\"],\"inLanguage\":\"fr-FR\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/matforge.org\\\/fr\\\/inverse-problems-parameter-estimation-pde-models\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/matforge.org\\\/fr\\\/inverse-problems-parameter-estimation-pde-models\\\/\",\"url\":\"https:\\\/\\\/matforge.org\\\/fr\\\/inverse-problems-parameter-estimation-pde-models\\\/\",\"name\":\"Probl\u00e8mes inverses et estimation des param\u00e8tres pour les mod\u00e8les PDE - matforge.org\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/matforge.org\\\/#website\"},\"datePublished\":\"2026-08-21T14:31:11+00:00\",\"author\":{\"@id\":\"https:\\\/\\\/matforge.org\\\/#\\\/schema\\\/person\\\/8f690fb596d657b12994b83caa788f03\"},\"breadcrumb\":{\"@id\":\"https:\\\/\\\/matforge.org\\\/fr\\\/inverse-problems-parameter-estimation-pde-models\\\/#breadcrumb\"},\"inLanguage\":\"fr-FR\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/matforge.org\\\/fr\\\/inverse-problems-parameter-estimation-pde-models\\\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/matforge.org\\\/fr\\\/inverse-problems-parameter-estimation-pde-models\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/matforge.org\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Probl\u00e8mes inverses et estimation des param\u00e8tres pour les mod\u00e8les PDE\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/matforge.org\\\/#website\",\"url\":\"https:\\\/\\\/matforge.org\\\/\",\"name\":\"matforge.org\",\"description\":\"\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/matforge.org\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"fr-FR\"},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/matforge.org\\\/#\\\/schema\\\/person\\\/8f690fb596d657b12994b83caa788f03\",\"name\":\"steven\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"fr-FR\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/d46cfcd83a298f27e8d66bfa035514fefca7652f26bd3ef7402f82b68a41ec0f?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/d46cfcd83a298f27e8d66bfa035514fefca7652f26bd3ef7402f82b68a41ec0f?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/d46cfcd83a298f27e8d66bfa035514fefca7652f26bd3ef7402f82b68a41ec0f?s=96&d=mm&r=g\",\"caption\":\"steven\"},\"url\":\"https:\\\/\\\/matforge.org\\\/author\\\/steven\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Probl\u00e8mes inverses et estimation des param\u00e8tres pour les mod\u00e8les PDE - matforge.org","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/matforge.org\/fr\/inverse-problems-parameter-estimation-pde-models\/","og_locale":"fr_FR","og_type":"article","og_title":"Probl\u00e8mes inverses et estimation des param\u00e8tres pour les mod\u00e8les PDE - matforge.org","og_description":"Reading Time:  16 minutesApprenez \u00e0 estimer des param\u00e8tres inconnus \u00e0 partir de simulations PDE \u00e0 l'aide de m\u00e9thodes Adjoint, d'inversion bay\u00e9sienne et de packages Python tels que TRIPS-PY et Dolfin-Adjoint.","og_url":"https:\/\/matforge.org\/fr\/inverse-problems-parameter-estimation-pde-models\/","og_site_name":"matforge.org","article_published_time":"2026-08-21T14:31:11+00:00","author":"steven","twitter_card":"summary_large_image","twitter_misc":{"\u00c9crit par":"steven","Dur\u00e9e de lecture estim\u00e9e":"27 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/matforge.org\/fr\/inverse-problems-parameter-estimation-pde-models\/#article","isPartOf":{"@id":"https:\/\/matforge.org\/fr\/inverse-problems-parameter-estimation-pde-models\/"},"author":{"name":"steven","@id":"https:\/\/matforge.org\/#\/schema\/person\/8f690fb596d657b12994b83caa788f03"},"headline":"Probl\u00e8mes inverses et estimation des param\u00e8tres pour les mod\u00e8les PDE","datePublished":"2026-08-21T14:31:11+00:00","mainEntityOfPage":{"@id":"https:\/\/matforge.org\/fr\/inverse-problems-parameter-estimation-pde-models\/"},"wordCount":5336,"commentCount":0,"articleSection":["Simulation &amp; Projets de mod\u00e9lisation"],"inLanguage":"fr-FR","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/matforge.org\/fr\/inverse-problems-parameter-estimation-pde-models\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/matforge.org\/fr\/inverse-problems-parameter-estimation-pde-models\/","url":"https:\/\/matforge.org\/fr\/inverse-problems-parameter-estimation-pde-models\/","name":"Probl\u00e8mes inverses et estimation des param\u00e8tres pour les mod\u00e8les PDE - matforge.org","isPartOf":{"@id":"https:\/\/matforge.org\/#website"},"datePublished":"2026-08-21T14:31:11+00:00","author":{"@id":"https:\/\/matforge.org\/#\/schema\/person\/8f690fb596d657b12994b83caa788f03"},"breadcrumb":{"@id":"https:\/\/matforge.org\/fr\/inverse-problems-parameter-estimation-pde-models\/#breadcrumb"},"inLanguage":"fr-FR","potentialAction":[{"@type":"ReadAction","target":["https:\/\/matforge.org\/fr\/inverse-problems-parameter-estimation-pde-models\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/matforge.org\/fr\/inverse-problems-parameter-estimation-pde-models\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/matforge.org\/"},{"@type":"ListItem","position":2,"name":"Probl\u00e8mes inverses et estimation des param\u00e8tres pour les mod\u00e8les PDE"}]},{"@type":"WebSite","@id":"https:\/\/matforge.org\/#website","url":"https:\/\/matforge.org\/","name":"matforge.org","description":"","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/matforge.org\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"fr-FR"},{"@type":"Person","@id":"https:\/\/matforge.org\/#\/schema\/person\/8f690fb596d657b12994b83caa788f03","name":"steven","image":{"@type":"ImageObject","inLanguage":"fr-FR","@id":"https:\/\/secure.gravatar.com\/avatar\/d46cfcd83a298f27e8d66bfa035514fefca7652f26bd3ef7402f82b68a41ec0f?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/d46cfcd83a298f27e8d66bfa035514fefca7652f26bd3ef7402f82b68a41ec0f?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/d46cfcd83a298f27e8d66bfa035514fefca7652f26bd3ef7402f82b68a41ec0f?s=96&d=mm&r=g","caption":"steven"},"url":"https:\/\/matforge.org\/author\/steven\/"}]}},"_links":{"self":[{"href":"https:\/\/matforge.org\/wp-json\/wp\/v2\/posts\/1300","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/matforge.org\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/matforge.org\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/matforge.org\/wp-json\/wp\/v2\/users\/6"}],"replies":[{"embeddable":true,"href":"https:\/\/matforge.org\/wp-json\/wp\/v2\/comments?post=1300"}],"version-history":[{"count":1,"href":"https:\/\/matforge.org\/wp-json\/wp\/v2\/posts\/1300\/revisions"}],"predecessor-version":[{"id":1390,"href":"https:\/\/matforge.org\/wp-json\/wp\/v2\/posts\/1300\/revisions\/1390"}],"wp:attachment":[{"href":"https:\/\/matforge.org\/wp-json\/wp\/v2\/media?parent=1300"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/matforge.org\/wp-json\/wp\/v2\/categories?post=1300"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/matforge.org\/wp-json\/wp\/v2\/tags?post=1300"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}