2017-05-10 5 views
3

Selon les couches d'abandon de la documentation KERAS montrent des comportements différents en phase de formation et d'essai:Comportement des couches Dropout test/phase de formation

Notez que si votre modèle a un comportement différent dans la formation et phase de test (par exemple, si elle utilise Dropout, BatchNormalization, etc.), vous devrez passer l'indicateur de phase d'apprentissage à votre fonction:

Malheureusement, personne ne parle des différences réelles. Pourquoi le décrochage devrait-il se comporter différemment en phase de test? Je m'attends à ce que la couche définisse une certaine quantité de neurones à 0. Pourquoi ce comportement devrait-il dépendre de la phase d'entraînement/de test?

Répondre

3

L'abandon est utilisé dans la phase d'entraînement pour réduire le risque de surajustement. Comme vous le mentionnez, cette couche désactive certains neurones. Le modèle deviendra plus insensible aux poids des autres nœuds. Fondamentalement avec la couche de décrochage, le modèle entraîné sera la moyenne de nombreux modèles éclaircis. Consultez une explication plus détaillée.

Toutefois, lorsque vous appliquez votre modèle entraîné, vous souhaitez utiliser la puissance maximale du modèle. Vous voulez utiliser tous les neurones du réseau formé (moyen) pour obtenir la plus grande précision.

+0

Cela signifie que la suppression est désactivée en phase de test? – null

+0

exactement, il est désactivé automatiquement –