Le transfert d'apprentissage VGG16 ne fonctionne pas comme prévu. (Détecter les tacos comme des hamburgers)
-
02-11-2019 - |
Question
Je suis nouveau dans ce domaine de l'apprentissage automatique, pour tester, je voulais faire un projet simple. Créez un CNN capable de reconnaître les images du hamburger. Comme je n'ai pas la possibilité de collecter plus de 10 000 images de hamburgers, j'ai utilisé un modèle existant pour former ce dont j'ai besoin ... J'ai utilisé VGG16.
C'est le cahier que j'utilise, pour transférer l'apprentissage. Je forment le modèle à détecter les chats et les hamburgers.https://github.com/estevesegura/detecting-food/blob/master/src/burgercnn.ipynb
Si le cahier ne se charge pas, le code entier est également làhttps://gist.github.com/estevesegura/2be156ba5431fc42fb8ac13eb0506c82
Former
Chat: 1024 IMGS
Burger: 1097 IMGS
Validation
Chat: 416 IMGS
Burger: 326 IMGS
Quand j'essaie de prédire des photos de hamburgers, cela donne généralement un bon résultat ... mais aussi détecte comme des photos de hamburger de tacos (99% acuraccy). Est-ce un problème de sur-ajustement? Ai-je besoin de plus d'images? Est-ce que je fais l'apprentissage du transfert de manière correcte?
Mon objectif sera de détecter s'il y a un hamburger sur la photo ou non.
L'une des recommandations qu'ils m'ont formulées est de former une troisième classe avec des objets complètement aléatoires qui ne se répètent pas ... Cela peut-il aider? Au cas où je pourrais aider? Comment?
Pas de solution correcte