Lines Matching refs:node
88 node = self.name_node_dict[name]
90 dtype = node.attr['dtype'].type
92 dtype = node.attr['T'].type
94 if 'shape' in node.attr:
95 dims[0] = node.attr['shape'].shape.dim[0].size
96 dims[1] = node.attr['shape'].shape.dim[1].size
97 dims[2] = node.attr['shape'].shape.dim[2].size
98 dims[3] = node.attr['shape'].shape.dim[3].size
148 def dump_complex_conv2d_to_file(self, node, f):
149 assert(node.op == 'Conv2D')
151 self.converted_nodes.add(node.name)
153 scope_name = TFConverter.get_scope_name(node.name)
167 padding = node.attr['padding'].s.decode("utf-8")
184 np.array([self.op2code[node.op], dilation, padding, self.conv_activations[activation], in_channels, out_channels, filter_height, has_bias], dtype=np.uint32).tofile(f)
203 def dump_dense_to_file(self, node, f):
204 assert(node.op == 'MatMul')
206 self.converted_nodes.add(node.name)
208 scope_name = TFConverter.get_scope_name(node.name)
237 np.array([self.op2code[node.op], self.conv_activations[activation], in_channels, out_channels, has_bias], dtype=np.uint32).tofile(f)
255 def dump_simple_conv2d_to_file(self, node, f):
256 assert(node.op == 'Conv2D')
258 self.converted_nodes.add(node.name)
260 node0 = self.name_node_dict[node.input[0]]
261 node1 = self.name_node_dict[node.input[1]]
264 input_name = node.input[1]
267 input_name = node.input[0]
283 padding = node.attr['padding'].s.decode("utf-8")
284 np.array([self.op2code[node.op], dilation, self.conv_paddings[padding], self.conv_activations['None'],
289 output_operand_index = self.add_operand(node.name, Operand.IOTYPE_OUTPUT)
293 def dump_depth2space_to_file(self, node, f):
294 assert(node.op == 'DepthToSpace')
296 block_size = node.attr['block_size'].i
297 np.array([self.op2code[node.op], block_size], dtype=np.uint32).tofile(f)
298 self.converted_nodes.add(node.name)
299 input_operand_index = self.add_operand(node.input[0], Operand.IOTYPE_INPUT)
300 output_operand_index = self.add_operand(node.name, Operand.IOTYPE_OUTPUT)
304 def dump_mirrorpad_to_file(self, node, f):
305 assert(node.op == 'MirrorPad')
307 mode = node.attr['mode'].s
309 np.array([self.op2code[node.op], mode], dtype=np.uint32).tofile(f)
310 pnode = self.name_node_dict[node.input[1]]
314 self.converted_nodes.add(node.name)
315 input_operand_index = self.add_operand(node.input[0], Operand.IOTYPE_INPUT)
316 output_operand_index = self.add_operand(node.name, Operand.IOTYPE_OUTPUT)
320 def dump_maximum_to_file(self, node, f):
321 assert(node.op == 'Maximum')
323 ynode = self.name_node_dict[node.input[1]]
325 np.array([self.op2code[node.op]], dtype=np.uint32).tofile(f)
327 self.converted_nodes.add(node.name)
328 input_operand_index = self.add_operand(node.input[0], Operand.IOTYPE_INPUT)
329 output_operand_index = self.add_operand(node.name, Operand.IOTYPE_OUTPUT)
333 def dump_mathbinary_to_file(self, node, f):
335 self.converted_nodes.add(node.name)
336 i0_node = self.name_node_dict[node.input[0]]
337 i1_node = self.name_node_dict[node.input[1]]
338 np.array([self.op2code['MathBinary'], self.mathbin2code[node.op]], dtype=np.uint32).tofile(f)
360 output_operand_index = self.add_operand(node.name, Operand.IOTYPE_OUTPUT)
364 def dump_mathunary_to_file(self, node, f):
366 self.converted_nodes.add(node.name)
367 i0_node = self.name_node_dict[node.input[0]]
368 np.array([self.op2code['MathUnary'], self.mathun2code[node.op]], dtype=np.uint32).tofile(f)
371 output_operand_index = self.add_operand(node.name, Operand.IOTYPE_OUTPUT)
375 def dump_avg_pool_to_file(self, node, f):
376 assert(node.op == 'AvgPool')
378 self.converted_nodes.add(node.name)
379 node0 = self.name_node_dict[node.input[0]]
380 strides = node.attr['strides']
388 filter_node = node.attr['ksize']
389 input_name = node.input[0]
397 padding = node.attr['padding'].s.decode("utf-8")
398 np.array([self.op2code[node.op], strides, self.pool_paddings[padding], filter_height],
402 output_operand_index = self.add_operand(node.name, Operand.IOTYPE_OUTPUT)
407 for node in self.nodes:
408 if node.name in self.converted_nodes:
412 if self.in_conv2d_scope(node.name):
413 if node.op == 'Conv2D':
414 self.dump_complex_conv2d_to_file(node, f)
416 if self.in_dense_scope(node.name):
417 if node.op == 'MatMul':
418 self.dump_dense_to_file(node, f)
422 if node.op == 'Conv2D':
423 self.dump_simple_conv2d_to_file(node, f)
425 if node.name in self.output_names:
426 input_name = self.id_different_scope_dict[node.name]
427 if TFConverter.get_scope_name(input_name)!=TFConverter.get_scope_name(node.name):
429 if node.op == 'AvgPool':
430 self.dump_avg_pool_to_file(node, f)
431 elif node.op == 'DepthToSpace':
432 self.dump_depth2space_to_file(node, f)
433 elif node.op == 'MirrorPad':
434 self.dump_mirrorpad_to_file(node, f)
435 elif node.op == 'Maximum':
436 self.dump_maximum_to_file(node, f)
437 elif node.op in self.mathbin2code:
438 self.dump_mathbinary_to_file(node, f)
439 elif node.op in self.mathun2code:
440 self.dump_mathunary_to_file(node, f)
463 for node in self.nodes:
464 self.name_node_dict[node.name] = node
469 for node in self.nodes:
470 for input in node.input:
473 for node in self.nodes:
474 if node.name not in used_names:
475 self.output_names.append(node.name)
482 for node in self.nodes:
483 if node.op == 'Identity':
484 name = node.name
485 input = node.input[0]
486 id_nodes.append(node)
499 for node in self.nodes:
500 for i in range(len(node.input)):
501 input = node.input[i]
503 node.input[i] = id_dict[input]
507 for node in self.nodes:
508 for input in node.input:
510 self.edges[input].append(node)
512 self.edges[input] = [node]
546 for node in self.nodes:
547 if node.op == 'Conv2D':
548 scope = TFConverter.get_scope_name(node.name)
556 elif node.op == 'MatMul':
557 scope = TFConverter.get_scope_name(node.name)
567 for node in self.nodes:
568 scope = TFConverter.get_scope_name(node.name)
570 if node.op == 'Conv2D' or node.op == 'Shape':
571 for inp in node.input:
575 if node.op == 'MatMul' or node.op == 'Shape':
576 for inp in node.input:
580 if node.op == 'Transpose':
581 for inp in node.input:
604 nodes = graph_def.node