J'utilise Ubuntu 16.04, avec GPU Geforce 1080, 8 Go de mémoire GPU.Train Tensorflow avec mes propres images avec succès, mais toujours des problèmes
J'ai correctement créé des fichiers d'enregistrement TF, et j'ai formé le modèle avec succès. Cependant j'ai toujours deux problèmes.
Je ne les étapes suivantes et j'ai encore deux problèmes, me dire s'il vous plaît ce que je suis absent: -
J'utilisé VOCdevkit et je correctement créé deux fichiers qui sont: - pascal_train.record
et pascal_val.record
Ensuite,
1- A partir de cette link, j'ai utilisé les images de raton laveur, je les ai placés dans le répertoire suivant models/object_detection/VOCdevkit/VOC2012/JPEGImages
(après avoir supprimé les images précédentes). Puis, j'ai utilisé l'annotation raton laveur, je les ai placés dans le répertoire suivant models/object_detection/VOCdevkit/VOC2012/Annotation
(après avoir supprimé les précédents).
2- J'ai modifié le models/object_detection/data/pascal_label_map.pbxt
et moi avons écrit un nom de classe qui est 'raccoon'
3- je ssd_mobilenet_v1_pets.config
. Je l'ai modifié, le nombre de classe est une seule et je ne train de rien, je ssd_mobilenet_v1_coco_11_06_2017/model.ckpt
fine_tune_checkpoint: "/home/jesse/abdu-py2/models/model/ssd_mobilenet_v1_coco_11_06_2017/model.ckpt"
from_detection_checkpoint: true
4- A partir de ce link J'arrangerai ma structure de données qui est comme ça: -
models
1,1
model
1.1.1 ssd_mobilenet_v1_pets.config 1.1.2 train 1.1.3 evaluation 1.1.4 ssd_mobilenet_v1_coco_11_06_2017/model.ckpt
1,2
object_detection
1.2.1
data
qui contient (pascal_train.record, pascal_val.record et pascal_label_map.pbtxt)1.2.2
VOCdevkit
1.2.2.1 VOC2012 1.2.2.1.1 JPEGImages (my own images) 1.2.2.1.2 Annotations (raccoon annotation) 1.2.2.1.3 ImageSets 1.2.2.1.3.1 Main (raccoon_train.txt,raccoon_val.txt,raccoon_train_val.txt)
5- Maintenant, Je vais former mon modèle
(abdu-py2) [email protected]:~/abdu-py2/models$ python object_detection/train.py --logtostderr --pipeline_config_path=/home/jesse/abdu-py2/models/model/ssd_mobilenet_v1_pets.config --train_dir=/home/jesse/abdu-py2/models/model/train
Tout semble bien, je l'ai créé de nombreux fichiers comme checkpoint
et events.out.tfevents.1503337171
fichier (et autres) après plusieurs milliers d'étapes d'entraînement.
Cependant, mes deux problèmes sont les suivants: -
1- Sur la base de cette link, je ne peux pas courir l'évaluation eval.py
(pour des raisons de mémoire) en même temps avec train.py
.
2- J'ai essayé d'utiliser le fichier events.out.tfevents.1503337171
que j'ai créé à partir des étapes d'apprentissage, mais il semble qu'il n'ait pas été créé correctement.Donc, je ne sais pas où je me trompe, je pense que ma structure de données n'est pas correcte, j'ai essayé de l'arranger en fonction de ma compréhension.
Merci à l'avance
Edit: -
En ce qui concerne Q2/
j'ai tout compris comment convertir les fichiers events
et model.ckpt
fichiers (que je les ai créés à partir de processus de formation) à inference_graph_.pb
. Le inference_graph_.pb
pourrait être testé plus tard avec object_detection_tutorial.ipynb
. Pour mon cas, je l'ai essayé, mais je n'ai pas pu détecter quoi que ce soit puisque je me suis trompé quelque part pendant le processus train.py
.
Les étapes suivantes convertir les fichiers formés pour .pb
fichiers
(abdu-py2) [email protected]:~/abdu-py2/models$ python object_detection/export_inference_graph.py \
--input_type image_tensor \
--pipeline_config_path /home/jesse/abdu-py2/models/model/ssd_mobilenet_v1_pets.config \
--trained_checkpoint_prefix /home/jesse/abdu-py2/models/model/train/model.ckpt-27688 \
--output_directory /home/jesse/abdu-py2/models/model
Thx @ ncaadam Q1/J'ai une mémoire GPU 8 Go, devrais-je utiliser un autre GPU, ou il y a un autre moyen d'éviter ce problème. J'ai entraîné le modèle jusqu'à 28 000 pas. Quand j'ai commencé eval.py j'ai eu cette erreur AVERTISSEMENT: root: Les classes suivantes n'ont pas d'exemples de vérité terrain: 0 – Abduoit
J'ai édité la question, S'il vous plaît jeter un oeil, mon être je me trompe quelque part. – Abduoit
Si vous obtenez cet avertissement, cela signifie que votre modèle n'est pas encore bien entraîné. Continuez à vous entrainer aussi longtemps que vous pouvez voir des résultats sur Tensorboard qui commence à arriver assez tôt donc si cela n'arrive pas, votre entraînement n'est toujours pas correct. –