Conversation
Signed-off-by: Anoob Anto Kodankandath <[email protected]>
| {"REDUCE_PROD", translate_reduce_op<opset10::ReduceProd>}, | ||
| {"RELU", translate_unary<opset10::Relu>}, | ||
| // RELU_0_TO_1 | ||
| {"RELU_0_TO_1", DEQUANTIZE_INPUTS(translate_relu_0_to_1_op)}, |
There was a problem hiding this comment.
can we have layer test for it?
There was a problem hiding this comment.
When trying to add layer test for RELU_0_TO_1 op, I noticed the tflite model generated does not have that op.
When I tried the EMBEDDING_LOOKUP layer_test for reference, I noticed even that test is not hitting the op implementation, but rather taking the gather op path.
For debugging, I tried adding converter.target_spec.supported_ops = [tf.lite.OpsSet.TFLITE_BUILTINS] along with the tf.nn.embedding_lookup().
But it still generated GATHER op, not EMBEDDING_LOOKUP.
As I understand, this is the TFLiteLayerTest pipeline:
TensorFlow Graph => TFLite Converter => TFLite Model
This requires:
- The operation must exist in TensorFlow's op registry
- The TFLite converter must know how to map it to a TFLite builtin op
- The TFLite builtin op must exist in the TFLite schema
Issues with these ops:
EMBEDDING_LOOKUP: There is no EmbeddingLookup operation in TensorFlow's core ops. The tf.nn.embedding_lookup() function creates a Gather op.
RELU_0_TO_1: This op doesn't have a corresponding TensorFlow operation.
Details:
Tickets: