Turn on suggestions

Auto-suggest helps you quickly narrow down your search results by suggesting possible matches as you type.

Showing results for

- Intel Community
- Software
- Software Development SDKs and Libraries
- Intel® Distribution of OpenVINO™ Toolkit
- Tensorflow issue missing operation

- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Mute
- Printer Friendly Page

Mspiz

New Contributor I

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content

09-03-2018
11:39 AM

112 Views

Tensorflow issue missing operation

Hi,

After trained and freez my network in the transformation step I have :

Model Optimizer version: 1.2.185.5335e231

[ ERROR ] List of operations that cannot be converted to IE IR:

[ ERROR ] Pow (16)

[ ERROR ] pow

[ ERROR ] pow_1

[ ERROR ] pow_2

[ ERROR ] pow_3

[ ERROR ] pow_4

[ ERROR ] pow_5

[ ERROR ] pow_6

[ ERROR ] pow_7

[ ERROR ] pow_8

[ ERROR ] pow_9

[ ERROR ] pow_10

[ ERROR ] pow_11

[ ERROR ] pow_12

[ ERROR ] pow_13

[ ERROR ] pow_14

[ ERROR ] pow_15

[ ERROR ] Part of the nodes was not translated to IE. Stopped.

So, my solution is to create extension file .py to overwrite the missing operation.

import networkx as nx

from mo.front.common.replacement import FrontReplacementOp

from mo.ops.power import Power

from mo.graph.graph import Node

class pow(FrontReplacementOp):op = "Pow"

enabled = Truedef replace_op(self, graph: nx.MultiDiGraph, node: Node):

p = Power(graph, dict(scale=2, name=node.name + '/pow_'))

out_node = p.create_node([node.in_node(0)])

return [out_node.id]

The file is execute and works.

Now, model Optimizer is able to create IR model, but the results are little bit different as my expectation.

Is this a right solution?

Link Copied

2 Replies

Severine_H_Intel

Employee

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content

09-04-2018
12:48 AM

112 Views

Dear Carmine,

I guess that the mistake is at the line below, you have scale while it should be power. With scale=2, your operation was a multiply by 2 instead of a power of 2.

p = Power(graph, dict(**power**=2, name=node.name + '/pow_'))

Best,

Severine

Mspiz

New Contributor I

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content

09-05-2018
10:05 AM

112 Views

Topic Options

- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page

For more complete information about compiler optimizations, see our Optimization Notice.