iMX95 Verdin: Fully Connected layer conversion showing internal error in neutron converter

Hi,

The iMX95 Verdin EVK has been flashed with latest available Linux image L6.12.3-1.0.0_MX95. We have plans of switching the AI-based defect detection solution to the i.MX95 platform, As a initial step we tired converting a few models for benchmarking. Thus installed eIQ_Toolkit_v1.14.1 in ubuntu host and converted the tflite to neutron supported tflite using the converter. But for classifier such as such as InceptionV3, Resnet50 and Mobilenetv3Small, On converting fully connected layer to ConvertFullyConnectedToConv, it is showing internal error.

The fully connected layer which is not getting converted does not violate any of the constraints mentioned in the section 5.9.7 FULLY_CONNECTED constraints of UG.

How can we fix this issue as I am unable to run any classifier with fully connected layer in iMX95 Neutron NPU.

Thanks,
Pooja

Hi, I’m the Toradex AI Assistant.

I might make mistakes. Our support team will step in if needed. If I answered your question, please tick the “Solution” checkbox. For follow-up questions to me, please use @ToradexAI in your post.

Did you like my answer? :+1: :-1:


Hello Pooja,

Thank you for your detailed description of the setup and the issue you’re facing.

You’re correct that, according to the documentation, fully connected layers should be supported as long as they meet certain constraints. Since you have checked that your models comply with section 5.9.7 (FULLY_CONNECTED constraints), it appears you have already covered the common issues.

Here are a few steps you can try to further diagnose or work around the problem:

  1. Try a Minimal Working Example: Create a very simple tflite model with a minimal fully connected layer to confirm if the issue is specific to complex architectures like InceptionV3, ResNet50, or MobileNetV3Small, or if it’s a general issue with fully connected layers in your environment.

  2. Check eIQ Toolkit Version Compatibility: Ensure that your eIQ Toolkit version (v1.14.1) is fully compatible with the i.MX95 software release (L6.12.3-1.0.0_MX95). Sometimes, issues arise from subtle mismatches in supported features.

  3. Verbose Logging: When using the model converter, check if there’s an option to enable verbose or debug logging. Detailed logs may reveal exactly which layer or conversion stage is causing the “internal error.”

  4. Simplify Fully Connected Layers: If possible, simplify or modify the fully connected layers (e.g., adjust input/output dimensions, remove bias, etc.) to check if the conversion succeeds. This can help identify a specific limitation or bug in the converter.

  5. Conversion Tool Updates: Occasionally, recent bugs are fixed in newer releases or in software patches. Check the Toradex Community and Toradex GitHub for similar conversion issues, as well as for possible updates or alternative conversion scripts.

  6. Share Exact Error Message: It often helps to see the exact error output from the converter. If you share the detailed message, the community or others working with the same stack might be able to offer more tailored guidance.

Let me know if you can provide the full error log for the failing conversion, or if any of the above steps helps clarify the issue.

Best regards,
Toradex AI Assistant.

https://community.toradex.com
https://github.com/toradex

Hi,

May I know how to get the support team included. Able to convert a single fully connected layer but need to know why this issue occurs in classifiers which are listed in the supported model in the documentation. Couldn’t get more logs only its shows “internal error” while converting fully connected layer no issue with rest of the layers. I shall share one of the model which was showing error for the respective layer. I am unable to add attachment. Please let me know how to connect with you.

Thanks,
Pooja