J'ai un modèle de CNN multiclasse très basique pour classer les véhicules dans 4 classes J'ai un jeu de données non équilibré, qui a la distribution suivante: p> pour cette raison, j'ai utilisé des poids de classe pour atténuer ce déséquilibre: P > [Pickup, Berline, SUV, VAN] CODE> que j'ai écrit à l'aide de TENSORFLOW 2.0 TF.KERAS:
tf.Tensor(
[[ 42 85 109 3]
[ 72 137 177 4]
[ 91 171 228 11]
[ 9 12 16 1]], shape=(4, 4), dtype=int32)
tf.keras.losses.categoricalcrossentropie (de_logits = true) code> li>
optimiseur = tf.optimizers.adam code> li>
test_images = np.array([x[0].numpy() for x in list(labeled_ds_test)])
test_labels = np.array([x[1].numpy() for x in list(labeled_ds_test)])
test_predictions = model.predict(test_images, batch_size=32)
print(tf.math.confusion_matrix(tf.argmax(test_labels, 1), tf.argmax(test_predictions, 1)))
3 Réponses :
igree @gallen. Il y a plusieurs raisons qui peuvent provoquer un survêtement et plusieurs méthodes de prévention du survêtement. L'une des bonnes solutions est l'ajout d'abandon entre les couches. Vous pouvez voir Stackoverflow Réponse et Article VertaScience P>
Il y a un survêtement bien sûr mais répondons aux questions. P>
Pour la première question, le faible nombre de données de validation joue un rôle pour la raison pour laquelle la perte est inférieure aux données de formation que la perte est la somme de toutes les différences de Quant à la deuxième question Comment la précision du test peut-elle être inférieure à celle attendue, même si la validation ne montre aucun signe de survêtement? P>
La distribution du jeu de validation doit être identique à celle du test de test pour ne pas être miss. P>
Donc, mon conseil est de vérifier la distribution du train, de la validation, des jeux de données de test séparément. assurez-vous qu'ils sont les mêmes. P> y_true code> et
y_prued code>. p>
Vous devez diviser correctement votre jeu de données, une formation de 70% et une validation de 30%, puis vérifiez votre modèle sur un nouvel ensemble de données comme des données de test celles-ci pourraient être utiles car l'apprentissage automatique est tout au sujet des essais et des erreurs. P>
Lorsque la précision de la formation est élevée et que la précision de la prédiction est faible, c'est un signe sûr de survoler. Je recommande de regarder dans les causes et les solutions de survêtement.