def test_cumsum_value_prop_exclusive(self): graph = build_graph(nodes_attributes, [ *connect('data', '0:cumsum'), *connect('axis', '1:cumsum'), ('cumsum', 'cumsum_d', { 'out': 0 }), ('cumsum_d', 'output'), ], { 'data_d': { 'value': np.array([1., 2., 3., 4., 5.]).astype(np.float32), 'shape': [5] }, 'cumsum': { 'reverse': False, 'exclusive': True } }, nodes_with_edges_only=True) cumsum_node = Node(graph, 'cumsum') CumSum.infer(cumsum_node) self.assertTrue( np.array_equal( cumsum_node.out_port(0).data.get_value(), np.array([0., 1., 3., 6., 10.]).astype(np.float32)))
def extract(cls, node): exclusive = node.pb.attr['exclusive'].b reverse = node.pb.attr['reverse'].b CumSum.update_node_stat(node, { 'exclusive': exclusive, 'reverse': reverse }) return cls.enabled
def extract(cls, node): exclusive = onnx_attr(node, 'exclusive', 'i', 0) reverse = onnx_attr(node, 'reverse', 'i', 0) CumSum.update_node_stat(node, { 'exclusive': exclusive, 'reverse': reverse }) return cls.enabled
def test_cumsum_axis(self): graph = build_graph(nodes_attributes, [*connect('data', '0:cumsum'), *connect('axis', '1:cumsum'), *connect('cumsum', '0:identity'), ('identity', 'identity_d', {'out': 0}), ('identity_d', 'output'), ], {'cumsum': {'reverse': False, 'exclusive': False} }, nodes_with_edges_only=True) cumsum_node = Node(graph, 'cumsum') CumSum.infer(cumsum_node) self.assertTrue(np.array_equal(cumsum_node.out_port(0).data.get_shape(), int64_array([1, 3, 224, 224])))