La description des données vectorielles de support (SVDD) est l'une des méthodes de limites les plus populaires utilisées dans l'apprentissage automatique pour la détection d'anomalies. L'objectif de SVDD est de créer un modèle qui capture les caractéristiques des données normales (non anormales), puis identifie les instances qui s'écartent de ces caractéristiques en tant qu'anomalies.
La détection d'anomalies est largement utilisée dans diverses applications, telles que la détection de fraude pour les cartes de crédit, les assurances ou les soins de santé, la détection d'intrusion pour la cybersécurité, la détection de pannes dans les systèmes critiques pour la sécurité et la surveillance militaire des activités ennemies.
Imaginez que vous disposez d’un ensemble de points de données et que la plupart d’entre eux représentent un comportement normal. SVDD vise à créer une limite autour de ces points de données normaux de telle sorte que la majorité des données se situent à l'intérieur de cette limite. Tout point de données en dehors de cette limite est alors considéré comme une anomalie ou une valeur aberrante.
En d’autres termes, nous apprenons à un ordinateur à reconnaître à quoi ressemble « normal » sur la base d’un ensemble d’exemples, puis à être capable de signaler quelque chose comme « inhabituel » s’il ne correspond pas au modèle appris.
Dans cet article, nous approfondissons les concepts fondamentaux du SVDD, en explorant l'utilisation d'informations privilégiées pendant la phase de formation – une technique visant à améliorer la précision de la classification dans les scénarios de détection d'anomalies.
Comme indiqué ci-dessus, une approche classique de la détection d'anomalies consiste à décrire le comportement attendu (« normal ») à l'aide de techniques de classification à une classe, c'est-à-dire à construire une description d'un état « normal » à l'aide de nombreux exemples, par exemple en décrivant un lieu géométrique. de modèles de formation dans un espace de fonctionnalités. Si un nouveau modèle de test n’appartient pas à la classe « normale », nous le considérons comme anormal.
Pour construire un domaine « normal », nous pouvons utiliser des approches bien connues telles que la Support Vector Domain Description.
Nous commençons par une brève explication du SVDD original sans utiliser d'informations privilégiées. Nous avons un échantillon iid (x1, . . . , xl)
L'idée principale de cet algorithme est de séparer une partie significative des échantillons considérés comme « normaux » de ceux considérés comme « anormaux » dans un certain sens. Nous désignons par φ(·) le mappage du point de données d'origine vers un espace de fonctionnalités plus expressif, par exemple, en ajoutant des fonctionnalités polynomiales, en appliquant une extraction de fonctionnalités avec un réseau neuronal profond, ou même en supposant que le mappage se fait dans un espace de dimension infinie.
Soit a un point dans l'image de la carte des caractéristiques et R une valeur positive. Un motif x appartient à une classe "normale" s'il est à l'intérieur de la sphère ∥a − φ(x)∥ ≤ R. Pour trouver le centre a
et le rayon R
on résout le problème d'optimisation :
Ici ξ est la distance du xi, situé hors de la sphère, à la surface de la sphère. Si un point est à l'intérieur de la sphère on considère ξi = 0. La variable R ne peut être considérée comme un rayon que si l'on exige sa positivité. Cependant, on peut facilement prouver que cette condition est automatiquement remplie si ν ∈ (0, 1), et pour ν ̸ ∈ (0, 1), la solution soit contient tous les points, soit n'en contient aucun.
Comme vous l'aurez probablement deviné, puisque nous avons un support au nom de l'algorithme, nous allons résoudre le double problème :
Ici, nous remplaçons le produit scalaire (φ(xi) · φ(xj )) par le noyau correspondant K(xi, xj). Nous pouvons calculer a et R en utilisant n'importe quel xi tel que αi > 0
Sur cette base, nous pourrions définir la fonction de décision :
Si f(x) > 0, alors un motif x est situé en dehors de la sphère et considéré comme anormal. Nous pourrions également remarquer que f(x) renvoie la valeur et ajuster le seuil pour atteindre un niveau cible de valeurs vraies positives et vraies négatives.
Pour la machine à vecteurs de support originale à deux classes, un algorithme créant une limite optimale entre différentes classes de points de données,
Donnons quelques exemples d’informations privilégiées. Si nous résolvons un problème de classification d’images, alors comme information privilégiée, nous pouvons utiliser une description textuelle d’image. Dans le cas de la détection d'un malware, nous pouvons utiliser un code source du malware pour obtenir des fonctionnalités supplémentaires pour la classification.
De telles informations ne sont pas disponibles pendant la phase de test (par exemple, elles pourraient être prohibitives ou trop coûteuses à obtenir) lorsque nous utilisons le modèle entraîné pour la détection et la classification des anomalies. Néanmoins, il peut être utilisé pendant la phase de formation.
Supposons que les données d'entraînement arrivent par paires (xi, xi*). Par exemple, imaginez que nous essayions de détecter des anomalies dans des images radiographiques. Nous avons à la fois l'image elle-même et la description du médecin. Généralement, une description textuelle est largement suffisante mais nécessite une aide supplémentaire. Peuvent-ils être utilisés pendant la formation du modèle mais uniquement faire des prédictions à l’aide d’images ? Il est possible d'utiliser ces informations supplémentaires pour améliorer la détection.
Dans la formulation précédente, nous avons une erreur sous la forme de ξi. supposons que les données privilégiées soient si bonnes qu'elles pourraient prédire la taille d'une erreur :
Nous pourrions considérer cela comme un professeur intelligent qui dit pendant la formation qu'on ne peut pas obtenir la petite erreur avec cette valeur. Il est raisonnable de se concentrer sur d’autres exemples plus précieux.
Maintenant, écrivons cette équation semblable à un monstre :
Ici γ est un paramètre de régularisation pour l'approximation linéaire des variables de relâchement. ζi sont des variables instrumentales qui empêchent que les motifs appartenant à un demi-plan « positif » soient pénalisés. Notez que si γ tend vers l’infini, alors la solution est proche de la solution originale de SVDD.
Pour éviter les complications liées à la fonction de Lagrange, notez la forme double de ce problème :
Ici, nous remplaçons le produit scalaire (φ* (xi* ) · φ*(xj* )) par la fonction noyau correspondante K* (xi*, xj*). Au final, la fonction de décision a la même forme que dans le cas du SVDD original :
Notez que bien qu'elle soit légèrement plus effrayante que le problème d'origine, cette tâche est un type spécifique d'optimisation appelé optimisation quadratique et peut être facilement résolue par des approches standard comme la fonction de barrière logarithmique.
L'approche SVDD originale se concentre sur la construction d'une frontière autour de points de données normaux dans un espace de grande dimension. Cependant, la théorie SVDD+ introduit la notion d’informations privilégiées pendant la phase de formation pour améliorer la précision de la classification.
Les informations privilégiées, non disponibles lors des tests, peuvent être utilisées pendant la formation pour fournir des informations supplémentaires, améliorant ainsi la capacité du modèle à détecter les anomalies. L'intégration d'informations privilégiées implique une modification de l'algorithme SVDD original, lui permettant de prendre en compte des données supplémentaires lors de la formation, telles que des descriptions textuelles accompagnant les images dans la détection d'anomalies médicales.
L'inclusion d'informations privilégiées est présentée comme une forme d'orientation intelligente, semblable à celle d'un enseignant informé fournissant des informations précieuses pour améliorer l'apprentissage du modèle. La formulation SVDD+ modifiée implique une tâche d’optimisation quadratique, résoluble grâce à des approches standard telles que la fonction barrière logarithmique. Malgré la complexité introduite par l’inclusion d’informations privilégiées, la fonction de décision dans la théorie SVDD+ conserve une forme similaire à celle du SVDD original, facilitant ainsi sa mise en œuvre pratique.
En résumé, la théorie SVDD+ présente une voie prometteuse pour améliorer la détection des anomalies en exploitant des informations privilégiées pendant la phase de formation, offrant des applications potentielles dans divers domaines, notamment la classification d'images et la détection de logiciels malveillants.