Le score CLEVER (Cross-Lipschitz Extreme Value for nEtwork Robustness) est une métrique quantitative pour évaluer la robustesse des classificateurs de réseaux neuronaux face aux exemples adversariaux. Proposé en 2018 par Tsui-Wei Weng et ses collègues, il estime une borne inférieure sur la distorsion minimale requise pour modifier la classification d'un réseau pour une entrée donnée. Le score répond à un défi central de l'apprentissage profond : fournir un moyen pratique et évolutif de mesurer la robustesse dans le pire cas sans résoudre un problème d'optimisation intraitable pour chaque entrée.
Les mesures traditionnelles de robustesse adversariales reposent souvent sur des algorithmes d'attaque, qui ne trouvent qu'une perturbation spécifique réussissant, ou sur la vérification formelle, qui est coûteuse en calcul et rarement évolutive pour les grands réseaux. CLEVER offre une alternative combinant des garanties théoriques avec une approximation efficace en calcul, le rendant utilisable sur des architectures modernes telles que les réseaux neuronaux et les modèles de apprentissage profond.
Méthodologie
CLEVER calcule un certificat de robustesse locale en estimant la constante de Lipschitz de la fonction de sortie du réseau par rapport à l'entrée. Pour un réseau de classification, la fonction pertinente est la différence entre les logits (sorties pré-softmax) de la classe réelle et chaque classe concurrente. La constante de Lipschitz locale capture la rapidité avec laquelle ces différences de logits peuvent changer lorsque l'entrée est perturbée.
L'innovation clé réside dans l'utilisation de la théorie des valeurs extrêmes. Plutôt que de calculer directement la constante de Lipschitz globale - ce qui est impraticable pour les réseaux profonds - CLEVER échantillonne des gradients à des points aléatoires dans une boule autour de l'entrée. Il ajuste ensuite une distribution de valeurs extrêmes (spécifiquement, une distribution généralisée des valeurs extrêmes) à la magnitude maximale du gradient observée. Le paramètre de queue estimé est utilisé pour dériver une borne inférieure probabiliste sur la distorsion adversariale minimale.
Cette approche évite le besoin de programmation en nombres entiers mixtes ou de solveurs SAT utilisés dans la vérification exacte, rendant CLEVER significativement plus rapide. Le score résultant est une approximation avec un niveau de confiance, non une garantie stricte, mais il a été démontré qu'il est plus serré que de nombreuses bornes heuristiques antérieures.
Applications et comparaison
CLEVER a été utilisé pour évaluer la robustesse de divers classificateurs, y compris ceux sur des benchmarks de classification d'images comme MNIST et CIFAR-10. Dans les évaluations, il a fourni un classement plus précis de la robustesse des modèles par rapport aux métriques basées sur les attaques comme la méthode du signe du gradient rapide ou les attaques de descente de gradient projetée. Par exemple, un modèle avec un score CLEVER plus élevé a été montré comme nécessitant une perturbation plus importante pour provoquer une erreur de classification, corrélant avec une meilleure défense adversariale.
Comparé aux outils de vérification formelle tels que Reluplex ou Planet, CLEVER est moins précis mais évolue vers des réseaux avec des millions de paramètres. Il a été appliqué aux réseaux feedforward avec des activations ReLU et également aux architectures convolutionnelles, bien que les extensions aux modèles récurrents et basés sur transformeur soient moins courantes en raison du coût de calcul.
Extensions et variantes
Plusieurs extensions ont été proposées. Multi-CLEVER (2019) étend la méthode pour calculer des bornes d'erreur validées sous des perturbations aléatoires, pas seulement dans le pire cas. Robust-CLEVER intègre le score dans l'entraînement adversarial comme un régularisateur, guidant le réseau vers des frontières de décision plus plates. D'autres travaux ont adapté CLEVER pour gérer les normes de perturbation \ell_2, \ell_\infty et \ell_1 en fournissant des techniques d'estimation de Lipschitz adaptées.
Des implémentations logicielles, y compris une boîte à outils TensorFlow et PyTorch, permettent aux chercheurs de calculer des scores CLEVER sur des modèles personnalisés. La méthode a également été utilisée pour étudier la robustesse des défenses de lissage aléatoire, où le score est évalué sur le classificateur lissé.
Limites
La dépendance de CLEVER à la théorie des valeurs extrêmes introduit une incertitude statistique. La borne inférieure n'est valide qu'avec une probabilité spécifiée (par exemple, 95 %), ce qui peut ne pas être acceptable pour des applications critiques en matière de sécurité. Pour les entrées de haute dimension, le nombre d'échantillons de gradient nécessaires augmente, ce qui accroît le calcul. La méthode suppose également que la fonction de perte est localement Lipschitz, ce qui est vrai pour la plupart des réseaux standard mais peut être violé par des activations non lisses comme les fonctions échelon.
En pratique, CLEVER sous-estime parfois la robustesse - des perturbations adversariales plus petites que la borne peuvent encore être trouvées par des attaques sophistiquées. Cet écart a motivé des recherches supplémentaires sur des certificats plus rigoureux, tels que ceux basés sur les constantes de Lipschitz via la normalisation spectrale ou les fonctions barrières.
Héritage
Le score CLEVER a contribué au domaine croissant de la vérification de robustesse dans le apprentissage automatique. Il a influencé des travaux ultérieurs sur les bornes de robustesse locale sous l'égide des défenses certifiées, comme CROWN et SparseGROWN. Bien que les méthodes de vérification plus récentes offrent des bornes plus serrées, CLEVER reste une référence utile pour les études empiriques et est cité dans de nombreux articles sur la robustesse adversarial.
Voir aussi
- Exemple adversarial
- Vérification formelle
- Continuité de Lipschitz
- Robustesse des réseaux neuronaux