Interval Bound Propagation (IBP)
Interval Bound Propagation, communément abrégé en IBP, est une technique d’analyse statique utilisée principalement dans le domaine de l’intelligence artificielle, et plus spécifiquement dans la vérification formelle et l’analyse de robustesse des réseaux de neurones profonds. Elle vise à calculer des bornes rigoureuses (un intervalle minimum et maximum) pour la sortie d’une fonction ou d’un réseau, étant donné des bornes sur ses entrées. L’IBP repose sur les principes de l’arithmétique des intervalles pour propager ces intervalles d’entrée à travers les différentes opérations (couches linéaires, fonctions d’activation non linéaires) du réseau, garantissant que la plage de sortie réelle est contenue dans l’intervalle calculé.
Les concepts fondamentaux de l’IBP découlent de l’arithmétique des intervalles. L’idée centrale est de représenter les plages possibles de valeurs pour chaque variable ou activation neuronale non pas par une valeur unique, mais par un intervalle [borne inférieure, borne supérieure]. Lorsqu’une opération est appliquée, de nouvelles bornes sont calculées pour le résultat en utilisant les règles de l’arithmétique des intervalles. Par exemple, si on additionne deux variables représentées par les intervalles [a, b] et [c, d], l’intervalle résultant est [a+c, b+d]. Pour les transformations affines (multiplication par une matrice de poids W et ajout d’un biais b) courantes dans les réseaux de neurones, appliquées à un vecteur d’entrée dont chaque composant xi est dans [li, ui], les bornes de la sortie yj = sum(Wij * xi) + bj peuvent être calculées. Pour les fonctions d’activation non linéaires (comme ReLU, sigmoïde, tanh), on calcule des bornes sur leur sortie en appliquant la fonction aux bornes de l’intervalle d’entrée, en tenant compte de la monotonie de la fonction sur cet intervalle. Le processus est appliqué séquentiellement, couche par couche, de l’entrée vers la sortie du réseau. Une propriété essentielle est la « soundness » (validité) : la plage de sortie calculée par IBP englobe toujours la plage de sortie réelle possible pour l’intervalle d’entrée donné.
L’importance et la pertinence de l’IBP résident principalement dans sa capacité à fournir des garanties formelles sur le comportement des réseaux de neurones, un domaine critique étant donné leur déploiement croissant dans des applications sensibles (conduite autonome, diagnostic médical, finance). Les méthodes de test empiriques ne peuvent explorer qu’un nombre limité de points dans l’espace d’entrée, tandis que l’IBP permet de raisonner sur des ensembles infinis d’entrées (définis par les intervalles initiaux). Son impact est significatif dans l’étude de la robustesse aux attaques adverses : l’IBP peut certifier qu’un réseau produira la même classification (ou une sortie dans une plage sûre) pour toute perturbation de l’entrée contenue dans un certain intervalle (par exemple, une boule L-infini autour d’une image d’entrée). Cela contribue à construire des systèmes d’IA plus fiables et sécurisés.
Les applications pratiques de l’IBP sont diverses. Sa principale utilisation est la « certification de robustesse » : prouver qu’un classificateur est résistant aux perturbations adverses dans une certaine limite. Par exemple, pour une image correctement classée, on peut utiliser l’IBP pour déterminer la taille maximale d’une perturbation (souvent mesurée en norme L-infini ou L2) pour laquelle on peut garantir que la classification restera inchangée. Une autre application est l' »entraînement robuste ». Comme l’IBP est généralement différentiable (les opérations de calcul des bornes peuvent être intégrées dans un graphe de calcul), les bornes calculées peuvent être utilisées pour définir une fonction de perte robuste (par exemple, la perte maximale possible dans l’intervalle d’entrée). En minimisant cette perte pendant l’entraînement, on obtient des modèles qui sont intrinsèquement plus robustes par construction. L’IBP peut aussi être utilisée pour l’analyse de sécurité plus générale, comme vérifier si les sorties d’un réseau de contrôle restent dans des plages opérationnelles sûres.
Il existe des nuances et des variations de l’IBP. L’IBP de base, bien que rapide, souffre souvent d’un problème d’ « over-approximation » : les intervalles calculés peuvent devenir très larges, surtout dans les réseaux profonds, car les dépendances entre les variables sont perdues à chaque étape de propagation (le « dependency problem » de l’arithmétique d’intervalles). Pour obtenir des bornes plus précises (« tightness »), l’IBP est souvent combinée avec d’autres techniques. Une variation notable est CROWN-IBP, qui combine l’IBP avec des relaxations linéaires basées sur CROWN (Convex Relaxation based Network Verification) pendant l’entraînement pour obtenir à la fois l’efficacité de l’IBP et des bornes plus serrées pour la fonction de perte robuste. D’autres approches affinent le calcul des bornes pour les fonctions d’activation non linéaires au-delà de la simple application aux bornes de l’intervalle.
Plusieurs concepts sont étroitement liés à l’IBP. L’arithmétique des intervalles en est le fondement mathématique. L’IBP peut être vue comme une forme spécifique d’ « Abstract Interpretation », un cadre théorique général pour l’analyse statique de programmes qui approxime les sémantiques sur des domaines abstraits (ici, les intervalles). D’autres méthodes de vérification des réseaux de neurones, comme la propagation de Zonotopes, la propagation symbolique, ou les solveurs basés sur la programmation linéaire (LP) ou la satisfiabilité modulo théories (SMT), sont des alternatives ou des compléments à l’IBP, offrant souvent un compromis différent entre précision (tightness) et complexité computationnelle. Les termes « Interval Propagation » ou « Interval Arithmetic Propagation » sont parfois utilisés comme synonymes. Un antonyme conceptuel pourrait être « Pointwise Evaluation » (évaluation sur un seul point d’entrée) ou « Empirical Testing » (test sur un ensemble fini d’échantillons), qui ne fournissent pas de garanties sur des ensembles continus d’entrées.
L’origine de l’IBP est intrinsèquement liée à l’arithmétique des intervalles, développée dès les années 1950 et 1960 (notamment par Ramon E. Moore) pour contrôler les erreurs d’arrondi dans les calculs numériques. Son application spécifique à la vérification et à la robustesse des réseaux de neurones est beaucoup plus récente, ayant gagné en popularité dans la communauté de l’apprentissage automatique et de la sécurité de l’IA vers la fin des années 2010, en réponse directe aux préoccupations croissantes concernant la fiabilité et la vulnérabilité des modèles de deep learning face aux exemples adverses.
Les avantages de l’IBP incluent sa relative simplicité conceptuelle et sa rapidité d’exécution comparée à des méthodes de vérification plus complexes (comme les solveurs LP/SMT). Elle est particulièrement efficace pour des calculs rapides de bornes, même pour des réseaux de grande taille. Sa nature différentiable est un avantage majeur pour son intégration dans les boucles d’entraînement afin de produire des modèles robustes. Cependant, l’IBP présente des inconvénients notables. Le principal est l’imprécision due à l’over-approximation, surtout dans les réseaux profonds ou avec certaines architectures. Les bornes peuvent devenir si lâches qu’elles sont inutiles pour la certification (par exemple, l’intervalle de sortie couvre plusieurs classes possibles). Ce phénomène est exacerbé par la perte des dépendances entre les activations neuronales lors de la propagation. Les défis actuels de la recherche sur l’IBP consistent donc à améliorer la précision des bornes (leur « tightness ») sans sacrifier excessivement l’efficacité computationnelle, souvent en la combinant avec d’autres techniques d’analyse ou de relaxation. La gestion efficace des différentes non-linéarités et architectures de réseaux reste également un domaine d’étude actif.