Maison > Périphériques technologiques > IA > le corps du texte

Comprendre la méthode de formation des auto-encodeurs : commencer par l'exploration architecturale

WBOY
Libérer: 2024-01-24 15:36:05
avant
673 Les gens l'ont consulté

Les données bruyantes sont l'un des problèmes courants de l'apprentissage automatique, et les encodeurs automatiques sont une méthode efficace pour résoudre ces problèmes. Cet article présentera la structure et la méthode de formation correcte des auto-encodeurs.

Un auto-encodeur est un réseau neuronal artificiel d'apprentissage non supervisé utilisé pour apprendre l'encodage des données. Son objectif est de capturer les caractéristiques clés de l'image d'entrée en entraînant le réseau et en le convertissant en une représentation de faible dimension, souvent utilisée pour le traitement de réduction de dimensionnalité.

Architecture d'Autoencoder

Autoencoder se compose de 3 parties :

1 Encodeur : un module qui compresse les données d'entrée de l'ensemble de test de validation dans une représentation codée, qui est généralement plus grande que l'entrée. données Plusieurs ordres de grandeur plus petits.

2. Goulot d'étranglement : Le module qui contient une représentation compressée des connaissances et constitue donc la partie la plus importante du réseau.

3. Décodeur : Un module qui aide le réseau à « décompresser » la représentation des connaissances et à reconstruire les données à partir de leur forme codée. Le résultat est ensuite comparé à la vérité terrain.

L'architecture entière ressemble à ceci, comme indiqué ci-dessous :

Comprendre la méthode de formation des auto-encodeurs : commencer par lexploration architecturale

La relation entre l'encodeur, le goulot d'étranglement et le décodeur

Encodeur

L'encodeur est un ensemble de blocs convolutifs suivi d'un module de mise en pool, qui compresse l'entrée du modèle dans une partie compacte appelée goulot d'étranglement.

Après le goulot d'étranglement se trouve le décodeur, qui consiste en une série de modules de suréchantillonnage pour restaurer les fonctionnalités compressées sous forme d'image. Dans le cas d'un simple auto-encodeur, la sortie devrait être la même que l'entrée à bruit réduit.

Cependant, pour les auto-encodeurs variationnels, il s'agit d'une toute nouvelle image formée à partir des informations fournies par le modèle en entrée.

Bottleneck

En tant que partie la plus importante du réseau neuronal, il limite le flux d'informations de l'encodeur vers le décodeur, ne laissant passer que les informations les plus importantes.

Étant donné que le goulot d'étranglement est conçu pour capturer les informations sur les caractéristiques possédées par l'image, nous pouvons dire que le goulot d'étranglement aide à former la représentation des connaissances de l'entrée. La structure codeur-décodeur nous aide à extraire plus d'informations de l'image sous forme de données et à établir des corrélations utiles entre les différentes entrées du réseau.

Le goulot d'étranglement de la représentation compressée en entrée empêche en outre le réseau neuronal de mémoriser l'entrée et de surajuster les données. Plus le goulot d’étranglement est petit, plus le risque de surapprentissage est faible. Mais de très petits goulots d'étranglement limitent la quantité d'informations pouvant être stockées, ce qui augmente le risque de fuite d'informations importantes hors de la couche de pooling de l'encodeur.

Decoder

Enfin, le décodeur est un ensemble de blocs de suréchantillonnage et de convolution utilisés pour reconstruire la sortie du goulot d'étranglement.

Étant donné que l'entrée du décodeur est une représentation de connaissances compressée, le décodeur agit comme un "décompresseur" et reconstruit l'image à partir de ses propriétés latentes.

Après avoir compris les résultats et les relations de l'auto-encodeur, voyons comment entraîner correctement l'auto-encodeur.

Comment entraîner un auto-encodeur ?

Il y a 4 hyperparamètres qui doivent être définis avant d'entraîner l'auto-encodeur :

1. Taille du code

La taille du code ou la taille du goulot d'étranglement est l'hyperparamètre le plus important pour régler l'auto-encodeur. La taille du goulot d'étranglement détermine la quantité de données qui doivent être compressées. Cela peut également être utilisé comme terme de régularisation.

2. Nombre de couches

Comme pour tous les réseaux de neurones, un hyperparamètre important pour le réglage des auto-encodeurs est la profondeur de l'encodeur et du décodeur. Alors que les profondeurs plus élevées augmentent la complexité du modèle, les profondeurs plus faibles traitent plus rapidement.

3. Nombre de nœuds par couche

Le nombre de nœuds par couche définit le poids que nous utilisons pour chaque couche. En règle générale, le nombre de nœuds diminue avec chaque couche suivante dans un auto-encodeur, car l'entrée de chacune de ces couches devient plus petite d'une couche à l'autre.

4. Perte de reconstruction

La fonction de perte que nous utilisons pour entraîner l'auto-encodeur dépend fortement des types d'entrée et de sortie auxquels nous voulons que l'auto-encodeur s'adapte. Si nous traitons de données d'image, les fonctions de perte de reconstruction les plus populaires sont la fonction de perte MSE et la fonction de perte L1. Nous pouvons également utiliser l'entropie croisée binaire comme perte de reconstruction si l'entrée et la sortie sont dans la plage [0,1], comme dans l'ensemble de données MNIST.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:163.com
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal