Open itssp98 opened 5 years ago
Thank you for your post. We noticed you have not filled out the following field in the issue template. Could you update them if they are relevant in your case, or leave them as N/A? Thanks. What is the top-level directory of the model you are using Have I written custom code OS Platform and Distribution TensorFlow installed from TensorFlow version Bazel version CUDA/cuDNN version GPU model and memory Exact command to reproduce
Do you a have the label_map.pbtxt in training directory with all your labels included?
Yes i have label_map.pbtxt in training directory with all my labels.
What is the top-level directory of the model you are using : object_detection Have I written custom code : No OS Platform and Distribution : Windows 10 TensorFlow installed from : Using pip TensorFlow version : 1.8.0 Bazel version : N/A CUDA/cuDNN version : N/A GPU model and memory : N/A Exact command to reproduce N/A
This is a parsing error when parsing your config file. Double check that.
Also trying sycning to latest and use model_main.py if possible.
This is a parsing error when parsing your config file. Double check that.
here is my config file can you please help me to identify error.
` model { ssd { num_classes: 2 # Set this to the number of different label classes box_coder { faster_rcnn_box_coder { y_scale: 10.0 x_scale: 10.0 height_scale: 5.0 width_scale: 5.0 } } matcher { argmax_matcher { matched_threshold: 0.5 unmatched_threshold: 0.5 ignore_thresholds: false negatives_lower_than_unmatched: true force_match_for_each_row: true } } similarity_calculator { iou_similarity { } } anchor_generator { ssd_anchor_generator { num_layers: 6 min_scale: 0.2 max_scale: 0.95 aspect_ratios: 1.0 aspect_ratios: 2.0 aspect_ratios: 0.5 aspect_ratios: 3.0 aspect_ratios: 0.3333 reduce_boxes_in_lowest_layer: true } } image_resizer { fixed_shape_resizer { height: 300 width: 300 } } box_predictor { convolutional_box_predictor { min_depth: 0 max_depth: 0 num_layers_before_predictor: 0 use_dropout: false dropout_keep_probability: 0.8 kernel_size: 3 box_code_size: 4 apply_sigmoid_to_scores: false conv_hyperparams { activation: RELU_6, regularizer { l2_regularizer { weight: 0.00004 } } initializer { truncated_normal_initializer { stddev: 0.03 mean: 0.0 } } } } } feature_extractor { type:'ssd_inception_v2' # Set to the name of your chosen pre-trained model min_depth: 16 depth_multiplier: 1.0 conv_hyperparams { activation: RELU_6, regularizer { l2_regularizer { weight: 0.00004 } } initializer { truncated_normal_initializer { stddev: 0.03 mean: 0.0 } } batch_norm { train: true, scale: true, center: true, decay: 0.9997, epsilon: 0.001, } } override_base_feature_extractor_hyperparams: true } loss { classification_loss { weighted_sigmoid { } } localization_loss { weighted_smooth_l1 { } } hard_example_miner { num_hard_examples: 3000 iou_threshold: 0.99 loss_type: CLASSIFICATION max_negatives_per_positive: 3 min_negatives_per_image: 0 } classification_weight: 1.0 localization_weight: 1.0 } normalize_loss_by_num_matches: true post_processing { batch_non_max_suppression { score_threshold: 1e-8 iou_threshold: 0.6 max_detections_per_class: 100 max_total_detections: 100 } score_converter: SIGMOID } } }
train_config: { batch_size: 12 # Increase/Decrease this value depending on the available memory (Higher values require more memory and vice-versa) optimizer { rms_prop_optimizer: { learning_rate: { exponential_decay_learning_rate { initial_learning_rate: 0.004 decay_steps: 800720 decay_factor: 0.95 } } momentum_optimizer_value: 0.9 decay: 0.9 epsilon: 1.0 } } fine_tune_checkpoint: "C:/Project/Tensorflow/workspace/training_demo/pre-trained-model/model.ckpt" # Path to extracted files of pre-trained model from_detection_checkpoint: true
# empirically found to be sufficient enough to train the pets dataset. This
# effectively bypasses the learning rate schedule (the learning rate will
# never decay). Remove the below line to train indefinitely.
num_steps: 200000
data_augmentation_options {
random_horizontal_flip {
}
}
data_augmentation_options {
ssd_random_crop {
}
}
}
train_input_reader: { tf_record_input_reader { input_path: "C:/Project/Tensorflow/workspace/training_demo/annotations/train.record" # Path to training TFRecord file } label_map_path: "C:/Project/Tensorflow/workspace/training_demo/annotations/label_map.pbtxt" # Path to label map file }
eval_config: { num_examples: 8000
# Remove the below line to evaluate indefinitely.
max_evals: 10
}
eval_input_reader: { tf_record_input_reader { input_path: "C:/Project/Tensorflow/workspace/training_demo/annotations/test.record" # Path to testing TFRecord } label_map_path: "C:/Project/Tensorflow/workspace/training_demo/annotations/label_map.pbtxt" # Path to label map file shuffle: false num_readers: 1 }`
And this is my label_map.pbtxt
item { id: 1 name: 'green' } item { id: 2 name: 'red' }
Hello, I also encountered this problem, did you solve it? @itssp98
C:\Project\workspace\training_demo>python train.py --logtostderr --train_dir=training/ --pipeline_config_path=training/ssd_inception_v2_coco.config WARNING:tensorflow:From C:\Users\Admin\AppData\Local\Programs\Python\Python36\Lib\tensorflow\python\platform\app.py:126: main (from main) is deprecated and will be removed in a future version. Instructions for updating: Use object_detection/model_main.py. Traceback (most recent call last): File "train.py", line 184, in
tf.app.run()
File "C:\Users\Admin\AppData\Local\Programs\Python\Python36\Lib\tensorflow\python\platform\app.py", line 126, in run
_sys.exit(main(argv))
File "C:\Users\Admin\AppData\Local\Programs\Python\Python36\Lib\tensorflow\python\util\deprecation.py", line 250, in new_func
return func(*args, **kwargs)
File "train.py", line 93, in main
FLAGS.pipeline_config_path)
File "C:\Project\Tensorflow\models\research\object_detection\utils\config_util.py", line 98, in get_configs_from_pipeline_file
text_format.Merge(proto_str, pipeline_config)
File "C:\Users\Admin\AppData\Local\Programs\Python\Python36\Lib\google\protobuf\text_format.py", line 533, in Merge
descriptor_pool=descriptor_pool)
File "C:\Users\Admin\AppData\Local\Programs\Python\Python36\Lib\google\protobuf\text_format.py", line 587, in MergeLines
return parser.MergeLines(lines, message)
File "C:\Users\Admin\AppData\Local\Programs\Python\Python36\Lib\google\protobuf\text_format.py", line 620, in MergeLines
self._ParseOrMerge(lines, message)
File "C:\Users\Admin\AppData\Local\Programs\Python\Python36\Lib\google\protobuf\text_format.py", line 635, in _ParseOrMerge
self._MergeField(tokenizer, message)
File "C:\Users\Admin\AppData\Local\Programs\Python\Python36\Lib\google\protobuf\text_format.py", line 679, in _MergeField
name = tokenizer.ConsumeIdentifierOrNumber()
File "C:\Users\Admin\AppData\Local\Programs\Python\Python36\Lib\google\protobuf\text_format.py", line 1152, in ConsumeIdentifierOrNumber
raise self.ParseError('Expected identifier or number, got %s.' % result)
google.protobuf.text_format.ParseError: 1:1 : Expected identifier or number, got .