CasiaFan / SSD_EfficientNet

SSD using TensorFlow object detection API with EfficientNet backbone
63 stars 10 forks source link

"blocks_0/batch_normalization_v1/beta not found in checkpoint" when I exported Inference graph #11

Open seifer08ms opened 5 years ago

seifer08ms commented 5 years ago

Hi, Thanks for for your open source efficientNet-ssd structure. I configure it according to your instructions. All steps and compilation are fine. But the following mistakes occurred in the exporting the graph:

Key ssd_efficient_net_feature_extractor/efficientnet-b0/blocks_0/batch_normalization_v1/beta not found in checkpoint
[[node save/RestoreV2 (defined at /usr/local/lib/python3.6/dist-packages/object_detection-0.1-py3.6.egg/object_detection/exporter.py:323) ]]

You can find the entire log here.

PythonImageDeveloper commented 5 years ago

@seifer08ms Hi, Did you comment the fine_tune_checkpoint from config file?

seifer08ms commented 5 years ago

@seifer08ms Hi, Did you comment the fine_tune_checkpoint from config file?

Yes, I was training the model without fine_tune_checkpoint. Nothing wrong with the single card training. But if I use multiple card training or exporting the graph from the trained model, tensorflow will report the variables were missing.

I just found that Tensorflow added the _1 suffix to ssd_efficient_net_feature_extractor during saving checkpoint. This lead to the names of variables stored in the graph structure were changed to ssd_efficient_net_feature_extractor_1/XXXX. Could you kindly give me a hint how could I fix this ?

youwh-PIRI commented 5 years ago

Hello, have you solved your problem? I have the same problem as you. Can you give me a thought? Thank you.