[Ubuntu eIQ Toolkit] ValueError: `name` cannot contain '/' in `eiq-trainer` with SSD MobileNet V3

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

[Ubuntu eIQ Toolkit] ValueError: `name` cannot contain '/' in `eiq-trainer` with SSD MobileNet V3

686 Views
zinet84
Contributor I

zinet84_0-1736759821912.png

 

Hi, I'm currently using the eIQ Toolkit v1.13.1 to train an object detection model with the ssd_mobilenet_v3 plugin on BDD100K dataset. When I run the eiq-trainer command, I encounter the following error:

ValueError: Argument `name` must be a string and cannot contain character '/'. Received: name=Conv/BatchNorm (of type <class 'str'>)

From the traceback, it seems that the issue occurs during the initialization of a BatchNormalization layer, where the layer name includes a / character (e.g., Conv/BatchNorm). The specific line triggering this error appears to be related to layer naming inside the ssd_mobilenet_v3 plugin.

Command I used:

eiq-trainer --detection \
            --input_shape=320,320,3 \
            --batch_size=16 \
            --epochs=50 \
            --tune=ssd_mobilenet_v3 \
            --dataset=/path/to/bdd100k.eiqp \
            --optimizer=Adam \
            --lr=0.001 \
            --initialization=he \
            --initialization_type=normal \
            --initialization_seed=1 \
            --loss=sigmoid_loss

My questions:

  1. Is there a way to prevent the layer names from including special characters like /?
  2. Should I modify the ssd_mobilenet_v3 plugin code to replace / with an underscore (_) in layer names?
  3. Is this a known issue with the current version of eIQ Toolkit, and would updating the toolkit solve this problem?

I would appreciate any guidance on how to resolve this issue. Thank you in advance!

0 Kudos
Reply
1 Reply

611 Views
zinet84
Contributor I

I solved this problem by registering "TF_USE_LEGACY_KERAS=1" in environment variable.

0 Kudos
Reply