tensor_stream 0.1.5 → 0.2.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (34) hide show
  1. checksums.yaml +5 -5
  2. data/CHANGELOG.md +13 -0
  3. data/README.md +34 -0
  4. data/lib/tensor_stream.rb +7 -3
  5. data/lib/tensor_stream/control_flow.rb +1 -2
  6. data/lib/tensor_stream/evaluator/operation_helpers/array_ops_helper.rb +44 -3
  7. data/lib/tensor_stream/evaluator/operation_helpers/math_helper.rb +9 -0
  8. data/lib/tensor_stream/evaluator/ruby_evaluator.rb +70 -36
  9. data/lib/tensor_stream/graph.rb +15 -7
  10. data/lib/tensor_stream/graph_serializers/graphml.rb +183 -35
  11. data/lib/tensor_stream/graph_serializers/pbtext.rb +81 -14
  12. data/lib/tensor_stream/graph_serializers/serializer.rb +13 -0
  13. data/lib/tensor_stream/helpers/string_helper.rb +12 -0
  14. data/lib/tensor_stream/math_gradients.rb +203 -161
  15. data/lib/tensor_stream/operation.rb +30 -16
  16. data/lib/tensor_stream/ops.rb +29 -19
  17. data/lib/tensor_stream/placeholder.rb +2 -3
  18. data/lib/tensor_stream/session.rb +7 -13
  19. data/lib/tensor_stream/tensor.rb +22 -5
  20. data/lib/tensor_stream/tensor_shape.rb +2 -0
  21. data/lib/tensor_stream/trainer.rb +6 -1
  22. data/lib/tensor_stream/variable.rb +4 -3
  23. data/lib/tensor_stream/version.rb +1 -1
  24. data/samples/gradient_sample.graphml +1255 -0
  25. data/samples/linear_regression.rb +1 -1
  26. data/samples/logistic_regression.rb +9 -2
  27. data/tensor_stream.gemspec +1 -1
  28. data/test_samples/error.graphml +120 -0
  29. data/test_samples/gradient_sample.graphml +1255 -0
  30. data/{samples → test_samples}/iris.rb +0 -0
  31. data/{samples → test_samples}/raw_neural_net_sample.rb +0 -0
  32. data/{samples → test_samples}/test.py +2 -0
  33. data/test_samples/test2.py +41 -0
  34. metadata +41 -47
@@ -52,4 +52,4 @@ tf.session do |sess|
52
52
  training_cost = sess.run(cost, feed_dict: { X => train_X, Y => train_Y})
53
53
  puts("Training cost=", training_cost, "W=", sess.run(W), "b=", sess.run(b), '\n')
54
54
  puts("time elapsed ", Time.now.to_i - start_time.to_i)
55
- end
55
+ end
@@ -1,6 +1,7 @@
1
+ # Model based on https://www.kaggle.com/autuanliuyc/logistic-regression-with-tensorflow
2
+
1
3
  require "bundler/setup"
2
4
  require 'tensor_stream'
3
- require 'pry-byebug'
4
5
 
5
6
  tf = TensorStream
6
7
 
@@ -72,5 +73,11 @@ test_acc = []
72
73
  batch_train_X = train_x
73
74
  batch_train_y = [train_y].transpose
74
75
  sess.run(goal, feed_dict: { data => batch_train_X, target => batch_train_y })
75
- temp_loss = sess.run(loss, feed_dict: {data => batch_train_X, target => batch_train_y})
76
+
77
+ if epoch % 50 == 0
78
+ temp_loss = sess.run(loss, feed_dict: {data => batch_train_X, target => batch_train_y})
79
+ temp_train_acc = sess.run(accuracy, feed_dict: { data => batch_train_X, target => batch_train_y})
80
+ temp_test_acc = sess.run(accuracy, feed_dict: {data => test_x, target => [test_y].transpose})
81
+ puts "epoch #{epoch}, loss #{temp_loss} train acc: #{temp_train_acc}, test acc: #{temp_test_acc}"
82
+ end
76
83
  end
@@ -35,7 +35,7 @@ Gem::Specification.new do |spec|
35
35
  spec.add_development_dependency "rspec", "~> 3.0"
36
36
  spec.add_development_dependency "awesome_print"
37
37
  spec.add_development_dependency "rubocop"
38
- spec.add_development_dependency "pry-byebug"
38
+ # spec.add_development_dependency "pry-byebug"
39
39
  spec.add_development_dependency "byepry"
40
40
  spec.add_development_dependency "colorize"
41
41
  spec.add_development_dependency "rspec_junit_formatter"
@@ -0,0 +1,120 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <graphml xmlns="http://graphml.graphdrawing.org/xmlns" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:y="http://www.yworks.com/xml/graphml"
3
+ xsi:schemaLocation="http://graphml.graphdrawing.org/xmlns http://graphml.graphdrawing.org/xmlns/1.0/graphml.xsd">
4
+ <key id="d0" for="node" attr.name="label" attr.type="string"/>
5
+ <key id="d1" for="node" attr.name="formula" attr.type="string"/>
6
+ <key id="d2" for="node" attr.name="color" attr.type="string"/>
7
+ <key id="d3" for="node" attr.name="value" attr.type="string"/>
8
+ <key attr.name="description" attr.type="string" for="edge" id="d12"/>
9
+ <key for="edge" id="d13" yfiles.type="edgegraphics"/>
10
+ <key for="node" id="d9" yfiles.type="nodegraphics"/>
11
+ <graph id="g_reshape:0" edgedefault="directed">
12
+ <node id="out">
13
+ <data key="d0">out</data>
14
+ <data key="d2">red</data>
15
+ <data key="d9">
16
+ <y:ShapeNode>
17
+ <y:Fill color="#FF0000" transparent="false"/>
18
+ <y:NodeLabel alignment="center">out</y:NodeLabel>
19
+ </y:ShapeNode>
20
+ </data>
21
+ </node>
22
+ <edge source="Const:3" target="reshape:0">
23
+ <data key="d13">
24
+ <y:PolyLineEdge>
25
+ <y:EdgeLabel >
26
+ <![CDATA[ [[[1, 1, 1], [2, 2, 2]], [[3, 3, 3], [4, 4, 4]], [[5, 5, 5], [6, 6, 6]]] ]]>
27
+ </y:EdgeLabel >
28
+ <y:Arrows source="none" target="standard"/>
29
+ <y:LineStyle color="#FF0000" type="line" width="1.0"/>
30
+ </y:PolyLineEdge>
31
+ </data>
32
+ </edge>
33
+ <edge source="Const_1:1" target="reshape:0">
34
+ <data key="d13">
35
+ <y:PolyLineEdge>
36
+ <y:EdgeLabel >
37
+ <![CDATA[ [3, 2, 2] ]]>
38
+ </y:EdgeLabel >
39
+ <y:Arrows source="none" target="standard"/>
40
+ <y:LineStyle color="#0000FF" type="line" width="1.0"/>
41
+ </y:PolyLineEdge>
42
+ </data>
43
+ </edge>
44
+ <node id="program" yfiles.foldertype="group">
45
+ <data key="d9">
46
+ <y:ProxyAutoBoundsNode>
47
+ <y:Realizers active="0">
48
+ <y:GroupNode>
49
+ <y:Fill color="#CAECFF84" transparent="false"/>
50
+ <y:BorderStyle color="#666699" type="dotted" width="1.0"/>
51
+ <y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#99CCFF" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" horizontalTextPosition="center" iconTextGap="4" modelName="internal" modelPosition="t" textColor="#000000" verticalTextPosition="bottom" visible="true" width="67.18603515625" x="-8.593017578125" y="0.0">program</y:NodeLabel>
52
+ <y:Shape type="roundrectangle"/>
53
+ </y:GroupNode>
54
+ </y:Realizers>
55
+ </y:ProxyAutoBoundsNode>
56
+ </data>
57
+ <graph edgedefault="directed" id="n105:">
58
+ <node id="program" yfiles.foldertype="group">
59
+ <data key="d9">
60
+ <y:ProxyAutoBoundsNode>
61
+ <y:Realizers active="0">
62
+ <y:GroupNode>
63
+ <y:Fill color="#CAECFF84" transparent="false"/>
64
+ <y:BorderStyle color="#666699" type="dotted" width="1.0"/>
65
+ <y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#99CCFF" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" horizontalTextPosition="center" iconTextGap="4" modelName="internal" modelPosition="t" textColor="#000000" verticalTextPosition="bottom" visible="true" width="67.18603515625" x="-8.593017578125" y="0.0">program</y:NodeLabel>
66
+ <y:Shape type="roundrectangle"/>
67
+ </y:GroupNode>
68
+ </y:Realizers>
69
+ </y:ProxyAutoBoundsNode>
70
+ </data>
71
+ <graph edgedefault="directed" id="n105:">
72
+ <node id="reshape:0">
73
+ <data key="d0">reshape</data>
74
+ <data key="d1">
75
+ reshape(Const:3,Const_1:1)</data>
76
+ <data key="d2">blue</data>
77
+ <data key="d9">
78
+ <y:ShapeNode>
79
+ <y:Fill color="#99CC00" transparent="false"/>
80
+ <y:NodeLabel alignment="center">reshape</y:NodeLabel>
81
+ </y:ShapeNode>
82
+ </data>
83
+ </node>
84
+ <node id="Const:3">
85
+ <data key="d0">Const:3</data>
86
+ <data key="d2">black</data>
87
+ <data key="d9">
88
+ <y:ShapeNode>
89
+ <y:Fill color="#FFFFFF" transparent="false"/>
90
+ <y:NodeLabel alignment="center">Const:3</y:NodeLabel>
91
+ </y:ShapeNode>
92
+ </data>
93
+ </node>
94
+ <node id="Const_1:1">
95
+ <data key="d0">Const_1:1</data>
96
+ <data key="d2">black</data>
97
+ <data key="d9">
98
+ <y:ShapeNode>
99
+ <y:Fill color="#FFFFFF" transparent="false"/>
100
+ <y:NodeLabel alignment="center">Const_1:1</y:NodeLabel>
101
+ </y:ShapeNode>
102
+ </data>
103
+ </node>
104
+ </graph>
105
+ </node>
106
+ </graph>
107
+ </node>
108
+ <edge source="reshape:0" target="out">
109
+ <data key="d13">
110
+ <y:PolyLineEdge>
111
+ <y:EdgeLabel >
112
+ <![CDATA[ ]]>
113
+ </y:EdgeLabel >
114
+ <y:Arrows source="none" target="standard"/>
115
+ <y:LineStyle color="#FF0000" type="line" width="1.0"/>
116
+ </y:PolyLineEdge>
117
+ </data>
118
+ </edge>
119
+ </graph>
120
+ </graphml>
@@ -0,0 +1,1255 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <graphml xmlns="http://graphml.graphdrawing.org/xmlns" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:y="http://www.yworks.com/xml/graphml"
3
+ xsi:schemaLocation="http://graphml.graphdrawing.org/xmlns http://graphml.graphdrawing.org/xmlns/1.0/graphml.xsd">
4
+ <key id="d0" for="node" attr.name="label" attr.type="string"/>
5
+ <key id="d1" for="node" attr.name="formula" attr.type="string"/>
6
+ <key id="d2" for="node" attr.name="color" attr.type="string"/>
7
+ <key id="d3" for="node" attr.name="value" attr.type="string"/>
8
+ <key attr.name="description" attr.type="string" for="edge" id="d12"/>
9
+ <key for="edge" id="d13" yfiles.type="edgegraphics"/>
10
+ <key for="node" id="d9" yfiles.type="nodegraphics"/>
11
+ <graph id="g_-flow_group_975:" edgedefault="directed">
12
+ <node id="out">
13
+ <data key="d0">out</data>
14
+ <data key="d2">red</data>
15
+ <data key="d9">
16
+ <y:ShapeNode>
17
+ <y:Fill color="#FF0000" transparent="false"/>
18
+ <y:NodeLabel alignment="center">out</y:NodeLabel>
19
+ </y:ShapeNode>
20
+ </data>
21
+ </node>
22
+ <data key="d3">[[-0.18181076984697453, -0.2235356954437098]]</data>
23
+ <data key="d3">[-0.18181076984697453, -0.2235356954437098]</data>
24
+ <data key="d3">[-0.18181076984697453, -0.2235356954437098]</data>
25
+ <data key="d3">[-0.18181076984697453, -0.2235356954437098]</data>
26
+ <data key="d3">[[-0.18181076984697453, -0.2235356954437098]]</data>
27
+ <data key="d3">[[[5.25, 21.425]], [[-0.18181076984697453, -0.2235356954437098]]]</data>
28
+ <data key="d3">[[5.25, 21.425]]</data>
29
+ <data key="d3">[[1.25, 16.425]]</data>
30
+ <edge source="Const_186:2" target="matmul_822:0">
31
+ <data key="d13">
32
+ <y:PolyLineEdge>
33
+ <y:EdgeLabel >
34
+ <![CDATA[ [[1.0, 0.5, 4.0]] ]]>
35
+ </y:EdgeLabel >
36
+ <y:Arrows source="none" target="standard"/>
37
+ <y:LineStyle color="#FF0000" type="line" width="1.0"/>
38
+ </y:PolyLineEdge>
39
+ </data>
40
+ </edge>
41
+ <edge source="Const_187:2" target="matmul_822:0">
42
+ <data key="d13">
43
+ <y:PolyLineEdge>
44
+ <y:EdgeLabel >
45
+ <![CDATA[ [[0.4, 0.2], [0.1, 0.45], [0.2, 4.0]] ]]>
46
+ </y:EdgeLabel >
47
+ <y:Arrows source="none" target="standard"/>
48
+ <y:LineStyle color="#0000FF" type="line" width="1.0"/>
49
+ </y:PolyLineEdge>
50
+ </data>
51
+ </edge>
52
+ <edge source="matmul_822:0" target="add_823:0">
53
+ <data key="d13">
54
+ <y:PolyLineEdge>
55
+ <y:EdgeLabel >
56
+ <![CDATA[ [[1.25, 16.425]] ]]>
57
+ </y:EdgeLabel >
58
+ <y:Arrows source="none" target="standard"/>
59
+ <y:LineStyle color="#FF0000" type="line" width="1.0"/>
60
+ </y:PolyLineEdge>
61
+ </data>
62
+ </edge>
63
+ <edge source="Const_189:1" target="add_823:0">
64
+ <data key="d13">
65
+ <y:PolyLineEdge>
66
+ <y:EdgeLabel >
67
+ <![CDATA[ [4.0, 5.0] ]]>
68
+ </y:EdgeLabel >
69
+ <y:Arrows source="none" target="standard"/>
70
+ <y:LineStyle color="#0000FF" type="line" width="1.0"/>
71
+ </y:PolyLineEdge>
72
+ </data>
73
+ </edge>
74
+ <data key="d3">[[-0.18181076984697453, -0.2235356954437098]]</data>
75
+ <data key="d3">[[-0.3550398867513898, 0.2648611682365375]]</data>
76
+ <data key="d3">[[-0.7100797735027796, 0.44143528039422913]]</data>
77
+ <data key="d3">[[-0.7100797735027796, 0.44143528039422913]]</data>
78
+ <data key="d3">[[[3.9227774823857198, 5.169586592555774]], [[-0.7100797735027796, 0.44143528039422913]]]</data>
79
+ <data key="d3">[[3.9227774823857198, 5.169586592555774]]</data>
80
+ <data key="d3">[[-0.1772225176142799, 0.0695865925557746]]</data>
81
+ <data key="d3">[[-0.858934493426592, 0.5363855360913178]]</data>
82
+ <edge source="add_823:0" target="sin_824:0">
83
+ <data key="d13">
84
+ <y:PolyLineEdge>
85
+ <y:EdgeLabel >
86
+ <![CDATA[ [[5.25, 21.425]] ]]>
87
+ </y:EdgeLabel >
88
+ <y:Arrows source="none" target="standard"/>
89
+ <y:LineStyle color="#FF0000" type="line" width="1.0"/>
90
+ </y:PolyLineEdge>
91
+ </data>
92
+ </edge>
93
+ <edge source="sin_824:0" target="matmul_825:0">
94
+ <data key="d13">
95
+ <y:PolyLineEdge>
96
+ <y:EdgeLabel >
97
+ <![CDATA[ [[-0.858934493426592, 0.5363855360913178]] ]]>
98
+ </y:EdgeLabel >
99
+ <y:Arrows source="none" target="standard"/>
100
+ <y:LineStyle color="#FF0000" type="line" width="1.0"/>
101
+ </y:PolyLineEdge>
102
+ </data>
103
+ </edge>
104
+ <edge source="Const_188:2" target="matmul_825:0">
105
+ <data key="d13">
106
+ <y:PolyLineEdge>
107
+ <y:EdgeLabel >
108
+ <![CDATA[ [[0.3, 0.2], [0.15, 0.45]] ]]>
109
+ </y:EdgeLabel >
110
+ <y:Arrows source="none" target="standard"/>
111
+ <y:LineStyle color="#0000FF" type="line" width="1.0"/>
112
+ </y:PolyLineEdge>
113
+ </data>
114
+ </edge>
115
+ <edge source="matmul_825:0" target="add_826:0">
116
+ <data key="d13">
117
+ <y:PolyLineEdge>
118
+ <y:EdgeLabel >
119
+ <![CDATA[ [[-0.1772225176142799, 0.0695865925557746]] ]]>
120
+ </y:EdgeLabel >
121
+ <y:Arrows source="none" target="standard"/>
122
+ <y:LineStyle color="#FF0000" type="line" width="1.0"/>
123
+ </y:PolyLineEdge>
124
+ </data>
125
+ </edge>
126
+ <edge source="Const_190:1" target="add_826:0">
127
+ <data key="d13">
128
+ <y:PolyLineEdge>
129
+ <y:EdgeLabel >
130
+ <![CDATA[ [4.1, 5.1] ]]>
131
+ </y:EdgeLabel >
132
+ <y:Arrows source="none" target="standard"/>
133
+ <y:LineStyle color="#0000FF" type="line" width="1.0"/>
134
+ </y:PolyLineEdge>
135
+ </data>
136
+ </edge>
137
+ <data key="d3">[[-0.7100797735027796, 0.44143528039422913]]</data>
138
+ <data key="d3">[1.0, 1.0]</data>
139
+ <edge source="Const_189:1" target="gradient_wrt_Const_189:1-ones_like_937:0">
140
+ <data key="d13">
141
+ <y:PolyLineEdge>
142
+ <y:EdgeLabel >
143
+ <![CDATA[ [4.0, 5.0] ]]>
144
+ </y:EdgeLabel >
145
+ <y:Arrows source="none" target="standard"/>
146
+ <y:LineStyle color="#FF0000" type="line" width="1.0"/>
147
+ </y:PolyLineEdge>
148
+ </data>
149
+ </edge>
150
+ <data key="d3">[[-0.7100797735027796, 0.44143528039422913]]</data>
151
+ <edge source="add_826:0" target="gradient_wrt_Const_189:1-sin_827:0_grad-cos_938:0">
152
+ <data key="d13">
153
+ <y:PolyLineEdge>
154
+ <y:EdgeLabel >
155
+ <![CDATA[ [[3.9227774823857198, 5.169586592555774]] ]]>
156
+ </y:EdgeLabel >
157
+ <y:Arrows source="none" target="standard"/>
158
+ <y:LineStyle color="#FF0000" type="line" width="1.0"/>
159
+ </y:PolyLineEdge>
160
+ </data>
161
+ </edge>
162
+ <edge source="gradient_wrt_Const_189:1-ones_like_937:0" target="gradient_wrt_Const_189:1-sin_827:0_grad-mul_939:0">
163
+ <data key="d13">
164
+ <y:PolyLineEdge>
165
+ <y:EdgeLabel >
166
+ <![CDATA[ [1.0, 1.0] ]]>
167
+ </y:EdgeLabel >
168
+ <y:Arrows source="none" target="standard"/>
169
+ <y:LineStyle color="#FF0000" type="line" width="1.0"/>
170
+ </y:PolyLineEdge>
171
+ </data>
172
+ </edge>
173
+ <edge source="gradient_wrt_Const_189:1-sin_827:0_grad-cos_938:0" target="gradient_wrt_Const_189:1-sin_827:0_grad-mul_939:0">
174
+ <data key="d13">
175
+ <y:PolyLineEdge>
176
+ <y:EdgeLabel >
177
+ <![CDATA[ [[-0.7100797735027796, 0.44143528039422913]] ]]>
178
+ </y:EdgeLabel >
179
+ <y:Arrows source="none" target="standard"/>
180
+ <y:LineStyle color="#0000FF" type="line" width="1.0"/>
181
+ </y:PolyLineEdge>
182
+ </data>
183
+ </edge>
184
+ <edge source="add_826:0" target="gradient_wrt_Const_189:1-broadcast_transform_940:0">
185
+ <data key="d13">
186
+ <y:PolyLineEdge>
187
+ <y:EdgeLabel >
188
+ <![CDATA[ [[3.9227774823857198, 5.169586592555774]] ]]>
189
+ </y:EdgeLabel >
190
+ <y:Arrows source="none" target="standard"/>
191
+ <y:LineStyle color="#FF0000" type="line" width="1.0"/>
192
+ </y:PolyLineEdge>
193
+ </data>
194
+ </edge>
195
+ <edge source="gradient_wrt_Const_189:1-sin_827:0_grad-mul_939:0" target="gradient_wrt_Const_189:1-broadcast_transform_940:0">
196
+ <data key="d13">
197
+ <y:PolyLineEdge>
198
+ <y:EdgeLabel >
199
+ <![CDATA[ [[-0.7100797735027796, 0.44143528039422913]] ]]>
200
+ </y:EdgeLabel >
201
+ <y:Arrows source="none" target="standard"/>
202
+ <y:LineStyle color="#0000FF" type="line" width="1.0"/>
203
+ </y:PolyLineEdge>
204
+ </data>
205
+ </edge>
206
+ <edge source="gradient_wrt_Const_189:1-broadcast_transform_940:0" target="gradient_wrt_Const_189:1-index_941:0">
207
+ <data key="d13">
208
+ <y:PolyLineEdge>
209
+ <y:EdgeLabel >
210
+ <![CDATA[ [[[3.9227774823857198, 5.169586592555774]], [[-0.7100797735027796, 0.44143528039422913]]] ]]>
211
+ </y:EdgeLabel >
212
+ <y:Arrows source="none" target="standard"/>
213
+ <y:LineStyle color="#FF0000" type="line" width="1.0"/>
214
+ </y:PolyLineEdge>
215
+ </data>
216
+ </edge>
217
+ <edge source="gradient_wrt_Const_189:1-Const_221:0" target="gradient_wrt_Const_189:1-index_941:0">
218
+ <data key="d13">
219
+ <y:PolyLineEdge>
220
+ <y:EdgeLabel >
221
+ <![CDATA[ 1 ]]>
222
+ </y:EdgeLabel >
223
+ <y:Arrows source="none" target="standard"/>
224
+ <y:LineStyle color="#0000FF" type="line" width="1.0"/>
225
+ </y:PolyLineEdge>
226
+ </data>
227
+ </edge>
228
+ <data key="d3">[]</data>
229
+ <data key="d3">[2]</data>
230
+ <edge source="Const_190:1" target="gradient_wrt_Const_189:1-add_826:0_grad-add-shape_y_1">
231
+ <data key="d13">
232
+ <y:PolyLineEdge>
233
+ <y:EdgeLabel >
234
+ <![CDATA[ [4.1, 5.1] ]]>
235
+ </y:EdgeLabel >
236
+ <y:Arrows source="none" target="standard"/>
237
+ <y:LineStyle color="#FF0000" type="line" width="1.0"/>
238
+ </y:PolyLineEdge>
239
+ </data>
240
+ </edge>
241
+ <data key="d3">[1, 2]</data>
242
+ <edge source="matmul_825:0" target="gradient_wrt_Const_189:1-add_826:0_grad-add-shape_x_1">
243
+ <data key="d13">
244
+ <y:PolyLineEdge>
245
+ <y:EdgeLabel >
246
+ <![CDATA[ [[-0.1772225176142799, 0.0695865925557746]] ]]>
247
+ </y:EdgeLabel >
248
+ <y:Arrows source="none" target="standard"/>
249
+ <y:LineStyle color="#FF0000" type="line" width="1.0"/>
250
+ </y:PolyLineEdge>
251
+ </data>
252
+ </edge>
253
+ <edge source="gradient_wrt_Const_189:1-add_826:0_grad-add-shape_y_1" target="gradient_wrt_Const_189:1-add_826:0_grad-broadcast_gradient_args_942:0">
254
+ <data key="d13">
255
+ <y:PolyLineEdge>
256
+ <y:EdgeLabel >
257
+ <![CDATA[ [2] ]]>
258
+ </y:EdgeLabel >
259
+ <y:Arrows source="none" target="standard"/>
260
+ <y:LineStyle color="#FF0000" type="line" width="1.0"/>
261
+ </y:PolyLineEdge>
262
+ </data>
263
+ </edge>
264
+ <edge source="gradient_wrt_Const_189:1-add_826:0_grad-add-shape_x_1" target="gradient_wrt_Const_189:1-add_826:0_grad-broadcast_gradient_args_942:0">
265
+ <data key="d13">
266
+ <y:PolyLineEdge>
267
+ <y:EdgeLabel >
268
+ <![CDATA[ [1, 2] ]]>
269
+ </y:EdgeLabel >
270
+ <y:Arrows source="none" target="standard"/>
271
+ <y:LineStyle color="#0000FF" type="line" width="1.0"/>
272
+ </y:PolyLineEdge>
273
+ </data>
274
+ </edge>
275
+ <edge source="gradient_wrt_Const_189:1-index_941:0" target="gradient_wrt_Const_189:1-add_826:0_grad-add-reduce_sum_x_1">
276
+ <data key="d13">
277
+ <y:PolyLineEdge>
278
+ <y:EdgeLabel >
279
+ <![CDATA[ [[-0.7100797735027796, 0.44143528039422913]] ]]>
280
+ </y:EdgeLabel >
281
+ <y:Arrows source="none" target="standard"/>
282
+ <y:LineStyle color="#FF0000" type="line" width="1.0"/>
283
+ </y:PolyLineEdge>
284
+ </data>
285
+ </edge>
286
+ <edge source="gradient_wrt_Const_189:1-add_826:0_grad-broadcast_gradient_args_942:0" target="gradient_wrt_Const_189:1-add_826:0_grad-add-reduce_sum_x_1">
287
+ <data key="d13">
288
+ <y:PolyLineEdge>
289
+ <y:EdgeLabel >
290
+ <![CDATA[ [] ]]>
291
+ </y:EdgeLabel >
292
+ <y:Arrows source="none" target="standard"/>
293
+ <y:LineStyle color="#0000FF" type="line" width="1.0"/>
294
+ </y:PolyLineEdge>
295
+ </data>
296
+ </edge>
297
+ <data key="d3">[[0.5, 0.6]]</data>
298
+ <data key="d3">[[1.0, 1.0]]</data>
299
+ <edge source="gradient_wrt_Const_189:1-matmul_825:0_grad-Const_224:1" target="gradient_wrt_Const_189:1-matmul_825:0_grad-matmul-identity0_2">
300
+ <data key="d13">
301
+ <y:PolyLineEdge>
302
+ <y:EdgeLabel >
303
+ <![CDATA[ [1, 2] ]]>
304
+ </y:EdgeLabel >
305
+ <y:Arrows source="none" target="standard"/>
306
+ <y:LineStyle color="#FF0000" type="line" width="1.0"/>
307
+ </y:PolyLineEdge>
308
+ </data>
309
+ </edge>
310
+ <edge source="gradient_wrt_Const_189:1-matmul_825:0_grad-matmul-identity0_2" target="gradient_wrt_Const_189:1-matmul_825:0_grad-matmul_956:0">
311
+ <data key="d13">
312
+ <y:PolyLineEdge>
313
+ <y:EdgeLabel >
314
+ <![CDATA[ [[1.0, 1.0]] ]]>
315
+ </y:EdgeLabel >
316
+ <y:Arrows source="none" target="standard"/>
317
+ <y:LineStyle color="#FF0000" type="line" width="1.0"/>
318
+ </y:PolyLineEdge>
319
+ </data>
320
+ </edge>
321
+ <edge source="Const_188:2" target="gradient_wrt_Const_189:1-matmul_825:0_grad-matmul_956:0">
322
+ <data key="d13">
323
+ <y:PolyLineEdge>
324
+ <y:EdgeLabel >
325
+ <![CDATA[ [[0.3, 0.2], [0.15, 0.45]] ]]>
326
+ </y:EdgeLabel >
327
+ <y:Arrows source="none" target="standard"/>
328
+ <y:LineStyle color="#0000FF" type="line" width="1.0"/>
329
+ </y:PolyLineEdge>
330
+ </data>
331
+ </edge>
332
+ <edge source="gradient_wrt_Const_189:1-add_826:0_grad-add-reduce_sum_x_1" target="gradient_wrt_Const_189:1-matmul_825:0_grad-matmul-grad_a_norm_mul_da_2">
333
+ <data key="d13">
334
+ <y:PolyLineEdge>
335
+ <y:EdgeLabel >
336
+ <![CDATA[ [[-0.7100797735027796, 0.44143528039422913]] ]]>
337
+ </y:EdgeLabel >
338
+ <y:Arrows source="none" target="standard"/>
339
+ <y:LineStyle color="#FF0000" type="line" width="1.0"/>
340
+ </y:PolyLineEdge>
341
+ </data>
342
+ </edge>
343
+ <edge source="gradient_wrt_Const_189:1-matmul_825:0_grad-matmul_956:0" target="gradient_wrt_Const_189:1-matmul_825:0_grad-matmul-grad_a_norm_mul_da_2">
344
+ <data key="d13">
345
+ <y:PolyLineEdge>
346
+ <y:EdgeLabel >
347
+ <![CDATA[ [[0.5, 0.6]] ]]>
348
+ </y:EdgeLabel >
349
+ <y:Arrows source="none" target="standard"/>
350
+ <y:LineStyle color="#0000FF" type="line" width="1.0"/>
351
+ </y:PolyLineEdge>
352
+ </data>
353
+ </edge>
354
+ <data key="d3">[[0.5120854772418407, -0.8439730781677989]]</data>
355
+ <edge source="add_823:0" target="gradient_wrt_Const_189:1-sin_824:0_grad-cos_958:0">
356
+ <data key="d13">
357
+ <y:PolyLineEdge>
358
+ <y:EdgeLabel >
359
+ <![CDATA[ [[5.25, 21.425]] ]]>
360
+ </y:EdgeLabel >
361
+ <y:Arrows source="none" target="standard"/>
362
+ <y:LineStyle color="#FF0000" type="line" width="1.0"/>
363
+ </y:PolyLineEdge>
364
+ </data>
365
+ </edge>
366
+ <edge source="gradient_wrt_Const_189:1-matmul_825:0_grad-matmul-grad_a_norm_mul_da_2" target="gradient_wrt_Const_189:1-sin_824:0_grad-mul_959:0">
367
+ <data key="d13">
368
+ <y:PolyLineEdge>
369
+ <y:EdgeLabel >
370
+ <![CDATA[ [[-0.3550398867513898, 0.2648611682365375]] ]]>
371
+ </y:EdgeLabel >
372
+ <y:Arrows source="none" target="standard"/>
373
+ <y:LineStyle color="#FF0000" type="line" width="1.0"/>
374
+ </y:PolyLineEdge>
375
+ </data>
376
+ </edge>
377
+ <edge source="gradient_wrt_Const_189:1-sin_824:0_grad-cos_958:0" target="gradient_wrt_Const_189:1-sin_824:0_grad-mul_959:0">
378
+ <data key="d13">
379
+ <y:PolyLineEdge>
380
+ <y:EdgeLabel >
381
+ <![CDATA[ [[0.5120854772418407, -0.8439730781677989]] ]]>
382
+ </y:EdgeLabel >
383
+ <y:Arrows source="none" target="standard"/>
384
+ <y:LineStyle color="#0000FF" type="line" width="1.0"/>
385
+ </y:PolyLineEdge>
386
+ </data>
387
+ </edge>
388
+ <edge source="add_823:0" target="gradient_wrt_Const_189:1-broadcast_transform_960:0">
389
+ <data key="d13">
390
+ <y:PolyLineEdge>
391
+ <y:EdgeLabel >
392
+ <![CDATA[ [[5.25, 21.425]] ]]>
393
+ </y:EdgeLabel >
394
+ <y:Arrows source="none" target="standard"/>
395
+ <y:LineStyle color="#FF0000" type="line" width="1.0"/>
396
+ </y:PolyLineEdge>
397
+ </data>
398
+ </edge>
399
+ <edge source="gradient_wrt_Const_189:1-sin_824:0_grad-mul_959:0" target="gradient_wrt_Const_189:1-broadcast_transform_960:0">
400
+ <data key="d13">
401
+ <y:PolyLineEdge>
402
+ <y:EdgeLabel >
403
+ <![CDATA[ [[-0.18181076984697453, -0.2235356954437098]] ]]>
404
+ </y:EdgeLabel >
405
+ <y:Arrows source="none" target="standard"/>
406
+ <y:LineStyle color="#0000FF" type="line" width="1.0"/>
407
+ </y:PolyLineEdge>
408
+ </data>
409
+ </edge>
410
+ <edge source="gradient_wrt_Const_189:1-broadcast_transform_960:0" target="gradient_wrt_Const_189:1-index_962:0">
411
+ <data key="d13">
412
+ <y:PolyLineEdge>
413
+ <y:EdgeLabel >
414
+ <![CDATA[ [[[5.25, 21.425]], [[-0.18181076984697453, -0.2235356954437098]]] ]]>
415
+ </y:EdgeLabel >
416
+ <y:Arrows source="none" target="standard"/>
417
+ <y:LineStyle color="#FF0000" type="line" width="1.0"/>
418
+ </y:PolyLineEdge>
419
+ </data>
420
+ </edge>
421
+ <edge source="gradient_wrt_Const_189:1-Const_229:0" target="gradient_wrt_Const_189:1-index_962:0">
422
+ <data key="d13">
423
+ <y:PolyLineEdge>
424
+ <y:EdgeLabel >
425
+ <![CDATA[ 1 ]]>
426
+ </y:EdgeLabel >
427
+ <y:Arrows source="none" target="standard"/>
428
+ <y:LineStyle color="#0000FF" type="line" width="1.0"/>
429
+ </y:PolyLineEdge>
430
+ </data>
431
+ </edge>
432
+ <data key="d3">[0]</data>
433
+ <data key="d3">[1, 2]</data>
434
+ <edge source="matmul_822:0" target="gradient_wrt_Const_189:1-add_823:0_grad-add-shape_x_3">
435
+ <data key="d13">
436
+ <y:PolyLineEdge>
437
+ <y:EdgeLabel >
438
+ <![CDATA[ [[1.25, 16.425]] ]]>
439
+ </y:EdgeLabel >
440
+ <y:Arrows source="none" target="standard"/>
441
+ <y:LineStyle color="#FF0000" type="line" width="1.0"/>
442
+ </y:PolyLineEdge>
443
+ </data>
444
+ </edge>
445
+ <data key="d3">[2]</data>
446
+ <edge source="Const_189:1" target="gradient_wrt_Const_189:1-add_823:0_grad-add-shape_y_3">
447
+ <data key="d13">
448
+ <y:PolyLineEdge>
449
+ <y:EdgeLabel >
450
+ <![CDATA[ [4.0, 5.0] ]]>
451
+ </y:EdgeLabel >
452
+ <y:Arrows source="none" target="standard"/>
453
+ <y:LineStyle color="#FF0000" type="line" width="1.0"/>
454
+ </y:PolyLineEdge>
455
+ </data>
456
+ </edge>
457
+ <edge source="gradient_wrt_Const_189:1-add_823:0_grad-add-shape_x_3" target="gradient_wrt_Const_189:1-add_823:0_grad-broadcast_gradient_args_964:0">
458
+ <data key="d13">
459
+ <y:PolyLineEdge>
460
+ <y:EdgeLabel >
461
+ <![CDATA[ [1, 2] ]]>
462
+ </y:EdgeLabel >
463
+ <y:Arrows source="none" target="standard"/>
464
+ <y:LineStyle color="#FF0000" type="line" width="1.0"/>
465
+ </y:PolyLineEdge>
466
+ </data>
467
+ </edge>
468
+ <edge source="gradient_wrt_Const_189:1-add_823:0_grad-add-shape_y_3" target="gradient_wrt_Const_189:1-add_823:0_grad-broadcast_gradient_args_964:0">
469
+ <data key="d13">
470
+ <y:PolyLineEdge>
471
+ <y:EdgeLabel >
472
+ <![CDATA[ [2] ]]>
473
+ </y:EdgeLabel >
474
+ <y:Arrows source="none" target="standard"/>
475
+ <y:LineStyle color="#0000FF" type="line" width="1.0"/>
476
+ </y:PolyLineEdge>
477
+ </data>
478
+ </edge>
479
+ <edge source="gradient_wrt_Const_189:1-index_962:0" target="gradient_wrt_Const_189:1-add_823:0_grad-add-reduce_sum_y_3">
480
+ <data key="d13">
481
+ <y:PolyLineEdge>
482
+ <y:EdgeLabel >
483
+ <![CDATA[ [[-0.18181076984697453, -0.2235356954437098]] ]]>
484
+ </y:EdgeLabel >
485
+ <y:Arrows source="none" target="standard"/>
486
+ <y:LineStyle color="#FF0000" type="line" width="1.0"/>
487
+ </y:PolyLineEdge>
488
+ </data>
489
+ </edge>
490
+ <edge source="gradient_wrt_Const_189:1-add_823:0_grad-broadcast_gradient_args_964:0" target="gradient_wrt_Const_189:1-add_823:0_grad-add-reduce_sum_y_3">
491
+ <data key="d13">
492
+ <y:PolyLineEdge>
493
+ <y:EdgeLabel >
494
+ <![CDATA[ [0] ]]>
495
+ </y:EdgeLabel >
496
+ <y:Arrows source="none" target="standard"/>
497
+ <y:LineStyle color="#0000FF" type="line" width="1.0"/>
498
+ </y:PolyLineEdge>
499
+ </data>
500
+ </edge>
501
+ <edge source="Const_189:1" target="gradient_wrt_Const_189:1-ones_like_971:0">
502
+ <data key="d13">
503
+ <y:PolyLineEdge>
504
+ <y:EdgeLabel >
505
+ <![CDATA[ [4.0, 5.0] ]]>
506
+ </y:EdgeLabel >
507
+ <y:Arrows source="none" target="standard"/>
508
+ <y:LineStyle color="#FF0000" type="line" width="1.0"/>
509
+ </y:PolyLineEdge>
510
+ </data>
511
+ </edge>
512
+ <edge source="gradient_wrt_Const_189:1-add_823:0_grad-add-reduce_sum_y_3" target="gradient_wrt_Const_189:1-mul_972:0">
513
+ <data key="d13">
514
+ <y:PolyLineEdge>
515
+ <y:EdgeLabel >
516
+ <![CDATA[ [-0.18181076984697453, -0.2235356954437098] ]]>
517
+ </y:EdgeLabel >
518
+ <y:Arrows source="none" target="standard"/>
519
+ <y:LineStyle color="#FF0000" type="line" width="1.0"/>
520
+ </y:PolyLineEdge>
521
+ </data>
522
+ </edge>
523
+ <edge source="gradient_wrt_Const_189:1-ones_like_971:0" target="gradient_wrt_Const_189:1-mul_972:0">
524
+ <data key="d13">
525
+ <y:PolyLineEdge>
526
+ <y:EdgeLabel >
527
+ <![CDATA[ ]]>
528
+ </y:EdgeLabel >
529
+ <y:Arrows source="none" target="standard"/>
530
+ <y:LineStyle color="#0000FF" type="line" width="1.0"/>
531
+ </y:PolyLineEdge>
532
+ </data>
533
+ </edge>
534
+ <data key="d3">[]</data>
535
+ <edge source="Const_189:1" target="gradient_wrt_Const_189:1-shape_973:0">
536
+ <data key="d13">
537
+ <y:PolyLineEdge>
538
+ <y:EdgeLabel >
539
+ <![CDATA[ [4.0, 5.0] ]]>
540
+ </y:EdgeLabel >
541
+ <y:Arrows source="none" target="standard"/>
542
+ <y:LineStyle color="#FF0000" type="line" width="1.0"/>
543
+ </y:PolyLineEdge>
544
+ </data>
545
+ </edge>
546
+ <edge source="gradient_wrt_Const_189:1-mul_972:0" target="gradient_wrt_Const_189:1-truncate_974:0">
547
+ <data key="d13">
548
+ <y:PolyLineEdge>
549
+ <y:EdgeLabel >
550
+ <![CDATA[ [-0.18181076984697453, -0.2235356954437098] ]]>
551
+ </y:EdgeLabel >
552
+ <y:Arrows source="none" target="standard"/>
553
+ <y:LineStyle color="#FF0000" type="line" width="1.0"/>
554
+ </y:PolyLineEdge>
555
+ </data>
556
+ </edge>
557
+ <edge source="gradient_wrt_Const_189:1-shape_973:0" target="gradient_wrt_Const_189:1-truncate_974:0">
558
+ <data key="d13">
559
+ <y:PolyLineEdge>
560
+ <y:EdgeLabel >
561
+ <![CDATA[ [] ]]>
562
+ </y:EdgeLabel >
563
+ <y:Arrows source="none" target="standard"/>
564
+ <y:LineStyle color="#0000FF" type="line" width="1.0"/>
565
+ </y:PolyLineEdge>
566
+ </data>
567
+ </edge>
568
+ <edge source="gradient_wrt_Const_189:1-truncate_974:0" target="-flow_group_975:">
569
+ <data key="d13">
570
+ <y:PolyLineEdge>
571
+ <y:EdgeLabel >
572
+ <![CDATA[ [-0.18181076984697453, -0.2235356954437098] ]]>
573
+ </y:EdgeLabel >
574
+ <y:Arrows source="none" target="standard"/>
575
+ <y:LineStyle color="#FF0000" type="line" width="1.0"/>
576
+ </y:PolyLineEdge>
577
+ </data>
578
+ </edge>
579
+ <node id="" yfiles.foldertype="group">
580
+ <data key="d9">
581
+ <y:ProxyAutoBoundsNode>
582
+ <y:Realizers active="0">
583
+ <y:GroupNode>
584
+ <y:Fill color="#CAECFF84" transparent="false"/>
585
+ <y:BorderStyle color="#666699" type="dotted" width="1.0"/>
586
+ <y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#99CCFF" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" horizontalTextPosition="center" iconTextGap="4" modelName="internal" modelPosition="t" textColor="#000000" verticalTextPosition="bottom" visible="true" width="67.18603515625" x="-8.593017578125" y="0.0"></y:NodeLabel>
587
+ <y:Shape type="roundrectangle"/>
588
+ </y:GroupNode>
589
+ </y:Realizers>
590
+ </y:ProxyAutoBoundsNode>
591
+ </data>
592
+ <graph edgedefault="directed" id="n105:">
593
+ <node id="" yfiles.foldertype="group">
594
+ <data key="d9">
595
+ <y:ProxyAutoBoundsNode>
596
+ <y:Realizers active="0">
597
+ <y:GroupNode>
598
+ <y:Fill color="#CAECFF84" transparent="false"/>
599
+ <y:BorderStyle color="#666699" type="dotted" width="1.0"/>
600
+ <y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#99CCFF" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" horizontalTextPosition="center" iconTextGap="4" modelName="internal" modelPosition="t" textColor="#000000" verticalTextPosition="bottom" visible="true" width="67.18603515625" x="-8.593017578125" y="0.0"></y:NodeLabel>
601
+ <y:Shape type="roundrectangle"/>
602
+ </y:GroupNode>
603
+ </y:Realizers>
604
+ </y:ProxyAutoBoundsNode>
605
+ </data>
606
+ <graph edgedefault="directed" id="n105:">
607
+ <node id="-flow_group_975:">
608
+ <data key="d0">flow_group</data>
609
+ <data key="d1">
610
+ flow_group(gradient_wrt_Const_189:1/truncate_974:0)</data>
611
+ <data key="d2">blue</data>
612
+ <data key="d9">
613
+ <y:ShapeNode>
614
+ <y:Fill color="#99CC00" transparent="false"/>
615
+ <y:NodeLabel alignment="center">flow_group</y:NodeLabel>
616
+ </y:ShapeNode>
617
+ </data>
618
+ </node>
619
+ </graph>
620
+ </node>
621
+ </graph>
622
+ </node>
623
+ <node id="gradient_wrt_Const_189:1" yfiles.foldertype="group">
624
+ <data key="d9">
625
+ <y:ProxyAutoBoundsNode>
626
+ <y:Realizers active="0">
627
+ <y:GroupNode>
628
+ <y:Fill color="#CAECFF84" transparent="false"/>
629
+ <y:BorderStyle color="#666699" type="dotted" width="1.0"/>
630
+ <y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#99CCFF" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" horizontalTextPosition="center" iconTextGap="4" modelName="internal" modelPosition="t" textColor="#000000" verticalTextPosition="bottom" visible="true" width="67.18603515625" x="-8.593017578125" y="0.0">gradient_wrt_Const_189:1</y:NodeLabel>
631
+ <y:Shape type="roundrectangle"/>
632
+ </y:GroupNode>
633
+ </y:Realizers>
634
+ </y:ProxyAutoBoundsNode>
635
+ </data>
636
+ <graph edgedefault="directed" id="n105:">
637
+ <node id="gradient_wrt_Const_189:1" yfiles.foldertype="group">
638
+ <data key="d9">
639
+ <y:ProxyAutoBoundsNode>
640
+ <y:Realizers active="0">
641
+ <y:GroupNode>
642
+ <y:Fill color="#CAECFF84" transparent="false"/>
643
+ <y:BorderStyle color="#666699" type="dotted" width="1.0"/>
644
+ <y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#99CCFF" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" horizontalTextPosition="center" iconTextGap="4" modelName="internal" modelPosition="t" textColor="#000000" verticalTextPosition="bottom" visible="true" width="67.18603515625" x="-8.593017578125" y="0.0">gradient_wrt_Const_189:1</y:NodeLabel>
645
+ <y:Shape type="roundrectangle"/>
646
+ </y:GroupNode>
647
+ </y:Realizers>
648
+ </y:ProxyAutoBoundsNode>
649
+ </data>
650
+ <graph edgedefault="directed" id="n105:">
651
+ <node id="gradient_wrt_Const_189:1-truncate_974:0">
652
+ <data key="d0">truncate</data>
653
+ <data key="d1">
654
+ truncate(gradient_wrt_Const_189:1/mul_972:0, gradient_wrt_Const_189:1/shape_973:0)</data>
655
+ <data key="d2">blue</data>
656
+ <data key="d9">
657
+ <y:ShapeNode>
658
+ <y:Fill color="#FFFF99" transparent="false"/>
659
+ <y:NodeLabel alignment="center">truncate</y:NodeLabel>
660
+ </y:ShapeNode>
661
+ </data>
662
+ </node>
663
+ <node id="gradient_wrt_Const_189:1-mul_972:0">
664
+ <data key="d0">mul</data>
665
+ <data key="d1">
666
+ (gradient_wrt_Const_189:1/add_823:0_grad/add/reduce_sum_y_3 * gradient_wrt_Const_189:1/ones_like_971:0)</data>
667
+ <data key="d2">blue</data>
668
+ <data key="d9">
669
+ <y:ShapeNode>
670
+ <y:Fill color="#99CC00" transparent="false"/>
671
+ <y:NodeLabel alignment="center">mul</y:NodeLabel>
672
+ </y:ShapeNode>
673
+ </data>
674
+ </node>
675
+ <node id="gradient_wrt_Const_189:1-index_962:0">
676
+ <data key="d0">index</data>
677
+ <data key="d1">
678
+ gradient_wrt_Const_189:1/broadcast_transform_960:0[gradient_wrt_Const_189:1/Const_229:0]</data>
679
+ <data key="d2">blue</data>
680
+ <data key="d9">
681
+ <y:ShapeNode>
682
+ <y:Fill color="#99CC00" transparent="false"/>
683
+ <y:NodeLabel alignment="center">index</y:NodeLabel>
684
+ </y:ShapeNode>
685
+ </data>
686
+ </node>
687
+ <node id="gradient_wrt_Const_189:1-broadcast_transform_960:0">
688
+ <data key="d0">broadcast_transform</data>
689
+ <data key="d1">
690
+ broadcast_transform(add_823:0,gradient_wrt_Const_189:1/sin_824:0_grad/mul_959:0)</data>
691
+ <data key="d2">blue</data>
692
+ <data key="d9">
693
+ <y:ShapeNode>
694
+ <y:Fill color="#99CC00" transparent="false"/>
695
+ <y:NodeLabel alignment="center">broadcast_transform</y:NodeLabel>
696
+ </y:ShapeNode>
697
+ </data>
698
+ </node>
699
+ <node id="gradient_wrt_Const_189:1-index_941:0">
700
+ <data key="d0">index</data>
701
+ <data key="d1">
702
+ gradient_wrt_Const_189:1/broadcast_transform_940:0[gradient_wrt_Const_189:1/Const_221:0]</data>
703
+ <data key="d2">blue</data>
704
+ <data key="d9">
705
+ <y:ShapeNode>
706
+ <y:Fill color="#99CC00" transparent="false"/>
707
+ <y:NodeLabel alignment="center">index</y:NodeLabel>
708
+ </y:ShapeNode>
709
+ </data>
710
+ </node>
711
+ <node id="gradient_wrt_Const_189:1-broadcast_transform_940:0">
712
+ <data key="d0">broadcast_transform</data>
713
+ <data key="d1">
714
+ broadcast_transform(add_826:0,gradient_wrt_Const_189:1/sin_827:0_grad/mul_939:0)</data>
715
+ <data key="d2">blue</data>
716
+ <data key="d9">
717
+ <y:ShapeNode>
718
+ <y:Fill color="#99CC00" transparent="false"/>
719
+ <y:NodeLabel alignment="center">broadcast_transform</y:NodeLabel>
720
+ </y:ShapeNode>
721
+ </data>
722
+ </node>
723
+ <node id="gradient_wrt_Const_189:1-ones_like_937:0">
724
+ <data key="d0">ones_like</data>
725
+ <data key="d1">
726
+ ones_like(Const_189:1)</data>
727
+ <data key="d2">blue</data>
728
+ <data key="d9">
729
+ <y:ShapeNode>
730
+ <y:Fill color="#FFFF99" transparent="false"/>
731
+ <y:NodeLabel alignment="center">ones_like</y:NodeLabel>
732
+ </y:ShapeNode>
733
+ </data>
734
+ </node>
735
+ <node id="gradient_wrt_Const_189:1-Const_221:0">
736
+ <data key="d0">gradient_wrt_Const_189:1/Const_221:0</data>
737
+ <data key="d2">black</data>
738
+ <data key="d9">
739
+ <y:ShapeNode>
740
+ <y:Fill color="#FFFFFF" transparent="false"/>
741
+ <y:NodeLabel alignment="center">gradient_wrt_Const_189:1/Const_221:0</y:NodeLabel>
742
+ </y:ShapeNode>
743
+ </data>
744
+ </node>
745
+ <node id="gradient_wrt_Const_189:1-Const_229:0">
746
+ <data key="d0">gradient_wrt_Const_189:1/Const_229:0</data>
747
+ <data key="d2">black</data>
748
+ <data key="d9">
749
+ <y:ShapeNode>
750
+ <y:Fill color="#FFFFFF" transparent="false"/>
751
+ <y:NodeLabel alignment="center">gradient_wrt_Const_189:1/Const_229:0</y:NodeLabel>
752
+ </y:ShapeNode>
753
+ </data>
754
+ </node>
755
+ <node id="gradient_wrt_Const_189:1-ones_like_971:0">
756
+ <data key="d0">ones_like</data>
757
+ <data key="d1">
758
+ ones_like(Const_189:1)</data>
759
+ <data key="d2">blue</data>
760
+ <data key="d9">
761
+ <y:ShapeNode>
762
+ <y:Fill color="#FFFF99" transparent="false"/>
763
+ <y:NodeLabel alignment="center">ones_like</y:NodeLabel>
764
+ </y:ShapeNode>
765
+ </data>
766
+ </node>
767
+ <node id="gradient_wrt_Const_189:1-shape_973:0">
768
+ <data key="d0">shape</data>
769
+ <data key="d1">
770
+ Const_189:1.shape</data>
771
+ <data key="d2">blue</data>
772
+ <data key="d9">
773
+ <y:ShapeNode>
774
+ <y:Fill color="#99CC00" transparent="false"/>
775
+ <y:NodeLabel alignment="center">shape</y:NodeLabel>
776
+ </y:ShapeNode>
777
+ </data>
778
+ </node>
779
+ <node id="add_823:0_grad" yfiles.foldertype="group">
780
+ <data key="d9">
781
+ <y:ProxyAutoBoundsNode>
782
+ <y:Realizers active="0">
783
+ <y:GroupNode>
784
+ <y:Fill color="#CAECFF84" transparent="false"/>
785
+ <y:BorderStyle color="#666699" type="dotted" width="1.0"/>
786
+ <y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#99CCFF" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" horizontalTextPosition="center" iconTextGap="4" modelName="internal" modelPosition="t" textColor="#000000" verticalTextPosition="bottom" visible="true" width="67.18603515625" x="-8.593017578125" y="0.0">add_823:0_grad</y:NodeLabel>
787
+ <y:Shape type="roundrectangle"/>
788
+ </y:GroupNode>
789
+ </y:Realizers>
790
+ </y:ProxyAutoBoundsNode>
791
+ </data>
792
+ <graph edgedefault="directed" id="n105:">
793
+ <node id="gradient_wrt_Const_189:1-add_823:0_grad-broadcast_gradient_args_964:0">
794
+ <data key="d0">broadcast_gradient_args</data>
795
+ <data key="d1">
796
+ broadcast_transform(gradient_wrt_Const_189:1/add_823:0_grad/add/shape_x_3,gradient_wrt_Const_189:1/add_823:0_grad/add/shape_y_3)</data>
797
+ <data key="d2">blue</data>
798
+ <data key="d9">
799
+ <y:ShapeNode>
800
+ <y:Fill color="#99CC00" transparent="false"/>
801
+ <y:NodeLabel alignment="center">broadcast_gradient_args</y:NodeLabel>
802
+ </y:ShapeNode>
803
+ </data>
804
+ </node>
805
+ <node id="add" yfiles.foldertype="group">
806
+ <data key="d9">
807
+ <y:ProxyAutoBoundsNode>
808
+ <y:Realizers active="0">
809
+ <y:GroupNode>
810
+ <y:Fill color="#CAECFF84" transparent="false"/>
811
+ <y:BorderStyle color="#666699" type="dotted" width="1.0"/>
812
+ <y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#99CCFF" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" horizontalTextPosition="center" iconTextGap="4" modelName="internal" modelPosition="t" textColor="#000000" verticalTextPosition="bottom" visible="true" width="67.18603515625" x="-8.593017578125" y="0.0">add</y:NodeLabel>
813
+ <y:Shape type="roundrectangle"/>
814
+ </y:GroupNode>
815
+ </y:Realizers>
816
+ </y:ProxyAutoBoundsNode>
817
+ </data>
818
+ <graph edgedefault="directed" id="n105:">
819
+ <node id="gradient_wrt_Const_189:1-add_823:0_grad-add-reduce_sum_y_3">
820
+ <data key="d0">sum</data>
821
+ <data key="d1">
822
+ sum(|gradient_wrt_Const_189:1/index_962:0|, axis=gradient_wrt_Const_189:1/add_823:0_grad/broadcast_gradient_args_964:0)</data>
823
+ <data key="d2">blue</data>
824
+ <data key="d9">
825
+ <y:ShapeNode>
826
+ <y:Fill color="#99CC00" transparent="false"/>
827
+ <y:NodeLabel alignment="center">sum</y:NodeLabel>
828
+ </y:ShapeNode>
829
+ </data>
830
+ </node>
831
+ <node id="gradient_wrt_Const_189:1-add_823:0_grad-add-shape_x_3">
832
+ <data key="d0">shape</data>
833
+ <data key="d1">
834
+ matmul_822:0.shape</data>
835
+ <data key="d2">blue</data>
836
+ <data key="d9">
837
+ <y:ShapeNode>
838
+ <y:Fill color="#99CC00" transparent="false"/>
839
+ <y:NodeLabel alignment="center">shape</y:NodeLabel>
840
+ </y:ShapeNode>
841
+ </data>
842
+ </node>
843
+ <node id="gradient_wrt_Const_189:1-add_823:0_grad-add-shape_y_3">
844
+ <data key="d0">shape</data>
845
+ <data key="d1">
846
+ Const_189:1.shape</data>
847
+ <data key="d2">blue</data>
848
+ <data key="d9">
849
+ <y:ShapeNode>
850
+ <y:Fill color="#99CC00" transparent="false"/>
851
+ <y:NodeLabel alignment="center">shape</y:NodeLabel>
852
+ </y:ShapeNode>
853
+ </data>
854
+ </node>
855
+ </graph>
856
+ </node>
857
+ </graph>
858
+ </node>
859
+ <node id="sin_824:0_grad" yfiles.foldertype="group">
860
+ <data key="d9">
861
+ <y:ProxyAutoBoundsNode>
862
+ <y:Realizers active="0">
863
+ <y:GroupNode>
864
+ <y:Fill color="#CAECFF84" transparent="false"/>
865
+ <y:BorderStyle color="#666699" type="dotted" width="1.0"/>
866
+ <y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#99CCFF" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" horizontalTextPosition="center" iconTextGap="4" modelName="internal" modelPosition="t" textColor="#000000" verticalTextPosition="bottom" visible="true" width="67.18603515625" x="-8.593017578125" y="0.0">sin_824:0_grad</y:NodeLabel>
867
+ <y:Shape type="roundrectangle"/>
868
+ </y:GroupNode>
869
+ </y:Realizers>
870
+ </y:ProxyAutoBoundsNode>
871
+ </data>
872
+ <graph edgedefault="directed" id="n105:">
873
+ <node id="gradient_wrt_Const_189:1-sin_824:0_grad-mul_959:0">
874
+ <data key="d0">mul</data>
875
+ <data key="d1">
876
+ (gradient_wrt_Const_189:1/matmul_825:0_grad/matmul/grad_a_norm_mul_da_2 * gradient_wrt_Const_189:1/sin_824:0_grad/cos_958:0)</data>
877
+ <data key="d2">blue</data>
878
+ <data key="d9">
879
+ <y:ShapeNode>
880
+ <y:Fill color="#99CC00" transparent="false"/>
881
+ <y:NodeLabel alignment="center">mul</y:NodeLabel>
882
+ </y:ShapeNode>
883
+ </data>
884
+ </node>
885
+ <node id="gradient_wrt_Const_189:1-sin_824:0_grad-cos_958:0">
886
+ <data key="d0">cos</data>
887
+ <data key="d1">
888
+ cos(add_823:0)</data>
889
+ <data key="d2">blue</data>
890
+ <data key="d9">
891
+ <y:ShapeNode>
892
+ <y:Fill color="#99CC00" transparent="false"/>
893
+ <y:NodeLabel alignment="center">cos</y:NodeLabel>
894
+ </y:ShapeNode>
895
+ </data>
896
+ </node>
897
+ </graph>
898
+ </node>
899
+ <node id="matmul_825:0_grad" yfiles.foldertype="group">
900
+ <data key="d9">
901
+ <y:ProxyAutoBoundsNode>
902
+ <y:Realizers active="0">
903
+ <y:GroupNode>
904
+ <y:Fill color="#CAECFF84" transparent="false"/>
905
+ <y:BorderStyle color="#666699" type="dotted" width="1.0"/>
906
+ <y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#99CCFF" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" horizontalTextPosition="center" iconTextGap="4" modelName="internal" modelPosition="t" textColor="#000000" verticalTextPosition="bottom" visible="true" width="67.18603515625" x="-8.593017578125" y="0.0">matmul_825:0_grad</y:NodeLabel>
907
+ <y:Shape type="roundrectangle"/>
908
+ </y:GroupNode>
909
+ </y:Realizers>
910
+ </y:ProxyAutoBoundsNode>
911
+ </data>
912
+ <graph edgedefault="directed" id="n105:">
913
+ <node id="gradient_wrt_Const_189:1-matmul_825:0_grad-matmul_956:0">
914
+ <data key="d0">matmul</data>
915
+ <data key="d1">
916
+ gradient_wrt_Const_189:1/matmul_825:0_grad/matmul/identity0_2.matmul(Const_188:2)</data>
917
+ <data key="d2">blue</data>
918
+ <data key="d9">
919
+ <y:ShapeNode>
920
+ <y:Fill color="#99CC00" transparent="false"/>
921
+ <y:NodeLabel alignment="center">matmul</y:NodeLabel>
922
+ </y:ShapeNode>
923
+ </data>
924
+ </node>
925
+ <node id="gradient_wrt_Const_189:1-matmul_825:0_grad-Const_224:1">
926
+ <data key="d0">gradient_wrt_Const_189:1/matmul_825:0_grad/Const_224:1</data>
927
+ <data key="d2">black</data>
928
+ <data key="d9">
929
+ <y:ShapeNode>
930
+ <y:Fill color="#FFFFFF" transparent="false"/>
931
+ <y:NodeLabel alignment="center">gradient_wrt_Const_189:1/matmul_825:0_grad/Const_224:1</y:NodeLabel>
932
+ </y:ShapeNode>
933
+ </data>
934
+ </node>
935
+ <node id="matmul" yfiles.foldertype="group">
936
+ <data key="d9">
937
+ <y:ProxyAutoBoundsNode>
938
+ <y:Realizers active="0">
939
+ <y:GroupNode>
940
+ <y:Fill color="#CAECFF84" transparent="false"/>
941
+ <y:BorderStyle color="#666699" type="dotted" width="1.0"/>
942
+ <y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#99CCFF" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" horizontalTextPosition="center" iconTextGap="4" modelName="internal" modelPosition="t" textColor="#000000" verticalTextPosition="bottom" visible="true" width="67.18603515625" x="-8.593017578125" y="0.0">matmul</y:NodeLabel>
943
+ <y:Shape type="roundrectangle"/>
944
+ </y:GroupNode>
945
+ </y:Realizers>
946
+ </y:ProxyAutoBoundsNode>
947
+ </data>
948
+ <graph edgedefault="directed" id="n105:">
949
+ <node id="gradient_wrt_Const_189:1-matmul_825:0_grad-matmul-grad_a_norm_mul_da_2">
950
+ <data key="d0">mul</data>
951
+ <data key="d1">
952
+ (gradient_wrt_Const_189:1/add_826:0_grad/add/reduce_sum_x_1 * gradient_wrt_Const_189:1/matmul_825:0_grad/matmul_956:0)</data>
953
+ <data key="d2">blue</data>
954
+ <data key="d9">
955
+ <y:ShapeNode>
956
+ <y:Fill color="#FFFF99" transparent="false"/>
957
+ <y:NodeLabel alignment="center">mul</y:NodeLabel>
958
+ </y:ShapeNode>
959
+ </data>
960
+ </node>
961
+ <node id="gradient_wrt_Const_189:1-matmul_825:0_grad-matmul-identity0_2">
962
+ <data key="d0">ones</data>
963
+ <data key="d1">
964
+ ones(gradient_wrt_Const_189:1/matmul_825:0_grad/Const_224:1)</data>
965
+ <data key="d2">blue</data>
966
+ <data key="d9">
967
+ <y:ShapeNode>
968
+ <y:Fill color="#99CC00" transparent="false"/>
969
+ <y:NodeLabel alignment="center">ones</y:NodeLabel>
970
+ </y:ShapeNode>
971
+ </data>
972
+ </node>
973
+ </graph>
974
+ </node>
975
+ </graph>
976
+ </node>
977
+ <node id="add_826:0_grad" yfiles.foldertype="group">
978
+ <data key="d9">
979
+ <y:ProxyAutoBoundsNode>
980
+ <y:Realizers active="0">
981
+ <y:GroupNode>
982
+ <y:Fill color="#CAECFF84" transparent="false"/>
983
+ <y:BorderStyle color="#666699" type="dotted" width="1.0"/>
984
+ <y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#99CCFF" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" horizontalTextPosition="center" iconTextGap="4" modelName="internal" modelPosition="t" textColor="#000000" verticalTextPosition="bottom" visible="true" width="67.18603515625" x="-8.593017578125" y="0.0">add_826:0_grad</y:NodeLabel>
985
+ <y:Shape type="roundrectangle"/>
986
+ </y:GroupNode>
987
+ </y:Realizers>
988
+ </y:ProxyAutoBoundsNode>
989
+ </data>
990
+ <graph edgedefault="directed" id="n105:">
991
+ <node id="gradient_wrt_Const_189:1-add_826:0_grad-broadcast_gradient_args_942:0">
992
+ <data key="d0">broadcast_gradient_args</data>
993
+ <data key="d1">
994
+ broadcast_transform(gradient_wrt_Const_189:1/add_826:0_grad/add/shape_y_1,gradient_wrt_Const_189:1/add_826:0_grad/add/shape_x_1)</data>
995
+ <data key="d2">blue</data>
996
+ <data key="d9">
997
+ <y:ShapeNode>
998
+ <y:Fill color="#99CC00" transparent="false"/>
999
+ <y:NodeLabel alignment="center">broadcast_gradient_args</y:NodeLabel>
1000
+ </y:ShapeNode>
1001
+ </data>
1002
+ </node>
1003
+ <node id="add" yfiles.foldertype="group">
1004
+ <data key="d9">
1005
+ <y:ProxyAutoBoundsNode>
1006
+ <y:Realizers active="0">
1007
+ <y:GroupNode>
1008
+ <y:Fill color="#CAECFF84" transparent="false"/>
1009
+ <y:BorderStyle color="#666699" type="dotted" width="1.0"/>
1010
+ <y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#99CCFF" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" horizontalTextPosition="center" iconTextGap="4" modelName="internal" modelPosition="t" textColor="#000000" verticalTextPosition="bottom" visible="true" width="67.18603515625" x="-8.593017578125" y="0.0">add</y:NodeLabel>
1011
+ <y:Shape type="roundrectangle"/>
1012
+ </y:GroupNode>
1013
+ </y:Realizers>
1014
+ </y:ProxyAutoBoundsNode>
1015
+ </data>
1016
+ <graph edgedefault="directed" id="n105:">
1017
+ <node id="gradient_wrt_Const_189:1-add_826:0_grad-add-reduce_sum_x_1">
1018
+ <data key="d0">sum</data>
1019
+ <data key="d1">
1020
+ sum(|gradient_wrt_Const_189:1/index_941:0|, axis=gradient_wrt_Const_189:1/add_826:0_grad/broadcast_gradient_args_942:0)</data>
1021
+ <data key="d2">blue</data>
1022
+ <data key="d9">
1023
+ <y:ShapeNode>
1024
+ <y:Fill color="#99CC00" transparent="false"/>
1025
+ <y:NodeLabel alignment="center">sum</y:NodeLabel>
1026
+ </y:ShapeNode>
1027
+ </data>
1028
+ </node>
1029
+ <node id="gradient_wrt_Const_189:1-add_826:0_grad-add-shape_y_1">
1030
+ <data key="d0">shape</data>
1031
+ <data key="d1">
1032
+ Const_190:1.shape</data>
1033
+ <data key="d2">blue</data>
1034
+ <data key="d9">
1035
+ <y:ShapeNode>
1036
+ <y:Fill color="#99CC00" transparent="false"/>
1037
+ <y:NodeLabel alignment="center">shape</y:NodeLabel>
1038
+ </y:ShapeNode>
1039
+ </data>
1040
+ </node>
1041
+ <node id="gradient_wrt_Const_189:1-add_826:0_grad-add-shape_x_1">
1042
+ <data key="d0">shape</data>
1043
+ <data key="d1">
1044
+ matmul_825:0.shape</data>
1045
+ <data key="d2">blue</data>
1046
+ <data key="d9">
1047
+ <y:ShapeNode>
1048
+ <y:Fill color="#99CC00" transparent="false"/>
1049
+ <y:NodeLabel alignment="center">shape</y:NodeLabel>
1050
+ </y:ShapeNode>
1051
+ </data>
1052
+ </node>
1053
+ </graph>
1054
+ </node>
1055
+ </graph>
1056
+ </node>
1057
+ <node id="sin_827:0_grad" yfiles.foldertype="group">
1058
+ <data key="d9">
1059
+ <y:ProxyAutoBoundsNode>
1060
+ <y:Realizers active="0">
1061
+ <y:GroupNode>
1062
+ <y:Fill color="#CAECFF84" transparent="false"/>
1063
+ <y:BorderStyle color="#666699" type="dotted" width="1.0"/>
1064
+ <y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#99CCFF" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" horizontalTextPosition="center" iconTextGap="4" modelName="internal" modelPosition="t" textColor="#000000" verticalTextPosition="bottom" visible="true" width="67.18603515625" x="-8.593017578125" y="0.0">sin_827:0_grad</y:NodeLabel>
1065
+ <y:Shape type="roundrectangle"/>
1066
+ </y:GroupNode>
1067
+ </y:Realizers>
1068
+ </y:ProxyAutoBoundsNode>
1069
+ </data>
1070
+ <graph edgedefault="directed" id="n105:">
1071
+ <node id="gradient_wrt_Const_189:1-sin_827:0_grad-mul_939:0">
1072
+ <data key="d0">mul</data>
1073
+ <data key="d1">
1074
+ (gradient_wrt_Const_189:1/ones_like_937:0 * gradient_wrt_Const_189:1/sin_827:0_grad/cos_938:0)</data>
1075
+ <data key="d2">blue</data>
1076
+ <data key="d9">
1077
+ <y:ShapeNode>
1078
+ <y:Fill color="#99CC00" transparent="false"/>
1079
+ <y:NodeLabel alignment="center">mul</y:NodeLabel>
1080
+ </y:ShapeNode>
1081
+ </data>
1082
+ </node>
1083
+ <node id="gradient_wrt_Const_189:1-sin_827:0_grad-cos_938:0">
1084
+ <data key="d0">cos</data>
1085
+ <data key="d1">
1086
+ cos(add_826:0)</data>
1087
+ <data key="d2">blue</data>
1088
+ <data key="d9">
1089
+ <y:ShapeNode>
1090
+ <y:Fill color="#99CC00" transparent="false"/>
1091
+ <y:NodeLabel alignment="center">cos</y:NodeLabel>
1092
+ </y:ShapeNode>
1093
+ </data>
1094
+ </node>
1095
+ </graph>
1096
+ </node>
1097
+ </graph>
1098
+ </node>
1099
+ </graph>
1100
+ </node>
1101
+ <node id="program" yfiles.foldertype="group">
1102
+ <data key="d9">
1103
+ <y:ProxyAutoBoundsNode>
1104
+ <y:Realizers active="0">
1105
+ <y:GroupNode>
1106
+ <y:Fill color="#CAECFF84" transparent="false"/>
1107
+ <y:BorderStyle color="#666699" type="dotted" width="1.0"/>
1108
+ <y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#99CCFF" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" horizontalTextPosition="center" iconTextGap="4" modelName="internal" modelPosition="t" textColor="#000000" verticalTextPosition="bottom" visible="true" width="67.18603515625" x="-8.593017578125" y="0.0">program</y:NodeLabel>
1109
+ <y:Shape type="roundrectangle"/>
1110
+ </y:GroupNode>
1111
+ </y:Realizers>
1112
+ </y:ProxyAutoBoundsNode>
1113
+ </data>
1114
+ <graph edgedefault="directed" id="n105:">
1115
+ <node id="program" yfiles.foldertype="group">
1116
+ <data key="d9">
1117
+ <y:ProxyAutoBoundsNode>
1118
+ <y:Realizers active="0">
1119
+ <y:GroupNode>
1120
+ <y:Fill color="#CAECFF84" transparent="false"/>
1121
+ <y:BorderStyle color="#666699" type="dotted" width="1.0"/>
1122
+ <y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#99CCFF" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.4609375" horizontalTextPosition="center" iconTextGap="4" modelName="internal" modelPosition="t" textColor="#000000" verticalTextPosition="bottom" visible="true" width="67.18603515625" x="-8.593017578125" y="0.0">program</y:NodeLabel>
1123
+ <y:Shape type="roundrectangle"/>
1124
+ </y:GroupNode>
1125
+ </y:Realizers>
1126
+ </y:ProxyAutoBoundsNode>
1127
+ </data>
1128
+ <graph edgedefault="directed" id="n105:">
1129
+ <node id="add_823:0">
1130
+ <data key="d0">add</data>
1131
+ <data key="d1">
1132
+ (matmul_822:0 + Const_189:1)</data>
1133
+ <data key="d2">blue</data>
1134
+ <data key="d9">
1135
+ <y:ShapeNode>
1136
+ <y:Fill color="#99CC00" transparent="false"/>
1137
+ <y:NodeLabel alignment="center">add</y:NodeLabel>
1138
+ </y:ShapeNode>
1139
+ </data>
1140
+ </node>
1141
+ <node id="matmul_822:0">
1142
+ <data key="d0">matmul</data>
1143
+ <data key="d1">
1144
+ Const_186:2.matmul(Const_187:2)</data>
1145
+ <data key="d2">blue</data>
1146
+ <data key="d9">
1147
+ <y:ShapeNode>
1148
+ <y:Fill color="#99CC00" transparent="false"/>
1149
+ <y:NodeLabel alignment="center">matmul</y:NodeLabel>
1150
+ </y:ShapeNode>
1151
+ </data>
1152
+ </node>
1153
+ <node id="Const_186:2">
1154
+ <data key="d0">Const_186:2</data>
1155
+ <data key="d2">black</data>
1156
+ <data key="d9">
1157
+ <y:ShapeNode>
1158
+ <y:Fill color="#FFFFFF" transparent="false"/>
1159
+ <y:NodeLabel alignment="center">Const_186:2</y:NodeLabel>
1160
+ </y:ShapeNode>
1161
+ </data>
1162
+ </node>
1163
+ <node id="Const_187:2">
1164
+ <data key="d0">Const_187:2</data>
1165
+ <data key="d2">black</data>
1166
+ <data key="d9">
1167
+ <y:ShapeNode>
1168
+ <y:Fill color="#FFFFFF" transparent="false"/>
1169
+ <y:NodeLabel alignment="center">Const_187:2</y:NodeLabel>
1170
+ </y:ShapeNode>
1171
+ </data>
1172
+ </node>
1173
+ <node id="Const_189:1">
1174
+ <data key="d0">Const_189:1</data>
1175
+ <data key="d2">black</data>
1176
+ <data key="d9">
1177
+ <y:ShapeNode>
1178
+ <y:Fill color="#FFFFFF" transparent="false"/>
1179
+ <y:NodeLabel alignment="center">Const_189:1</y:NodeLabel>
1180
+ </y:ShapeNode>
1181
+ </data>
1182
+ </node>
1183
+ <node id="add_826:0">
1184
+ <data key="d0">add</data>
1185
+ <data key="d1">
1186
+ (matmul_825:0 + Const_190:1)</data>
1187
+ <data key="d2">blue</data>
1188
+ <data key="d9">
1189
+ <y:ShapeNode>
1190
+ <y:Fill color="#99CC00" transparent="false"/>
1191
+ <y:NodeLabel alignment="center">add</y:NodeLabel>
1192
+ </y:ShapeNode>
1193
+ </data>
1194
+ </node>
1195
+ <node id="matmul_825:0">
1196
+ <data key="d0">matmul</data>
1197
+ <data key="d1">
1198
+ sin_824:0.matmul(Const_188:2)</data>
1199
+ <data key="d2">blue</data>
1200
+ <data key="d9">
1201
+ <y:ShapeNode>
1202
+ <y:Fill color="#99CC00" transparent="false"/>
1203
+ <y:NodeLabel alignment="center">matmul</y:NodeLabel>
1204
+ </y:ShapeNode>
1205
+ </data>
1206
+ </node>
1207
+ <node id="sin_824:0">
1208
+ <data key="d0">sin</data>
1209
+ <data key="d1">
1210
+ sin(add_823:0)</data>
1211
+ <data key="d2">blue</data>
1212
+ <data key="d9">
1213
+ <y:ShapeNode>
1214
+ <y:Fill color="#99CC00" transparent="false"/>
1215
+ <y:NodeLabel alignment="center">sin</y:NodeLabel>
1216
+ </y:ShapeNode>
1217
+ </data>
1218
+ </node>
1219
+ <node id="Const_188:2">
1220
+ <data key="d0">Const_188:2</data>
1221
+ <data key="d2">black</data>
1222
+ <data key="d9">
1223
+ <y:ShapeNode>
1224
+ <y:Fill color="#FFFFFF" transparent="false"/>
1225
+ <y:NodeLabel alignment="center">Const_188:2</y:NodeLabel>
1226
+ </y:ShapeNode>
1227
+ </data>
1228
+ </node>
1229
+ <node id="Const_190:1">
1230
+ <data key="d0">Const_190:1</data>
1231
+ <data key="d2">black</data>
1232
+ <data key="d9">
1233
+ <y:ShapeNode>
1234
+ <y:Fill color="#FFFFFF" transparent="false"/>
1235
+ <y:NodeLabel alignment="center">Const_190:1</y:NodeLabel>
1236
+ </y:ShapeNode>
1237
+ </data>
1238
+ </node>
1239
+ </graph>
1240
+ </node>
1241
+ </graph>
1242
+ </node>
1243
+ <edge source="-flow_group_975:" target="out">
1244
+ <data key="d13">
1245
+ <y:PolyLineEdge>
1246
+ <y:EdgeLabel >
1247
+ <![CDATA[ [[-0.18181076984697453, -0.2235356954437098]] ]]>
1248
+ </y:EdgeLabel >
1249
+ <y:Arrows source="none" target="standard"/>
1250
+ <y:LineStyle color="#FF0000" type="line" width="1.0"/>
1251
+ </y:PolyLineEdge>
1252
+ </data>
1253
+ </edge>
1254
+ </graph>
1255
+ </graphml>