[Good First Issue][TF FE]: Support TensorScatterAdd operation for TensorFlow #25050
Labels
category: TF FE
OpenVINO TensorFlow FrontEnd
good first issue
Good for newcomers
no_stale
Do not mark as stale
Context
OpenVINO component responsible for support of TensorFlow models is called as TensorFlow Frontend (TF FE). TF FE converts a model represented in TensorFlow opset to a model in OpenVINO opset.
In order to infer TensorFlow models with TensorScatterAdd operation by OpenVINO, TF FE needs to be extended with this operation support.
What needs to be done?
For TensorScatterAdd operation support, you need to implement the corresponding loader into TF FE op directory and to register it into the dictionary of Loaders. One loader is responsible for conversion (or decomposition) of one type of TensorFlow operation.
Here is an example of loader implementation for TensorFlow
Einsum
operation:In this example,
translate_einsum_op
converts TFEinsum
into OVEinsum
.NodeContext
object passed into the loader packs all info about inputs and attributes ofEinsum
operation. The loader retrieves an attribute of the equation by using theNodeContext::get_attribute()
method, prepares input vector, createsEinsum
operation from OV opset and returns a vector of outputs.Responsibility of a loader is to parse operation attributes, prepare inputs and express TF operation via OV operations sub-graph. Example for
Einsum
demonstrates the resulted sub-graph with one operation. In PR #19007 you can see operation decomposition into multiple node sub-graph.Once you are done with implementation of the translator, you need to implement the corresponding layer tests
test_tf_TensorScatterAdd.py
and put it into layer_tests/tensorflow_tests directory. Example how to run some layer test:Example Pull Requests
#23881
Hint
Use v15 of ScatterNDUpdate
Resources
Contact points
Ticket
No response
The text was updated successfully, but these errors were encountered: