Aide à protéger la Grande barrière de corail avec tensorflow sur Kaggle Rejoignez Défi

Le cadre d'apprentissage neurostructuré

Neural Structured Learning (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 présenté par Bui et al. (WSDM'18) , ces signaux structurés sont utilisés pour régulariser la formation d'un réseau de neurones, ce qui oblige le modèle à apprendre des prédictions précises (en réduisant au minimum la perte surveillée), tout en maintenant en même temps l'entrée similarité structurelle (en minimisant la perte de 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).

Concept NSL

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))\) être la perte voisine, 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 Graphique d' apprentissage si les voisins sont explicitement représentés par un graphique, et accusatoire apprentissage si les voisins sont implicitement induits par la 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 tel qu'introduit par NSL pour tirer parti des signaux structurés. Premièrement, 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 soit construits, soit induits (ce dernier cas s'applique à l'apprentissage contradictoire). Ensuite, les échantillons d'apprentissage augmentés (comprenant à la fois les échantillons d'origine et leurs voisins correspondants) sont transmis au réseau de neurones pour calculer leurs plongements. La distance entre le plongement d'un échantillon et le plongement de son voisin est calculée et utilisée comme perte du voisin, qui est traitée comme un terme de régularisation et ajoutée à la perte finale. Pour une régularisation explicite basée sur les voisins, nous calculons généralement la perte de voisinage comme la distance entre l'inclusion de l'échantillon et l'inclusion du voisin. Cependant, n'importe quelle couche du réseau de neurones peut être utilisée pour calculer la perte de voisinage. D'autre part, pour la régularisation induite basée sur les voisins (contradictoire), nous calculons la perte de voisinage comme la distance entre la prédiction de sortie du voisin antagoniste induit et l'étiquette de vérité terrain.

Flux de travail NSL

Pourquoi utiliser NSL ?

NSL apporte les avantages suivants :

  • Une plus grande précision: le signal structuré (s) entre les échantillons peuvent fournir des informations qui ne sont pas toujours disponibles dans les entrées de fonction; Par conséquent, l'approche de formation commune (avec les deux signaux structurés et caractéristiques) a été démontré que de surperformer de nombreuses méthodes existantes (qui reposent sur la formation avec des fonctionnalités uniquement) sur un large éventail de tâches, telles que la classification des documents et à la classification intention sémantique ( Bui et al ., WSDM'18 & Kipf et al., ICLR'17 ).
  • Robustesse: modèles formés avec des exemples contradictoires ont été révélés robustes contre les perturbations accusatoires conçues pour induire en erreur la prévision ou la classification d'un modèle ( Goodfellow et al, ICLR'15. & Miyato et al, ICLR'16. ). Lorsque le nombre d'échantillons de formation est faible, la formation avec des exemples contradictoires contribue également à améliorer la précision des modèles ( Tsipras et al., ICLR'19 ).
  • Moins données marquées nécessaires: NSL permet d'exploiter les réseaux de neurones les données marquées et non marquées, qui prolonge le paradigme de l' apprentissage pour 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 conduit en même temps le réseau à apprendre des représentations cachées similaires pour les « échantillons voisins » qui peuvent ou non avoir des étiquettes. Cette technique a montré une grande promesse 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 pas à pas

Pour acquérir une expérience pratique de l'apprentissage structuré neuronal, nous avons des didacticiels qui couvrent divers scénarios dans lesquels des signaux structurés peuvent être explicitement donnés, construits ou induits. Voici quelques-uns:

D' autres exemples et des tutoriels peuvent être trouvés dans les exemples répertoire de notre référentiel GitHub.