L'apprentissage structuré neuronal (NSL) se concentre sur la formation de réseaux de neurones profonds en exploitant des signaux structurés (lorsqu'ils sont disponibles) ainsi que des entrées de fonctionnalités. Comme introduit par Bui et al. (WSDM'18) , ces signaux structurés sont utilisés pour régulariser l'entraînement d'un réseau de neurones, forçant le modèle à apprendre des prédictions précises (en minimisant la perte supervisée), tout en maintenant en même temps la similarité structurelle d'entrée (en minimisant la perte du voisin , voir la figure ci-dessous). Cette technique est générique et peut être appliquée sur des architectures neuronales arbitraires (telles que les NN Feed-forward, les NN convolutifs et les NN récurrents).
Notez que l'équation de perte de voisinage généralisée est flexible et peut avoir d'autres formes que celle illustrée ci-dessus. Par exemple, nous pouvons également sélectionner\(\sum_{x_j \in \mathcal{N}(x_i)}\mathcal{E}(y_i,g_\theta(x_j))\) comme perte du voisin, qui calcule la distance entre la vérité terrain \(y_i\)et la prédiction du voisin \(g_\theta(x_j)\). Ceci est couramment utilisé dans l'apprentissage contradictoire (Goodfellow et al., ICLR'15) . Par conséquent, NSL se généralise à Neural Graph Learning si les voisins sont explicitement représentés par un graphe, et à Adversarial Learning si les voisins sont implicitement induits par une perturbation contradictoire.
Le flux de travail global pour l'apprentissage structuré neuronal est illustré ci-dessous. Les flèches noires représentent le flux de travail de formation conventionnel et les flèches rouges représentent le nouveau flux de travail introduit par NSL pour tirer parti des signaux structurés. Tout d'abord, les échantillons d'apprentissage sont augmentés pour inclure des signaux structurés. Lorsque les signaux structurés ne sont pas explicitement fournis, ils peuvent être construits ou induits (ce dernier s'applique à l'apprentissage contradictoire). Ensuite, les échantillons d'apprentissage augmentés (y compris les échantillons d'origine et leurs voisins correspondants) sont transmis au réseau neuronal pour calculer leurs intégrations. La distance entre l'intégration d'un échantillon et l'intégration de son voisin est calculée et utilisée comme perte de voisinage, qui est traitée comme un terme de régularisation et ajoutée à la perte finale. Pour une régularisation explicite basée sur le voisin, nous calculons généralement la perte de voisinage comme la distance entre l'intégration de l'échantillon et l'intégration du voisin. Cependant, n'importe quelle couche du réseau neuronal peut être utilisée pour calculer la perte de voisinage. D'autre part, pour la régularisation basée sur le voisin induite (contradictoire), nous calculons la perte de voisinage comme la distance entre la prédiction de sortie du voisin contradictoire induit et l'étiquette de vérité terrain.
Pourquoi utiliser NSL ?
NSL apporte les avantages suivants :
- Précision supérieure : le ou les signaux structurés parmi les échantillons peuvent fournir des informations qui ne sont pas toujours disponibles dans les entrées de caractéristiques ; par conséquent, l'approche de formation conjointe (avec à la fois des signaux structurés et des fonctionnalités) s'est avérée plus performante que de nombreuses méthodes existantes (qui reposent uniquement sur la formation avec des fonctionnalités) sur un large éventail de tâches, telles que la classification de documents et la classification d'intention sémantique ( Bui et al ., WSDM'18 & Kipf et al., ICLR'17 ).
- Robustesse : les modèles entraînés avec des exemples contradictoires se sont avérés robustes face aux perturbations contradictoires conçues pour induire en erreur la prédiction ou la classification d'un modèle ( Goodfellow et al., ICLR'15 & Miyato et al., ICLR'16 ). Lorsque le nombre d'échantillons d'apprentissage est faible, l'apprentissage avec des exemples contradictoires contribue également à améliorer la précision du modèle ( Tsipras et al., ICLR'19 ).
- Moins de données étiquetées requises : NSL permet aux réseaux de neurones d'exploiter à la fois les données étiquetées et non étiquetées, ce qui étend le paradigme d'apprentissage à l'apprentissage semi-supervisé . Plus précisément, NSL permet au réseau de s'entraîner à l'aide de données étiquetées comme dans le cadre supervisé, et en même temps conduit le réseau à apprendre des représentations cachées similaires pour les "échantillons voisins" qui peuvent ou non avoir des étiquettes. Cette technique s'est révélée très prometteuse pour améliorer la précision du modèle lorsque la quantité de données étiquetées est relativement faible ( Bui et al., WSDM'18 & Miyato et al., ICLR'16 ).
Tutoriels étape par étape
Pour acquérir une expérience pratique de l'apprentissage structuré neuronal, nous proposons des didacticiels couvrant divers scénarios dans lesquels des signaux structurés peuvent être explicitement donnés, construits ou induits. Voici quelques-uns:
Régularisation de graphes pour la classification de documents à l'aide de graphes naturels . Dans ce didacticiel, nous explorons l'utilisation de la régularisation des graphes pour classer les documents qui forment un graphe naturel (organique).
Régularisation de graphes pour la classification des sentiments à l'aide de graphes synthétisés . Dans ce didacticiel, nous démontrons l'utilisation de la régularisation graphique pour classer les sentiments des critiques de films en construisant (synthétisant) des signaux structurés.
Apprentissage contradictoire pour la classification d'images . Dans ce didacticiel, nous explorons l'utilisation de l'apprentissage contradictoire (où des signaux structurés sont induits) pour classer des images contenant des chiffres numériques.
Plus d'exemples et de tutoriels peuvent être trouvés dans le répertoire d' exemples de notre référentiel GitHub.