Question

Je suis pas sûr de peu sur l'optimisation d'un réseau de neurones avec 3 couches ou plus. Les données d'entrée est assez bruyant et il me semble projeter le bruit dans l'apprentissage (fort biais dans les données, 90% appartiennent à une classe sur cinq).

Cependant, je voudrais faire quelques commentaires sur l'interprétation (j'utilise 50/25/8/8 / 8neurons avec abandon (keep_prob = première couche après 0,9 cachée):

entrer la description d'image ici

Était-ce utile?

La solution

La forme overal logarithmique de votre graphique score f1 indique que l'apprentissage est efficace et économique se dirige vers un certain minimum. C'est bon. Je suppose que le bruit que vous faites allusion à l'instabilité du graphique après environ 3k itérations. Chute des coûts et la hausse de manière zig-zag

Cette allusion souvent au taux d'apprentissage étant trop grand. rétropropagation trouve le gradient droit, mais vous prenez trop grand pas et finissent par monter plutôt que de descendre le long du bord de la fonction de coût. Il est particulièrement évident quand un graphique semble osciller autour une valeur moyenne. Vous ne l'avez pas mentionné quelle valeur exacte du taux d'apprentissage que vous utilisez, mais essayer de le réduire. Un bon point de départ serait de 0,01, mais cela dépend de nombreux facteurs essayer à expérimenter.

Une autre question est peut-être une taille de lot: qui est, combien d'exemples contribuent au calcul d'un gradient. Si elle est trop grande, vous pourriez vous retrouver avec un pointage de pente moyenne dans la mauvaise direction. Et puis même une petite étape (à savoir, le faible taux d'apprentissage) ne sera pas utile. Et il pourrait à nouveau se manifeste dans un zig-zag. Si la taille du lot est l'un des paramètres essayer de le diminuer.

Le moins probable pourrait être question l'architecture encodage de votre réseau. Et surtout le nombre modeste de 8 neurones sur les dernières couches. Dans ce cas, les neurones individuels pourraient avoir un impact considérable sur la production finale. Et même les petits ajustements résultant d'une seule étape de propagation arrière pourraient retourner le signe de la valeur d'activation de ce neurone, un impact sur les résultats d'autres exemples. Essayez d'augmenter le nombre de neurones sur les dernières couches. Je vous suggère d'essayer personnellement une architecture de 50x50x50.

Hope this helps!

Licencié sous: CC-BY-SA avec attribution
scroll top