-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathp3d_resnet_kinetics.py
698 lines (698 loc) · 84.7 KB
/
p3d_resnet_kinetics.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
import sys
sys.path.insert(0, '/data2/obj_detect/mxnet/0.11.0/python')
import mxnet as mx
data = mx.symbol.Variable(name='data')
conv1 = mx.symbol.Convolution(name='conv1', data=data , num_filter=64, pad=(0, 3, 3), kernel=(1,7,7), stride=(1,2,2), no_bias=True)
bn_conv1 = mx.symbol.BatchNorm(name='bn_conv1', data=conv1 , fix_gamma=False, eps=0.000010)
conv1_relu = mx.symbol.Activation(name='conv1_relu', data=bn_conv1 , act_type='relu')
pool1 = mx.symbol.Pooling(name='pool1', data=conv1_relu , pooling_convention='full', pad=(0,0,0), kernel=(2,3,3), stride=(2,2,2), pool_type='max')
res2a_branch1 = mx.symbol.Convolution(name='res2a_branch1', data=pool1 , num_filter=256, pad=(0, 0, 0), kernel=(1,1,1), stride=(1,1,1), no_bias=True)
bn2a_branch1 = mx.symbol.BatchNorm(name='bn2a_branch1', data=res2a_branch1 , fix_gamma=False, eps=0.000010)
res2a_branch2a = mx.symbol.Convolution(name='res2a_branch2a', data=pool1 , num_filter=64, pad=(0, 0, 0), kernel=(1,1,1), stride=(1,1,1), no_bias=True)
bn2a_branch2a = mx.symbol.BatchNorm(name='bn2a_branch2a', data=res2a_branch2a , fix_gamma=False, eps=0.000010)
res2a_branch2a_relu = mx.symbol.Activation(name='res2a_branch2a_relu', data=bn2a_branch2a , act_type='relu')
res2a_branch2b = mx.symbol.Convolution(name='res2a_branch2b', data=res2a_branch2a_relu , num_filter=64, pad=(0, 1, 1), kernel=(1,3,3), stride=(1,1,1), no_bias=True)
bn2a_branch2b = mx.symbol.BatchNorm(name='bn2a_branch2b', data=res2a_branch2b , fix_gamma=False, eps=0.000010)
res2a_branch2b_relu = mx.symbol.Activation(name='res2a_branch2b_relu', data=bn2a_branch2b , act_type='relu')
res2a_branch2b_t = mx.symbol.Convolution(name='res2a_branch2b_t', data=res2a_branch2b_relu , num_filter=64, pad=(1, 0, 0), kernel=(3,1,1), stride=(1,1,1), no_bias=True)
bn2a_branch2b_t = mx.symbol.BatchNorm(name='bn2a_branch2b_t', data=res2a_branch2b_t , fix_gamma=False, eps=0.000010)
res2a_branch2b_t_relu = mx.symbol.Activation(name='res2a_branch2b_t_relu', data=bn2a_branch2b_t , act_type='relu')
res2a_branch2c = mx.symbol.Convolution(name='res2a_branch2c', data=res2a_branch2b_t_relu , num_filter=256, pad=(0, 0, 0), kernel=(1,1,1), stride=(1,1,1), no_bias=True)
bn2a_branch2c = mx.symbol.BatchNorm(name='bn2a_branch2c', data=res2a_branch2c , fix_gamma=False, eps=0.000010)
res2a = mx.symbol.broadcast_add(name='res2a', *[bn2a_branch1,bn2a_branch2c] )
res2a_relu = mx.symbol.Activation(name='res2a_relu', data=res2a , act_type='relu')
res2b_branch2a = mx.symbol.Convolution(name='res2b_branch2a', data=res2a_relu , num_filter=64, pad=(0, 0, 0), kernel=(1,1,1), stride=(1,1,1), no_bias=True)
bn2b_branch2a = mx.symbol.BatchNorm(name='bn2b_branch2a', data=res2b_branch2a , fix_gamma=False, eps=0.000010)
res2b_branch2a_relu = mx.symbol.Activation(name='res2b_branch2a_relu', data=bn2b_branch2a , act_type='relu')
res2b_branch2b = mx.symbol.Convolution(name='res2b_branch2b', data=res2b_branch2a_relu , num_filter=64, pad=(0, 1, 1), kernel=(1,3,3), stride=(1,1,1), no_bias=True)
bn2b_branch2b = mx.symbol.BatchNorm(name='bn2b_branch2b', data=res2b_branch2b , fix_gamma=False, eps=0.000010)
res2b_branch2b_relu = mx.symbol.Activation(name='res2b_branch2b_relu', data=bn2b_branch2b , act_type='relu')
res2b_branch2b_t = mx.symbol.Convolution(name='res2b_branch2b_t', data=res2b_branch2a_relu , num_filter=64, pad=(1, 0, 0), kernel=(3,1,1), stride=(1,1,1), no_bias=True)
bn2b_branch2b_t = mx.symbol.BatchNorm(name='bn2b_branch2b_t', data=res2b_branch2b_t , fix_gamma=False, eps=0.000010)
res2b_branch2b_st = res2b_branch2b_relu * 1.0 + bn2b_branch2b_t * 1.0
res2b_branch2b_st_relu = mx.symbol.Activation(name='res2b_branch2b_st_relu', data=res2b_branch2b_st , act_type='relu')
res2b_branch2c = mx.symbol.Convolution(name='res2b_branch2c', data=res2b_branch2b_st_relu , num_filter=256, pad=(0, 0, 0), kernel=(1,1,1), stride=(1,1,1), no_bias=True)
bn2b_branch2c = mx.symbol.BatchNorm(name='bn2b_branch2c', data=res2b_branch2c , fix_gamma=False, eps=0.000010)
res2b = mx.symbol.broadcast_add(name='res2b', *[res2a_relu,bn2b_branch2c] )
res2b_relu = mx.symbol.Activation(name='res2b_relu', data=res2b , act_type='relu')
res2c_branch2a = mx.symbol.Convolution(name='res2c_branch2a', data=res2b_relu , num_filter=64, pad=(0, 0, 0), kernel=(1,1,1), stride=(1,1,1), no_bias=True)
bn2c_branch2a = mx.symbol.BatchNorm(name='bn2c_branch2a', data=res2c_branch2a , fix_gamma=False, eps=0.000010)
res2c_branch2a_relu = mx.symbol.Activation(name='res2c_branch2a_relu', data=bn2c_branch2a , act_type='relu')
res2c_branch2b = mx.symbol.Convolution(name='res2c_branch2b', data=res2c_branch2a_relu , num_filter=64, pad=(0, 1, 1), kernel=(1,3,3), stride=(1,1,1), no_bias=True)
bn2c_branch2b = mx.symbol.BatchNorm(name='bn2c_branch2b', data=res2c_branch2b , fix_gamma=False, eps=0.000010)
res2c_branch2b_relu = mx.symbol.Activation(name='res2c_branch2b_relu', data=bn2c_branch2b , act_type='relu')
res2c_branch2b_t = mx.symbol.Convolution(name='res2c_branch2b_t', data=res2c_branch2b_relu , num_filter=64, pad=(1, 0, 0), kernel=(3,1,1), stride=(1,1,1), no_bias=True)
bn2c_branch2b_t = mx.symbol.BatchNorm(name='bn2c_branch2b_t', data=res2c_branch2b_t , fix_gamma=False, eps=0.000010)
res2c_branch2b_st = res2c_branch2b_relu * 0.5 + bn2c_branch2b_t * 0.5
res2c_branch2b_st_relu = mx.symbol.Activation(name='res2c_branch2b_st_relu', data=res2c_branch2b_st , act_type='relu')
res2c_branch2c = mx.symbol.Convolution(name='res2c_branch2c', data=res2c_branch2b_st_relu , num_filter=256, pad=(0, 0, 0), kernel=(1,1,1), stride=(1,1,1), no_bias=True)
bn2c_branch2c = mx.symbol.BatchNorm(name='bn2c_branch2c', data=res2c_branch2c , fix_gamma=False, eps=0.000010)
res2c = mx.symbol.broadcast_add(name='res2c', *[res2b_relu,bn2c_branch2c] )
res2c_relu = mx.symbol.Activation(name='res2c_relu', data=res2c , act_type='relu')
_3a_pool = mx.symbol.Pooling(name='_3a_pool', data=res2c_relu , pooling_convention='full', pad=(0,0,0), kernel=(2,1,1), stride=(2,1,1), pool_type='max')
res3a_branch1 = mx.symbol.Convolution(name='res3a_branch1', data=_3a_pool , num_filter=512, pad=(0, 0, 0), kernel=(1,1,1), stride=(1,2,2), no_bias=True)
bn3a_branch1 = mx.symbol.BatchNorm(name='bn3a_branch1', data=res3a_branch1 , fix_gamma=False, eps=0.000010)
res3a_branch2a = mx.symbol.Convolution(name='res3a_branch2a', data=_3a_pool , num_filter=128, pad=(0, 0, 0), kernel=(1,1,1), stride=(1,2,2), no_bias=True)
bn3a_branch2a = mx.symbol.BatchNorm(name='bn3a_branch2a', data=res3a_branch2a , fix_gamma=False, eps=0.000010)
res3a_branch2a_relu = mx.symbol.Activation(name='res3a_branch2a_relu', data=bn3a_branch2a , act_type='relu')
res3a_branch2b = mx.symbol.Convolution(name='res3a_branch2b', data=res3a_branch2a_relu , num_filter=128, pad=(0, 1, 1), kernel=(1,3,3), stride=(1,1,1), no_bias=True)
bn3a_branch2b = mx.symbol.BatchNorm(name='bn3a_branch2b', data=res3a_branch2b , fix_gamma=False, eps=0.000010)
res3a_branch2b_relu = mx.symbol.Activation(name='res3a_branch2b_relu', data=bn3a_branch2b , act_type='relu')
res3a_branch2b_t = mx.symbol.Convolution(name='res3a_branch2b_t', data=res3a_branch2b_relu , num_filter=128, pad=(1, 0, 0), kernel=(3,1,1), stride=(1,1,1), no_bias=True)
bn3a_branch2b_t = mx.symbol.BatchNorm(name='bn3a_branch2b_t', data=res3a_branch2b_t , fix_gamma=False, eps=0.000010)
res3a_branch2b_t_relu = mx.symbol.Activation(name='res3a_branch2b_t_relu', data=bn3a_branch2b_t , act_type='relu')
res3a_branch2c = mx.symbol.Convolution(name='res3a_branch2c', data=res3a_branch2b_t_relu , num_filter=512, pad=(0, 0, 0), kernel=(1,1,1), stride=(1,1,1), no_bias=True)
bn3a_branch2c = mx.symbol.BatchNorm(name='bn3a_branch2c', data=res3a_branch2c , fix_gamma=False, eps=0.000010)
res3a = mx.symbol.broadcast_add(name='res3a', *[bn3a_branch1,bn3a_branch2c] )
res3a_relu = mx.symbol.Activation(name='res3a_relu', data=res3a , act_type='relu')
res3b1_branch2a = mx.symbol.Convolution(name='res3b1_branch2a', data=res3a_relu , num_filter=128, pad=(0, 0, 0), kernel=(1,1,1), stride=(1,1,1), no_bias=True)
bn3b1_branch2a = mx.symbol.BatchNorm(name='bn3b1_branch2a', data=res3b1_branch2a , fix_gamma=False, eps=0.000010)
res3b1_branch2a_relu = mx.symbol.Activation(name='res3b1_branch2a_relu', data=bn3b1_branch2a , act_type='relu')
res3b1_branch2b = mx.symbol.Convolution(name='res3b1_branch2b', data=res3b1_branch2a_relu , num_filter=128, pad=(0, 1, 1), kernel=(1,3,3), stride=(1,1,1), no_bias=True)
bn3b1_branch2b = mx.symbol.BatchNorm(name='bn3b1_branch2b', data=res3b1_branch2b , fix_gamma=False, eps=0.000010)
res3b1_branch2b_relu = mx.symbol.Activation(name='res3b1_branch2b_relu', data=bn3b1_branch2b , act_type='relu')
res3b1_branch2b_t = mx.symbol.Convolution(name='res3b1_branch2b_t', data=res3b1_branch2a_relu , num_filter=128, pad=(1, 0, 0), kernel=(3,1,1), stride=(1,1,1), no_bias=True)
bn3b1_branch2b_t = mx.symbol.BatchNorm(name='bn3b1_branch2b_t', data=res3b1_branch2b_t , fix_gamma=False, eps=0.000010)
res3b1_branch2b_st = res3b1_branch2b_relu * 1.0 + bn3b1_branch2b_t * 1.0
res3b1_branch2b_st_relu = mx.symbol.Activation(name='res3b1_branch2b_st_relu', data=res3b1_branch2b_st , act_type='relu')
res3b1_branch2c = mx.symbol.Convolution(name='res3b1_branch2c', data=res3b1_branch2b_st_relu , num_filter=512, pad=(0, 0, 0), kernel=(1,1,1), stride=(1,1,1), no_bias=True)
bn3b1_branch2c = mx.symbol.BatchNorm(name='bn3b1_branch2c', data=res3b1_branch2c , fix_gamma=False, eps=0.000010)
res3b1 = mx.symbol.broadcast_add(name='res3b1', *[res3a_relu,bn3b1_branch2c] )
res3b1_relu = mx.symbol.Activation(name='res3b1_relu', data=res3b1 , act_type='relu')
res3b2_branch2a = mx.symbol.Convolution(name='res3b2_branch2a', data=res3b1_relu , num_filter=128, pad=(0, 0, 0), kernel=(1,1,1), stride=(1,1,1), no_bias=True)
bn3b2_branch2a = mx.symbol.BatchNorm(name='bn3b2_branch2a', data=res3b2_branch2a , fix_gamma=False, eps=0.000010)
res3b2_branch2a_relu = mx.symbol.Activation(name='res3b2_branch2a_relu', data=bn3b2_branch2a , act_type='relu')
res3b2_branch2b = mx.symbol.Convolution(name='res3b2_branch2b', data=res3b2_branch2a_relu , num_filter=128, pad=(0, 1, 1), kernel=(1,3,3), stride=(1,1,1), no_bias=True)
bn3b2_branch2b = mx.symbol.BatchNorm(name='bn3b2_branch2b', data=res3b2_branch2b , fix_gamma=False, eps=0.000010)
res3b2_branch2b_relu = mx.symbol.Activation(name='res3b2_branch2b_relu', data=bn3b2_branch2b , act_type='relu')
res3b2_branch2b_t = mx.symbol.Convolution(name='res3b2_branch2b_t', data=res3b2_branch2b_relu , num_filter=128, pad=(1, 0, 0), kernel=(3,1,1), stride=(1,1,1), no_bias=True)
bn3b2_branch2b_t = mx.symbol.BatchNorm(name='bn3b2_branch2b_t', data=res3b2_branch2b_t , fix_gamma=False, eps=0.000010)
res3b2_branch2b_st = res3b2_branch2b_relu * 0.5 + bn3b2_branch2b_t * 0.5
res3b2_branch2b_st_relu = mx.symbol.Activation(name='res3b2_branch2b_st_relu', data=res3b2_branch2b_st , act_type='relu')
res3b2_branch2c = mx.symbol.Convolution(name='res3b2_branch2c', data=res3b2_branch2b_st_relu , num_filter=512, pad=(0, 0, 0), kernel=(1,1,1), stride=(1,1,1), no_bias=True)
bn3b2_branch2c = mx.symbol.BatchNorm(name='bn3b2_branch2c', data=res3b2_branch2c , fix_gamma=False, eps=0.000010)
res3b2 = mx.symbol.broadcast_add(name='res3b2', *[res3b1_relu,bn3b2_branch2c] )
res3b2_relu = mx.symbol.Activation(name='res3b2_relu', data=res3b2 , act_type='relu')
res3b3_branch2a = mx.symbol.Convolution(name='res3b3_branch2a', data=res3b2_relu , num_filter=128, pad=(0, 0, 0), kernel=(1,1,1), stride=(1,1,1), no_bias=True)
bn3b3_branch2a = mx.symbol.BatchNorm(name='bn3b3_branch2a', data=res3b3_branch2a , fix_gamma=False, eps=0.000010)
res3b3_branch2a_relu = mx.symbol.Activation(name='res3b3_branch2a_relu', data=bn3b3_branch2a , act_type='relu')
res3b3_branch2b = mx.symbol.Convolution(name='res3b3_branch2b', data=res3b3_branch2a_relu , num_filter=128, pad=(0, 1, 1), kernel=(1,3,3), stride=(1,1,1), no_bias=True)
bn3b3_branch2b = mx.symbol.BatchNorm(name='bn3b3_branch2b', data=res3b3_branch2b , fix_gamma=False, eps=0.000010)
res3b3_branch2b_relu = mx.symbol.Activation(name='res3b3_branch2b_relu', data=bn3b3_branch2b , act_type='relu')
res3b3_branch2b_t = mx.symbol.Convolution(name='res3b3_branch2b_t', data=res3b3_branch2b_relu , num_filter=128, pad=(1, 0, 0), kernel=(3,1,1), stride=(1,1,1), no_bias=True)
bn3b3_branch2b_t = mx.symbol.BatchNorm(name='bn3b3_branch2b_t', data=res3b3_branch2b_t , fix_gamma=False, eps=0.000010)
res3b3_branch2b_t_relu = mx.symbol.Activation(name='res3b3_branch2b_t_relu', data=bn3b3_branch2b_t , act_type='relu')
res3b3_branch2c = mx.symbol.Convolution(name='res3b3_branch2c', data=res3b3_branch2b_t_relu , num_filter=512, pad=(0, 0, 0), kernel=(1,1,1), stride=(1,1,1), no_bias=True)
bn3b3_branch2c = mx.symbol.BatchNorm(name='bn3b3_branch2c', data=res3b3_branch2c , fix_gamma=False, eps=0.000010)
res3b3 = mx.symbol.broadcast_add(name='res3b3', *[res3b2_relu,bn3b3_branch2c] )
res3b3_relu = mx.symbol.Activation(name='res3b3_relu', data=res3b3 , act_type='relu')
res3b4_branch2a = mx.symbol.Convolution(name='res3b4_branch2a', data=res3b3_relu , num_filter=128, pad=(0, 0, 0), kernel=(1,1,1), stride=(1,1,1), no_bias=True)
bn3b4_branch2a = mx.symbol.BatchNorm(name='bn3b4_branch2a', data=res3b4_branch2a , fix_gamma=False, eps=0.000010)
res3b4_branch2a_relu = mx.symbol.Activation(name='res3b4_branch2a_relu', data=bn3b4_branch2a , act_type='relu')
res3b4_branch2b = mx.symbol.Convolution(name='res3b4_branch2b', data=res3b4_branch2a_relu , num_filter=128, pad=(0, 1, 1), kernel=(1,3,3), stride=(1,1,1), no_bias=True)
bn3b4_branch2b = mx.symbol.BatchNorm(name='bn3b4_branch2b', data=res3b4_branch2b , fix_gamma=False, eps=0.000010)
res3b4_branch2b_relu = mx.symbol.Activation(name='res3b4_branch2b_relu', data=bn3b4_branch2b , act_type='relu')
res3b4_branch2b_t = mx.symbol.Convolution(name='res3b4_branch2b_t', data=res3b4_branch2a_relu , num_filter=128, pad=(1, 0, 0), kernel=(3,1,1), stride=(1,1,1), no_bias=True)
bn3b4_branch2b_t = mx.symbol.BatchNorm(name='bn3b4_branch2b_t', data=res3b4_branch2b_t , fix_gamma=False, eps=0.000010)
res3b4_branch2b_st = res3b4_branch2b_relu * 1.0 + bn3b4_branch2b_t * 1.0
res3b4_branch2b_st_relu = mx.symbol.Activation(name='res3b4_branch2b_st_relu', data=res3b4_branch2b_st , act_type='relu')
res3b4_branch2c = mx.symbol.Convolution(name='res3b4_branch2c', data=res3b4_branch2b_st_relu , num_filter=512, pad=(0, 0, 0), kernel=(1,1,1), stride=(1,1,1), no_bias=True)
bn3b4_branch2c = mx.symbol.BatchNorm(name='bn3b4_branch2c', data=res3b4_branch2c , fix_gamma=False, eps=0.000010)
res3b4 = mx.symbol.broadcast_add(name='res3b4', *[res3b3_relu,bn3b4_branch2c] )
res3b4_relu = mx.symbol.Activation(name='res3b4_relu', data=res3b4 , act_type='relu')
res3b5_branch2a = mx.symbol.Convolution(name='res3b5_branch2a', data=res3b4_relu , num_filter=128, pad=(0, 0, 0), kernel=(1,1,1), stride=(1,1,1), no_bias=True)
bn3b5_branch2a = mx.symbol.BatchNorm(name='bn3b5_branch2a', data=res3b5_branch2a , fix_gamma=False, eps=0.000010)
res3b5_branch2a_relu = mx.symbol.Activation(name='res3b5_branch2a_relu', data=bn3b5_branch2a , act_type='relu')
res3b5_branch2b = mx.symbol.Convolution(name='res3b5_branch2b', data=res3b5_branch2a_relu , num_filter=128, pad=(0, 1, 1), kernel=(1,3,3), stride=(1,1,1), no_bias=True)
bn3b5_branch2b = mx.symbol.BatchNorm(name='bn3b5_branch2b', data=res3b5_branch2b , fix_gamma=False, eps=0.000010)
res3b5_branch2b_relu = mx.symbol.Activation(name='res3b5_branch2b_relu', data=bn3b5_branch2b , act_type='relu')
res3b5_branch2b_t = mx.symbol.Convolution(name='res3b5_branch2b_t', data=res3b5_branch2b_relu , num_filter=128, pad=(1, 0, 0), kernel=(3,1,1), stride=(1,1,1), no_bias=True)
bn3b5_branch2b_t = mx.symbol.BatchNorm(name='bn3b5_branch2b_t', data=res3b5_branch2b_t , fix_gamma=False, eps=0.000010)
res3b5_branch2b_st = res3b5_branch2b_relu * 0.5 + bn3b5_branch2b_t * 0.5
res3b5_branch2b_st_relu = mx.symbol.Activation(name='res3b5_branch2b_st_relu', data=res3b5_branch2b_st , act_type='relu')
res3b5_branch2c = mx.symbol.Convolution(name='res3b5_branch2c', data=res3b5_branch2b_st_relu , num_filter=512, pad=(0, 0, 0), kernel=(1,1,1), stride=(1,1,1), no_bias=True)
bn3b5_branch2c = mx.symbol.BatchNorm(name='bn3b5_branch2c', data=res3b5_branch2c , fix_gamma=False, eps=0.000010)
res3b5 = mx.symbol.broadcast_add(name='res3b5', *[res3b4_relu,bn3b5_branch2c] )
res3b5_relu = mx.symbol.Activation(name='res3b5_relu', data=res3b5 , act_type='relu')
res3b6_branch2a = mx.symbol.Convolution(name='res3b6_branch2a', data=res3b5_relu , num_filter=128, pad=(0, 0, 0), kernel=(1,1,1), stride=(1,1,1), no_bias=True)
bn3b6_branch2a = mx.symbol.BatchNorm(name='bn3b6_branch2a', data=res3b6_branch2a , fix_gamma=False, eps=0.000010)
res3b6_branch2a_relu = mx.symbol.Activation(name='res3b6_branch2a_relu', data=bn3b6_branch2a , act_type='relu')
res3b6_branch2b = mx.symbol.Convolution(name='res3b6_branch2b', data=res3b6_branch2a_relu , num_filter=128, pad=(0, 1, 1), kernel=(1,3,3), stride=(1,1,1), no_bias=True)
bn3b6_branch2b = mx.symbol.BatchNorm(name='bn3b6_branch2b', data=res3b6_branch2b , fix_gamma=False, eps=0.000010)
res3b6_branch2b_relu = mx.symbol.Activation(name='res3b6_branch2b_relu', data=bn3b6_branch2b , act_type='relu')
res3b6_branch2b_t = mx.symbol.Convolution(name='res3b6_branch2b_t', data=res3b6_branch2b_relu , num_filter=128, pad=(1, 0, 0), kernel=(3,1,1), stride=(1,1,1), no_bias=True)
bn3b6_branch2b_t = mx.symbol.BatchNorm(name='bn3b6_branch2b_t', data=res3b6_branch2b_t , fix_gamma=False, eps=0.000010)
res3b6_branch2b_t_relu = mx.symbol.Activation(name='res3b6_branch2b_t_relu', data=bn3b6_branch2b_t , act_type='relu')
res3b6_branch2c = mx.symbol.Convolution(name='res3b6_branch2c', data=res3b6_branch2b_t_relu , num_filter=512, pad=(0, 0, 0), kernel=(1,1,1), stride=(1,1,1), no_bias=True)
bn3b6_branch2c = mx.symbol.BatchNorm(name='bn3b6_branch2c', data=res3b6_branch2c , fix_gamma=False, eps=0.000010)
res3b6 = mx.symbol.broadcast_add(name='res3b6', *[res3b5_relu,bn3b6_branch2c] )
res3b6_relu = mx.symbol.Activation(name='res3b6_relu', data=res3b6 , act_type='relu')
res3b7_branch2a = mx.symbol.Convolution(name='res3b7_branch2a', data=res3b6_relu , num_filter=128, pad=(0, 0, 0), kernel=(1,1,1), stride=(1,1,1), no_bias=True)
bn3b7_branch2a = mx.symbol.BatchNorm(name='bn3b7_branch2a', data=res3b7_branch2a , fix_gamma=False, eps=0.000010)
res3b7_branch2a_relu = mx.symbol.Activation(name='res3b7_branch2a_relu', data=bn3b7_branch2a , act_type='relu')
res3b7_branch2b = mx.symbol.Convolution(name='res3b7_branch2b', data=res3b7_branch2a_relu , num_filter=128, pad=(0, 1, 1), kernel=(1,3,3), stride=(1,1,1), no_bias=True)
bn3b7_branch2b = mx.symbol.BatchNorm(name='bn3b7_branch2b', data=res3b7_branch2b , fix_gamma=False, eps=0.000010)
res3b7_branch2b_relu = mx.symbol.Activation(name='res3b7_branch2b_relu', data=bn3b7_branch2b , act_type='relu')
res3b7_branch2b_t = mx.symbol.Convolution(name='res3b7_branch2b_t', data=res3b7_branch2a_relu , num_filter=128, pad=(1, 0, 0), kernel=(3,1,1), stride=(1,1,1), no_bias=True)
bn3b7_branch2b_t = mx.symbol.BatchNorm(name='bn3b7_branch2b_t', data=res3b7_branch2b_t , fix_gamma=False, eps=0.000010)
res3b7_branch2b_st = res3b7_branch2b_relu * 1.0 + bn3b7_branch2b_t * 1.0
res3b7_branch2b_st_relu = mx.symbol.Activation(name='res3b7_branch2b_st_relu', data=res3b7_branch2b_st , act_type='relu')
res3b7_branch2c = mx.symbol.Convolution(name='res3b7_branch2c', data=res3b7_branch2b_st_relu , num_filter=512, pad=(0, 0, 0), kernel=(1,1,1), stride=(1,1,1), no_bias=True)
bn3b7_branch2c = mx.symbol.BatchNorm(name='bn3b7_branch2c', data=res3b7_branch2c , fix_gamma=False, eps=0.000010)
res3b7 = mx.symbol.broadcast_add(name='res3b7', *[res3b6_relu,bn3b7_branch2c] )
res3b7_relu = mx.symbol.Activation(name='res3b7_relu', data=res3b7 , act_type='relu')
_4a_pool = mx.symbol.Pooling(name='_4a_pool', data=res3b7_relu , pooling_convention='full', pad=(0,0,0), kernel=(2,1,1), stride=(2,1,1), pool_type='max')
res4a_branch1 = mx.symbol.Convolution(name='res4a_branch1', data=_4a_pool , num_filter=1024, pad=(0, 0, 0), kernel=(1,1,1), stride=(1,2,2), no_bias=True)
bn4a_branch1 = mx.symbol.BatchNorm(name='bn4a_branch1', data=res4a_branch1 , fix_gamma=False, eps=0.000010)
res4a_branch2a = mx.symbol.Convolution(name='res4a_branch2a', data=_4a_pool , num_filter=256, pad=(0, 0, 0), kernel=(1,1,1), stride=(1,2,2), no_bias=True)
bn4a_branch2a = mx.symbol.BatchNorm(name='bn4a_branch2a', data=res4a_branch2a , fix_gamma=False, eps=0.000010)
res4a_branch2a_relu = mx.symbol.Activation(name='res4a_branch2a_relu', data=bn4a_branch2a , act_type='relu')
res4a_branch2b = mx.symbol.Convolution(name='res4a_branch2b', data=res4a_branch2a_relu , num_filter=256, pad=(0, 1, 1), kernel=(1,3,3), stride=(1,1,1), no_bias=True)
bn4a_branch2b = mx.symbol.BatchNorm(name='bn4a_branch2b', data=res4a_branch2b , fix_gamma=False, eps=0.000010)
res4a_branch2b_relu = mx.symbol.Activation(name='res4a_branch2b_relu', data=bn4a_branch2b , act_type='relu')
res4a_branch2b_t = mx.symbol.Convolution(name='res4a_branch2b_t', data=res4a_branch2b_relu , num_filter=256, pad=(1, 0, 0), kernel=(3,1,1), stride=(1,1,1), no_bias=True)
bn4a_branch2b_t = mx.symbol.BatchNorm(name='bn4a_branch2b_t', data=res4a_branch2b_t , fix_gamma=False, eps=0.000010)
res4a_branch2b_st = res4a_branch2b_relu * 0.5 + bn4a_branch2b_t * 0.5
res4a_branch2b_st_relu = mx.symbol.Activation(name='res4a_branch2b_st_relu', data=res4a_branch2b_st , act_type='relu')
res4a_branch2c = mx.symbol.Convolution(name='res4a_branch2c', data=res4a_branch2b_st_relu , num_filter=1024, pad=(0, 0, 0), kernel=(1,1,1), stride=(1,1,1), no_bias=True)
bn4a_branch2c = mx.symbol.BatchNorm(name='bn4a_branch2c', data=res4a_branch2c , fix_gamma=False, eps=0.000010)
res4a = mx.symbol.broadcast_add(name='res4a', *[bn4a_branch1,bn4a_branch2c] )
res4a_relu = mx.symbol.Activation(name='res4a_relu', data=res4a , act_type='relu')
res4b1_branch2a = mx.symbol.Convolution(name='res4b1_branch2a', data=res4a_relu , num_filter=256, pad=(0, 0, 0), kernel=(1,1,1), stride=(1,1,1), no_bias=True)
bn4b1_branch2a = mx.symbol.BatchNorm(name='bn4b1_branch2a', data=res4b1_branch2a , fix_gamma=False, eps=0.000010)
res4b1_branch2a_relu = mx.symbol.Activation(name='res4b1_branch2a_relu', data=bn4b1_branch2a , act_type='relu')
res4b1_branch2b = mx.symbol.Convolution(name='res4b1_branch2b', data=res4b1_branch2a_relu , num_filter=256, pad=(0, 1, 1), kernel=(1,3,3), stride=(1,1,1), no_bias=True)
bn4b1_branch2b = mx.symbol.BatchNorm(name='bn4b1_branch2b', data=res4b1_branch2b , fix_gamma=False, eps=0.000010)
res4b1_branch2b_relu = mx.symbol.Activation(name='res4b1_branch2b_relu', data=bn4b1_branch2b , act_type='relu')
res4b1_branch2b_t = mx.symbol.Convolution(name='res4b1_branch2b_t', data=res4b1_branch2b_relu , num_filter=256, pad=(1, 0, 0), kernel=(3,1,1), stride=(1,1,1), no_bias=True)
bn4b1_branch2b_t = mx.symbol.BatchNorm(name='bn4b1_branch2b_t', data=res4b1_branch2b_t , fix_gamma=False, eps=0.000010)
res4b1_branch2b_t_relu = mx.symbol.Activation(name='res4b1_branch2b_t_relu', data=bn4b1_branch2b_t , act_type='relu')
res4b1_branch2c = mx.symbol.Convolution(name='res4b1_branch2c', data=res4b1_branch2b_t_relu , num_filter=1024, pad=(0, 0, 0), kernel=(1,1,1), stride=(1,1,1), no_bias=True)
bn4b1_branch2c = mx.symbol.BatchNorm(name='bn4b1_branch2c', data=res4b1_branch2c , fix_gamma=False, eps=0.000010)
res4b1 = mx.symbol.broadcast_add(name='res4b1', *[res4a_relu,bn4b1_branch2c] )
res4b1_relu = mx.symbol.Activation(name='res4b1_relu', data=res4b1 , act_type='relu')
res4b2_branch2a = mx.symbol.Convolution(name='res4b2_branch2a', data=res4b1_relu , num_filter=256, pad=(0, 0, 0), kernel=(1,1,1), stride=(1,1,1), no_bias=True)
bn4b2_branch2a = mx.symbol.BatchNorm(name='bn4b2_branch2a', data=res4b2_branch2a , fix_gamma=False, eps=0.000010)
res4b2_branch2a_relu = mx.symbol.Activation(name='res4b2_branch2a_relu', data=bn4b2_branch2a , act_type='relu')
res4b2_branch2b = mx.symbol.Convolution(name='res4b2_branch2b', data=res4b2_branch2a_relu , num_filter=256, pad=(0, 1, 1), kernel=(1,3,3), stride=(1,1,1), no_bias=True)
bn4b2_branch2b = mx.symbol.BatchNorm(name='bn4b2_branch2b', data=res4b2_branch2b , fix_gamma=False, eps=0.000010)
res4b2_branch2b_relu = mx.symbol.Activation(name='res4b2_branch2b_relu', data=bn4b2_branch2b , act_type='relu')
res4b2_branch2b_t = mx.symbol.Convolution(name='res4b2_branch2b_t', data=res4b2_branch2a_relu , num_filter=256, pad=(1, 0, 0), kernel=(3,1,1), stride=(1,1,1), no_bias=True)
bn4b2_branch2b_t = mx.symbol.BatchNorm(name='bn4b2_branch2b_t', data=res4b2_branch2b_t , fix_gamma=False, eps=0.000010)
res4b2_branch2b_st = res4b2_branch2b_relu * 1.0 + bn4b2_branch2b_t * 1.0
res4b2_branch2b_st_relu = mx.symbol.Activation(name='res4b2_branch2b_st_relu', data=res4b2_branch2b_st , act_type='relu')
res4b2_branch2c = mx.symbol.Convolution(name='res4b2_branch2c', data=res4b2_branch2b_st_relu , num_filter=1024, pad=(0, 0, 0), kernel=(1,1,1), stride=(1,1,1), no_bias=True)
bn4b2_branch2c = mx.symbol.BatchNorm(name='bn4b2_branch2c', data=res4b2_branch2c , fix_gamma=False, eps=0.000010)
res4b2 = mx.symbol.broadcast_add(name='res4b2', *[res4b1_relu,bn4b2_branch2c] )
res4b2_relu = mx.symbol.Activation(name='res4b2_relu', data=res4b2 , act_type='relu')
res4b3_branch2a = mx.symbol.Convolution(name='res4b3_branch2a', data=res4b2_relu , num_filter=256, pad=(0, 0, 0), kernel=(1,1,1), stride=(1,1,1), no_bias=True)
bn4b3_branch2a = mx.symbol.BatchNorm(name='bn4b3_branch2a', data=res4b3_branch2a , fix_gamma=False, eps=0.000010)
res4b3_branch2a_relu = mx.symbol.Activation(name='res4b3_branch2a_relu', data=bn4b3_branch2a , act_type='relu')
res4b3_branch2b = mx.symbol.Convolution(name='res4b3_branch2b', data=res4b3_branch2a_relu , num_filter=256, pad=(0, 1, 1), kernel=(1,3,3), stride=(1,1,1), no_bias=True)
bn4b3_branch2b = mx.symbol.BatchNorm(name='bn4b3_branch2b', data=res4b3_branch2b , fix_gamma=False, eps=0.000010)
res4b3_branch2b_relu = mx.symbol.Activation(name='res4b3_branch2b_relu', data=bn4b3_branch2b , act_type='relu')
res4b3_branch2b_t = mx.symbol.Convolution(name='res4b3_branch2b_t', data=res4b3_branch2b_relu , num_filter=256, pad=(1, 0, 0), kernel=(3,1,1), stride=(1,1,1), no_bias=True)
bn4b3_branch2b_t = mx.symbol.BatchNorm(name='bn4b3_branch2b_t', data=res4b3_branch2b_t , fix_gamma=False, eps=0.000010)
res4b3_branch2b_st = res4b3_branch2b_relu * 0.5 + bn4b3_branch2b_t * 0.5
res4b3_branch2b_st_relu = mx.symbol.Activation(name='res4b3_branch2b_st_relu', data=res4b3_branch2b_st , act_type='relu')
res4b3_branch2c = mx.symbol.Convolution(name='res4b3_branch2c', data=res4b3_branch2b_st_relu , num_filter=1024, pad=(0, 0, 0), kernel=(1,1,1), stride=(1,1,1), no_bias=True)
bn4b3_branch2c = mx.symbol.BatchNorm(name='bn4b3_branch2c', data=res4b3_branch2c , fix_gamma=False, eps=0.000010)
res4b3 = mx.symbol.broadcast_add(name='res4b3', *[res4b2_relu,bn4b3_branch2c] )
res4b3_relu = mx.symbol.Activation(name='res4b3_relu', data=res4b3 , act_type='relu')
res4b4_branch2a = mx.symbol.Convolution(name='res4b4_branch2a', data=res4b3_relu , num_filter=256, pad=(0, 0, 0), kernel=(1,1,1), stride=(1,1,1), no_bias=True)
bn4b4_branch2a = mx.symbol.BatchNorm(name='bn4b4_branch2a', data=res4b4_branch2a , fix_gamma=False, eps=0.000010)
res4b4_branch2a_relu = mx.symbol.Activation(name='res4b4_branch2a_relu', data=bn4b4_branch2a , act_type='relu')
res4b4_branch2b = mx.symbol.Convolution(name='res4b4_branch2b', data=res4b4_branch2a_relu , num_filter=256, pad=(0, 1, 1), kernel=(1,3,3), stride=(1,1,1), no_bias=True)
bn4b4_branch2b = mx.symbol.BatchNorm(name='bn4b4_branch2b', data=res4b4_branch2b , fix_gamma=False, eps=0.000010)
res4b4_branch2b_relu = mx.symbol.Activation(name='res4b4_branch2b_relu', data=bn4b4_branch2b , act_type='relu')
res4b4_branch2b_t = mx.symbol.Convolution(name='res4b4_branch2b_t', data=res4b4_branch2b_relu , num_filter=256, pad=(1, 0, 0), kernel=(3,1,1), stride=(1,1,1), no_bias=True)
bn4b4_branch2b_t = mx.symbol.BatchNorm(name='bn4b4_branch2b_t', data=res4b4_branch2b_t , fix_gamma=False, eps=0.000010)
res4b4_branch2b_t_relu = mx.symbol.Activation(name='res4b4_branch2b_t_relu', data=bn4b4_branch2b_t , act_type='relu')
res4b4_branch2c = mx.symbol.Convolution(name='res4b4_branch2c', data=res4b4_branch2b_t_relu , num_filter=1024, pad=(0, 0, 0), kernel=(1,1,1), stride=(1,1,1), no_bias=True)
bn4b4_branch2c = mx.symbol.BatchNorm(name='bn4b4_branch2c', data=res4b4_branch2c , fix_gamma=False, eps=0.000010)
res4b4 = mx.symbol.broadcast_add(name='res4b4', *[res4b3_relu,bn4b4_branch2c] )
res4b4_relu = mx.symbol.Activation(name='res4b4_relu', data=res4b4 , act_type='relu')
res4b5_branch2a = mx.symbol.Convolution(name='res4b5_branch2a', data=res4b4_relu , num_filter=256, pad=(0, 0, 0), kernel=(1,1,1), stride=(1,1,1), no_bias=True)
bn4b5_branch2a = mx.symbol.BatchNorm(name='bn4b5_branch2a', data=res4b5_branch2a , fix_gamma=False, eps=0.000010)
res4b5_branch2a_relu = mx.symbol.Activation(name='res4b5_branch2a_relu', data=bn4b5_branch2a , act_type='relu')
res4b5_branch2b = mx.symbol.Convolution(name='res4b5_branch2b', data=res4b5_branch2a_relu , num_filter=256, pad=(0, 1, 1), kernel=(1,3,3), stride=(1,1,1), no_bias=True)
bn4b5_branch2b = mx.symbol.BatchNorm(name='bn4b5_branch2b', data=res4b5_branch2b , fix_gamma=False, eps=0.000010)
res4b5_branch2b_relu = mx.symbol.Activation(name='res4b5_branch2b_relu', data=bn4b5_branch2b , act_type='relu')
res4b5_branch2b_t = mx.symbol.Convolution(name='res4b5_branch2b_t', data=res4b5_branch2a_relu , num_filter=256, pad=(1, 0, 0), kernel=(3,1,1), stride=(1,1,1), no_bias=True)
bn4b5_branch2b_t = mx.symbol.BatchNorm(name='bn4b5_branch2b_t', data=res4b5_branch2b_t , fix_gamma=False, eps=0.000010)
res4b5_branch2b_st = res4b5_branch2b_relu * 1.0 + bn4b5_branch2b_t * 1.0
res4b5_branch2b_st_relu = mx.symbol.Activation(name='res4b5_branch2b_st_relu', data=res4b5_branch2b_st , act_type='relu')
res4b5_branch2c = mx.symbol.Convolution(name='res4b5_branch2c', data=res4b5_branch2b_st_relu , num_filter=1024, pad=(0, 0, 0), kernel=(1,1,1), stride=(1,1,1), no_bias=True)
bn4b5_branch2c = mx.symbol.BatchNorm(name='bn4b5_branch2c', data=res4b5_branch2c , fix_gamma=False, eps=0.000010)
res4b5 = mx.symbol.broadcast_add(name='res4b5', *[res4b4_relu,bn4b5_branch2c] )
res4b5_relu = mx.symbol.Activation(name='res4b5_relu', data=res4b5 , act_type='relu')
res4b6_branch2a = mx.symbol.Convolution(name='res4b6_branch2a', data=res4b5_relu , num_filter=256, pad=(0, 0, 0), kernel=(1,1,1), stride=(1,1,1), no_bias=True)
bn4b6_branch2a = mx.symbol.BatchNorm(name='bn4b6_branch2a', data=res4b6_branch2a , fix_gamma=False, eps=0.000010)
res4b6_branch2a_relu = mx.symbol.Activation(name='res4b6_branch2a_relu', data=bn4b6_branch2a , act_type='relu')
res4b6_branch2b = mx.symbol.Convolution(name='res4b6_branch2b', data=res4b6_branch2a_relu , num_filter=256, pad=(0, 1, 1), kernel=(1,3,3), stride=(1,1,1), no_bias=True)
bn4b6_branch2b = mx.symbol.BatchNorm(name='bn4b6_branch2b', data=res4b6_branch2b , fix_gamma=False, eps=0.000010)
res4b6_branch2b_relu = mx.symbol.Activation(name='res4b6_branch2b_relu', data=bn4b6_branch2b , act_type='relu')
res4b6_branch2b_t = mx.symbol.Convolution(name='res4b6_branch2b_t', data=res4b6_branch2b_relu , num_filter=256, pad=(1, 0, 0), kernel=(3,1,1), stride=(1,1,1), no_bias=True)
bn4b6_branch2b_t = mx.symbol.BatchNorm(name='bn4b6_branch2b_t', data=res4b6_branch2b_t , fix_gamma=False, eps=0.000010)
res4b6_branch2b_st = res4b6_branch2b_relu * 0.5 + bn4b6_branch2b_t * 0.5
res4b6_branch2b_st_relu = mx.symbol.Activation(name='res4b6_branch2b_st_relu', data=res4b6_branch2b_st , act_type='relu')
res4b6_branch2c = mx.symbol.Convolution(name='res4b6_branch2c', data=res4b6_branch2b_st_relu , num_filter=1024, pad=(0, 0, 0), kernel=(1,1,1), stride=(1,1,1), no_bias=True)
bn4b6_branch2c = mx.symbol.BatchNorm(name='bn4b6_branch2c', data=res4b6_branch2c , fix_gamma=False, eps=0.000010)
res4b6 = mx.symbol.broadcast_add(name='res4b6', *[res4b5_relu,bn4b6_branch2c] )
res4b6_relu = mx.symbol.Activation(name='res4b6_relu', data=res4b6 , act_type='relu')
res4b7_branch2a = mx.symbol.Convolution(name='res4b7_branch2a', data=res4b6_relu , num_filter=256, pad=(0, 0, 0), kernel=(1,1,1), stride=(1,1,1), no_bias=True)
bn4b7_branch2a = mx.symbol.BatchNorm(name='bn4b7_branch2a', data=res4b7_branch2a , fix_gamma=False, eps=0.000010)
res4b7_branch2a_relu = mx.symbol.Activation(name='res4b7_branch2a_relu', data=bn4b7_branch2a , act_type='relu')
res4b7_branch2b = mx.symbol.Convolution(name='res4b7_branch2b', data=res4b7_branch2a_relu , num_filter=256, pad=(0, 1, 1), kernel=(1,3,3), stride=(1,1,1), no_bias=True)
bn4b7_branch2b = mx.symbol.BatchNorm(name='bn4b7_branch2b', data=res4b7_branch2b , fix_gamma=False, eps=0.000010)
res4b7_branch2b_relu = mx.symbol.Activation(name='res4b7_branch2b_relu', data=bn4b7_branch2b , act_type='relu')
res4b7_branch2b_t = mx.symbol.Convolution(name='res4b7_branch2b_t', data=res4b7_branch2b_relu , num_filter=256, pad=(1, 0, 0), kernel=(3,1,1), stride=(1,1,1), no_bias=True)
bn4b7_branch2b_t = mx.symbol.BatchNorm(name='bn4b7_branch2b_t', data=res4b7_branch2b_t , fix_gamma=False, eps=0.000010)
res4b7_branch2b_t_relu = mx.symbol.Activation(name='res4b7_branch2b_t_relu', data=bn4b7_branch2b_t , act_type='relu')
res4b7_branch2c = mx.symbol.Convolution(name='res4b7_branch2c', data=res4b7_branch2b_t_relu , num_filter=1024, pad=(0, 0, 0), kernel=(1,1,1), stride=(1,1,1), no_bias=True)
bn4b7_branch2c = mx.symbol.BatchNorm(name='bn4b7_branch2c', data=res4b7_branch2c , fix_gamma=False, eps=0.000010)
res4b7 = mx.symbol.broadcast_add(name='res4b7', *[res4b6_relu,bn4b7_branch2c] )
res4b7_relu = mx.symbol.Activation(name='res4b7_relu', data=res4b7 , act_type='relu')
res4b8_branch2a = mx.symbol.Convolution(name='res4b8_branch2a', data=res4b7_relu , num_filter=256, pad=(0, 0, 0), kernel=(1,1,1), stride=(1,1,1), no_bias=True)
bn4b8_branch2a = mx.symbol.BatchNorm(name='bn4b8_branch2a', data=res4b8_branch2a , fix_gamma=False, eps=0.000010)
res4b8_branch2a_relu = mx.symbol.Activation(name='res4b8_branch2a_relu', data=bn4b8_branch2a , act_type='relu')
res4b8_branch2b = mx.symbol.Convolution(name='res4b8_branch2b', data=res4b8_branch2a_relu , num_filter=256, pad=(0, 1, 1), kernel=(1,3,3), stride=(1,1,1), no_bias=True)
bn4b8_branch2b = mx.symbol.BatchNorm(name='bn4b8_branch2b', data=res4b8_branch2b , fix_gamma=False, eps=0.000010)
res4b8_branch2b_relu = mx.symbol.Activation(name='res4b8_branch2b_relu', data=bn4b8_branch2b , act_type='relu')
res4b8_branch2b_t = mx.symbol.Convolution(name='res4b8_branch2b_t', data=res4b8_branch2a_relu , num_filter=256, pad=(1, 0, 0), kernel=(3,1,1), stride=(1,1,1), no_bias=True)
bn4b8_branch2b_t = mx.symbol.BatchNorm(name='bn4b8_branch2b_t', data=res4b8_branch2b_t , fix_gamma=False, eps=0.000010)
res4b8_branch2b_st = res4b8_branch2b_relu * 1.0 + bn4b8_branch2b_t * 1.0
res4b8_branch2b_st_relu = mx.symbol.Activation(name='res4b8_branch2b_st_relu', data=res4b8_branch2b_st , act_type='relu')
res4b8_branch2c = mx.symbol.Convolution(name='res4b8_branch2c', data=res4b8_branch2b_st_relu , num_filter=1024, pad=(0, 0, 0), kernel=(1,1,1), stride=(1,1,1), no_bias=True)
bn4b8_branch2c = mx.symbol.BatchNorm(name='bn4b8_branch2c', data=res4b8_branch2c , fix_gamma=False, eps=0.000010)
res4b8 = mx.symbol.broadcast_add(name='res4b8', *[res4b7_relu,bn4b8_branch2c] )
res4b8_relu = mx.symbol.Activation(name='res4b8_relu', data=res4b8 , act_type='relu')
res4b9_branch2a = mx.symbol.Convolution(name='res4b9_branch2a', data=res4b8_relu , num_filter=256, pad=(0, 0, 0), kernel=(1,1,1), stride=(1,1,1), no_bias=True)
bn4b9_branch2a = mx.symbol.BatchNorm(name='bn4b9_branch2a', data=res4b9_branch2a , fix_gamma=False, eps=0.000010)
res4b9_branch2a_relu = mx.symbol.Activation(name='res4b9_branch2a_relu', data=bn4b9_branch2a , act_type='relu')
res4b9_branch2b = mx.symbol.Convolution(name='res4b9_branch2b', data=res4b9_branch2a_relu , num_filter=256, pad=(0, 1, 1), kernel=(1,3,3), stride=(1,1,1), no_bias=True)
bn4b9_branch2b = mx.symbol.BatchNorm(name='bn4b9_branch2b', data=res4b9_branch2b , fix_gamma=False, eps=0.000010)
res4b9_branch2b_relu = mx.symbol.Activation(name='res4b9_branch2b_relu', data=bn4b9_branch2b , act_type='relu')
res4b9_branch2b_t = mx.symbol.Convolution(name='res4b9_branch2b_t', data=res4b9_branch2b_relu , num_filter=256, pad=(1, 0, 0), kernel=(3,1,1), stride=(1,1,1), no_bias=True)
bn4b9_branch2b_t = mx.symbol.BatchNorm(name='bn4b9_branch2b_t', data=res4b9_branch2b_t , fix_gamma=False, eps=0.000010)
res4b9_branch2b_st = res4b9_branch2b_relu * 0.5 + bn4b9_branch2b_t * 0.5
res4b9_branch2b_st_relu = mx.symbol.Activation(name='res4b9_branch2b_st_relu', data=res4b9_branch2b_st , act_type='relu')
res4b9_branch2c = mx.symbol.Convolution(name='res4b9_branch2c', data=res4b9_branch2b_st_relu , num_filter=1024, pad=(0, 0, 0), kernel=(1,1,1), stride=(1,1,1), no_bias=True)
bn4b9_branch2c = mx.symbol.BatchNorm(name='bn4b9_branch2c', data=res4b9_branch2c , fix_gamma=False, eps=0.000010)
res4b9 = mx.symbol.broadcast_add(name='res4b9', *[res4b8_relu,bn4b9_branch2c] )
res4b9_relu = mx.symbol.Activation(name='res4b9_relu', data=res4b9 , act_type='relu')
res4b10_branch2a = mx.symbol.Convolution(name='res4b10_branch2a', data=res4b9_relu , num_filter=256, pad=(0, 0, 0), kernel=(1,1,1), stride=(1,1,1), no_bias=True)
bn4b10_branch2a = mx.symbol.BatchNorm(name='bn4b10_branch2a', data=res4b10_branch2a , fix_gamma=False, eps=0.000010)
res4b10_branch2a_relu = mx.symbol.Activation(name='res4b10_branch2a_relu', data=bn4b10_branch2a , act_type='relu')
res4b10_branch2b = mx.symbol.Convolution(name='res4b10_branch2b', data=res4b10_branch2a_relu , num_filter=256, pad=(0, 1, 1), kernel=(1,3,3), stride=(1,1,1), no_bias=True)
bn4b10_branch2b = mx.symbol.BatchNorm(name='bn4b10_branch2b', data=res4b10_branch2b , fix_gamma=False, eps=0.000010)
res4b10_branch2b_relu = mx.symbol.Activation(name='res4b10_branch2b_relu', data=bn4b10_branch2b , act_type='relu')
res4b10_branch2b_t = mx.symbol.Convolution(name='res4b10_branch2b_t', data=res4b10_branch2b_relu , num_filter=256, pad=(1, 0, 0), kernel=(3,1,1), stride=(1,1,1), no_bias=True)
bn4b10_branch2b_t = mx.symbol.BatchNorm(name='bn4b10_branch2b_t', data=res4b10_branch2b_t , fix_gamma=False, eps=0.000010)
res4b10_branch2b_t_relu = mx.symbol.Activation(name='res4b10_branch2b_t_relu', data=bn4b10_branch2b_t , act_type='relu')
res4b10_branch2c = mx.symbol.Convolution(name='res4b10_branch2c', data=res4b10_branch2b_t_relu , num_filter=1024, pad=(0, 0, 0), kernel=(1,1,1), stride=(1,1,1), no_bias=True)
bn4b10_branch2c = mx.symbol.BatchNorm(name='bn4b10_branch2c', data=res4b10_branch2c , fix_gamma=False, eps=0.000010)
res4b10 = mx.symbol.broadcast_add(name='res4b10', *[res4b9_relu,bn4b10_branch2c] )
res4b10_relu = mx.symbol.Activation(name='res4b10_relu', data=res4b10 , act_type='relu')
res4b11_branch2a = mx.symbol.Convolution(name='res4b11_branch2a', data=res4b10_relu , num_filter=256, pad=(0, 0, 0), kernel=(1,1,1), stride=(1,1,1), no_bias=True)
bn4b11_branch2a = mx.symbol.BatchNorm(name='bn4b11_branch2a', data=res4b11_branch2a , fix_gamma=False, eps=0.000010)
res4b11_branch2a_relu = mx.symbol.Activation(name='res4b11_branch2a_relu', data=bn4b11_branch2a , act_type='relu')
res4b11_branch2b = mx.symbol.Convolution(name='res4b11_branch2b', data=res4b11_branch2a_relu , num_filter=256, pad=(0, 1, 1), kernel=(1,3,3), stride=(1,1,1), no_bias=True)
bn4b11_branch2b = mx.symbol.BatchNorm(name='bn4b11_branch2b', data=res4b11_branch2b , fix_gamma=False, eps=0.000010)
res4b11_branch2b_relu = mx.symbol.Activation(name='res4b11_branch2b_relu', data=bn4b11_branch2b , act_type='relu')
res4b11_branch2b_t = mx.symbol.Convolution(name='res4b11_branch2b_t', data=res4b11_branch2a_relu , num_filter=256, pad=(1, 0, 0), kernel=(3,1,1), stride=(1,1,1), no_bias=True)
bn4b11_branch2b_t = mx.symbol.BatchNorm(name='bn4b11_branch2b_t', data=res4b11_branch2b_t , fix_gamma=False, eps=0.000010)
res4b11_branch2b_st = res4b11_branch2b_relu * 1.0 + bn4b11_branch2b_t * 1.0
res4b11_branch2b_st_relu = mx.symbol.Activation(name='res4b11_branch2b_st_relu', data=res4b11_branch2b_st , act_type='relu')
res4b11_branch2c = mx.symbol.Convolution(name='res4b11_branch2c', data=res4b11_branch2b_st_relu , num_filter=1024, pad=(0, 0, 0), kernel=(1,1,1), stride=(1,1,1), no_bias=True)
bn4b11_branch2c = mx.symbol.BatchNorm(name='bn4b11_branch2c', data=res4b11_branch2c , fix_gamma=False, eps=0.000010)
res4b11 = mx.symbol.broadcast_add(name='res4b11', *[res4b10_relu,bn4b11_branch2c] )
res4b11_relu = mx.symbol.Activation(name='res4b11_relu', data=res4b11 , act_type='relu')
res4b12_branch2a = mx.symbol.Convolution(name='res4b12_branch2a', data=res4b11_relu , num_filter=256, pad=(0, 0, 0), kernel=(1,1,1), stride=(1,1,1), no_bias=True)
bn4b12_branch2a = mx.symbol.BatchNorm(name='bn4b12_branch2a', data=res4b12_branch2a , fix_gamma=False, eps=0.000010)
res4b12_branch2a_relu = mx.symbol.Activation(name='res4b12_branch2a_relu', data=bn4b12_branch2a , act_type='relu')
res4b12_branch2b = mx.symbol.Convolution(name='res4b12_branch2b', data=res4b12_branch2a_relu , num_filter=256, pad=(0, 1, 1), kernel=(1,3,3), stride=(1,1,1), no_bias=True)
bn4b12_branch2b = mx.symbol.BatchNorm(name='bn4b12_branch2b', data=res4b12_branch2b , fix_gamma=False, eps=0.000010)
res4b12_branch2b_relu = mx.symbol.Activation(name='res4b12_branch2b_relu', data=bn4b12_branch2b , act_type='relu')
res4b12_branch2b_t = mx.symbol.Convolution(name='res4b12_branch2b_t', data=res4b12_branch2b_relu , num_filter=256, pad=(1, 0, 0), kernel=(3,1,1), stride=(1,1,1), no_bias=True)
bn4b12_branch2b_t = mx.symbol.BatchNorm(name='bn4b12_branch2b_t', data=res4b12_branch2b_t , fix_gamma=False, eps=0.000010)
res4b12_branch2b_st = res4b12_branch2b_relu * 0.5 + bn4b12_branch2b_t * 0.5
res4b12_branch2b_st_relu = mx.symbol.Activation(name='res4b12_branch2b_st_relu', data=res4b12_branch2b_st , act_type='relu')
res4b12_branch2c = mx.symbol.Convolution(name='res4b12_branch2c', data=res4b12_branch2b_st_relu , num_filter=1024, pad=(0, 0, 0), kernel=(1,1,1), stride=(1,1,1), no_bias=True)
bn4b12_branch2c = mx.symbol.BatchNorm(name='bn4b12_branch2c', data=res4b12_branch2c , fix_gamma=False, eps=0.000010)
res4b12 = mx.symbol.broadcast_add(name='res4b12', *[res4b11_relu,bn4b12_branch2c] )
res4b12_relu = mx.symbol.Activation(name='res4b12_relu', data=res4b12 , act_type='relu')
res4b13_branch2a = mx.symbol.Convolution(name='res4b13_branch2a', data=res4b12_relu , num_filter=256, pad=(0, 0, 0), kernel=(1,1,1), stride=(1,1,1), no_bias=True)
bn4b13_branch2a = mx.symbol.BatchNorm(name='bn4b13_branch2a', data=res4b13_branch2a , fix_gamma=False, eps=0.000010)
res4b13_branch2a_relu = mx.symbol.Activation(name='res4b13_branch2a_relu', data=bn4b13_branch2a , act_type='relu')
res4b13_branch2b = mx.symbol.Convolution(name='res4b13_branch2b', data=res4b13_branch2a_relu , num_filter=256, pad=(0, 1, 1), kernel=(1,3,3), stride=(1,1,1), no_bias=True)
bn4b13_branch2b = mx.symbol.BatchNorm(name='bn4b13_branch2b', data=res4b13_branch2b , fix_gamma=False, eps=0.000010)
res4b13_branch2b_relu = mx.symbol.Activation(name='res4b13_branch2b_relu', data=bn4b13_branch2b , act_type='relu')
res4b13_branch2b_t = mx.symbol.Convolution(name='res4b13_branch2b_t', data=res4b13_branch2b_relu , num_filter=256, pad=(1, 0, 0), kernel=(3,1,1), stride=(1,1,1), no_bias=True)
bn4b13_branch2b_t = mx.symbol.BatchNorm(name='bn4b13_branch2b_t', data=res4b13_branch2b_t , fix_gamma=False, eps=0.000010)
res4b13_branch2b_t_relu = mx.symbol.Activation(name='res4b13_branch2b_t_relu', data=bn4b13_branch2b_t , act_type='relu')
res4b13_branch2c = mx.symbol.Convolution(name='res4b13_branch2c', data=res4b13_branch2b_t_relu , num_filter=1024, pad=(0, 0, 0), kernel=(1,1,1), stride=(1,1,1), no_bias=True)
bn4b13_branch2c = mx.symbol.BatchNorm(name='bn4b13_branch2c', data=res4b13_branch2c , fix_gamma=False, eps=0.000010)
res4b13 = mx.symbol.broadcast_add(name='res4b13', *[res4b12_relu,bn4b13_branch2c] )
res4b13_relu = mx.symbol.Activation(name='res4b13_relu', data=res4b13 , act_type='relu')
res4b14_branch2a = mx.symbol.Convolution(name='res4b14_branch2a', data=res4b13_relu , num_filter=256, pad=(0, 0, 0), kernel=(1,1,1), stride=(1,1,1), no_bias=True)
bn4b14_branch2a = mx.symbol.BatchNorm(name='bn4b14_branch2a', data=res4b14_branch2a , fix_gamma=False, eps=0.000010)
res4b14_branch2a_relu = mx.symbol.Activation(name='res4b14_branch2a_relu', data=bn4b14_branch2a , act_type='relu')
res4b14_branch2b = mx.symbol.Convolution(name='res4b14_branch2b', data=res4b14_branch2a_relu , num_filter=256, pad=(0, 1, 1), kernel=(1,3,3), stride=(1,1,1), no_bias=True)
bn4b14_branch2b = mx.symbol.BatchNorm(name='bn4b14_branch2b', data=res4b14_branch2b , fix_gamma=False, eps=0.000010)
res4b14_branch2b_relu = mx.symbol.Activation(name='res4b14_branch2b_relu', data=bn4b14_branch2b , act_type='relu')
res4b14_branch2b_t = mx.symbol.Convolution(name='res4b14_branch2b_t', data=res4b14_branch2a_relu , num_filter=256, pad=(1, 0, 0), kernel=(3,1,1), stride=(1,1,1), no_bias=True)
bn4b14_branch2b_t = mx.symbol.BatchNorm(name='bn4b14_branch2b_t', data=res4b14_branch2b_t , fix_gamma=False, eps=0.000010)
res4b14_branch2b_st = res4b14_branch2b_relu * 1.0 + bn4b14_branch2b_t * 1.0
res4b14_branch2b_st_relu = mx.symbol.Activation(name='res4b14_branch2b_st_relu', data=res4b14_branch2b_st , act_type='relu')
res4b14_branch2c = mx.symbol.Convolution(name='res4b14_branch2c', data=res4b14_branch2b_st_relu , num_filter=1024, pad=(0, 0, 0), kernel=(1,1,1), stride=(1,1,1), no_bias=True)
bn4b14_branch2c = mx.symbol.BatchNorm(name='bn4b14_branch2c', data=res4b14_branch2c , fix_gamma=False, eps=0.000010)
res4b14 = mx.symbol.broadcast_add(name='res4b14', *[res4b13_relu,bn4b14_branch2c] )
res4b14_relu = mx.symbol.Activation(name='res4b14_relu', data=res4b14 , act_type='relu')
res4b15_branch2a = mx.symbol.Convolution(name='res4b15_branch2a', data=res4b14_relu , num_filter=256, pad=(0, 0, 0), kernel=(1,1,1), stride=(1,1,1), no_bias=True)
bn4b15_branch2a = mx.symbol.BatchNorm(name='bn4b15_branch2a', data=res4b15_branch2a , fix_gamma=False, eps=0.000010)
res4b15_branch2a_relu = mx.symbol.Activation(name='res4b15_branch2a_relu', data=bn4b15_branch2a , act_type='relu')
res4b15_branch2b = mx.symbol.Convolution(name='res4b15_branch2b', data=res4b15_branch2a_relu , num_filter=256, pad=(0, 1, 1), kernel=(1,3,3), stride=(1,1,1), no_bias=True)
bn4b15_branch2b = mx.symbol.BatchNorm(name='bn4b15_branch2b', data=res4b15_branch2b , fix_gamma=False, eps=0.000010)
res4b15_branch2b_relu = mx.symbol.Activation(name='res4b15_branch2b_relu', data=bn4b15_branch2b , act_type='relu')
res4b15_branch2b_t = mx.symbol.Convolution(name='res4b15_branch2b_t', data=res4b15_branch2b_relu , num_filter=256, pad=(1, 0, 0), kernel=(3,1,1), stride=(1,1,1), no_bias=True)
bn4b15_branch2b_t = mx.symbol.BatchNorm(name='bn4b15_branch2b_t', data=res4b15_branch2b_t , fix_gamma=False, eps=0.000010)
res4b15_branch2b_st = res4b15_branch2b_relu * 0.5 + bn4b15_branch2b_t * 0.5
res4b15_branch2b_st_relu = mx.symbol.Activation(name='res4b15_branch2b_st_relu', data=res4b15_branch2b_st , act_type='relu')
res4b15_branch2c = mx.symbol.Convolution(name='res4b15_branch2c', data=res4b15_branch2b_st_relu , num_filter=1024, pad=(0, 0, 0), kernel=(1,1,1), stride=(1,1,1), no_bias=True)
bn4b15_branch2c = mx.symbol.BatchNorm(name='bn4b15_branch2c', data=res4b15_branch2c , fix_gamma=False, eps=0.000010)
res4b15 = mx.symbol.broadcast_add(name='res4b15', *[res4b14_relu,bn4b15_branch2c] )
res4b15_relu = mx.symbol.Activation(name='res4b15_relu', data=res4b15 , act_type='relu')
res4b16_branch2a = mx.symbol.Convolution(name='res4b16_branch2a', data=res4b15_relu , num_filter=256, pad=(0, 0, 0), kernel=(1,1,1), stride=(1,1,1), no_bias=True)
bn4b16_branch2a = mx.symbol.BatchNorm(name='bn4b16_branch2a', data=res4b16_branch2a , fix_gamma=False, eps=0.000010)
res4b16_branch2a_relu = mx.symbol.Activation(name='res4b16_branch2a_relu', data=bn4b16_branch2a , act_type='relu')
res4b16_branch2b = mx.symbol.Convolution(name='res4b16_branch2b', data=res4b16_branch2a_relu , num_filter=256, pad=(0, 1, 1), kernel=(1,3,3), stride=(1,1,1), no_bias=True)
bn4b16_branch2b = mx.symbol.BatchNorm(name='bn4b16_branch2b', data=res4b16_branch2b , fix_gamma=False, eps=0.000010)
res4b16_branch2b_relu = mx.symbol.Activation(name='res4b16_branch2b_relu', data=bn4b16_branch2b , act_type='relu')
res4b16_branch2b_t = mx.symbol.Convolution(name='res4b16_branch2b_t', data=res4b16_branch2b_relu , num_filter=256, pad=(1, 0, 0), kernel=(3,1,1), stride=(1,1,1), no_bias=True)
bn4b16_branch2b_t = mx.symbol.BatchNorm(name='bn4b16_branch2b_t', data=res4b16_branch2b_t , fix_gamma=False, eps=0.000010)
res4b16_branch2b_t_relu = mx.symbol.Activation(name='res4b16_branch2b_t_relu', data=bn4b16_branch2b_t , act_type='relu')
res4b16_branch2c = mx.symbol.Convolution(name='res4b16_branch2c', data=res4b16_branch2b_t_relu , num_filter=1024, pad=(0, 0, 0), kernel=(1,1,1), stride=(1,1,1), no_bias=True)
bn4b16_branch2c = mx.symbol.BatchNorm(name='bn4b16_branch2c', data=res4b16_branch2c , fix_gamma=False, eps=0.000010)
res4b16 = mx.symbol.broadcast_add(name='res4b16', *[res4b15_relu,bn4b16_branch2c] )
res4b16_relu = mx.symbol.Activation(name='res4b16_relu', data=res4b16 , act_type='relu')
res4b17_branch2a = mx.symbol.Convolution(name='res4b17_branch2a', data=res4b16_relu , num_filter=256, pad=(0, 0, 0), kernel=(1,1,1), stride=(1,1,1), no_bias=True)
bn4b17_branch2a = mx.symbol.BatchNorm(name='bn4b17_branch2a', data=res4b17_branch2a , fix_gamma=False, eps=0.000010)
res4b17_branch2a_relu = mx.symbol.Activation(name='res4b17_branch2a_relu', data=bn4b17_branch2a , act_type='relu')
res4b17_branch2b = mx.symbol.Convolution(name='res4b17_branch2b', data=res4b17_branch2a_relu , num_filter=256, pad=(0, 1, 1), kernel=(1,3,3), stride=(1,1,1), no_bias=True)
bn4b17_branch2b = mx.symbol.BatchNorm(name='bn4b17_branch2b', data=res4b17_branch2b , fix_gamma=False, eps=0.000010)
res4b17_branch2b_relu = mx.symbol.Activation(name='res4b17_branch2b_relu', data=bn4b17_branch2b , act_type='relu')
res4b17_branch2b_t = mx.symbol.Convolution(name='res4b17_branch2b_t', data=res4b17_branch2a_relu , num_filter=256, pad=(1, 0, 0), kernel=(3,1,1), stride=(1,1,1), no_bias=True)
bn4b17_branch2b_t = mx.symbol.BatchNorm(name='bn4b17_branch2b_t', data=res4b17_branch2b_t , fix_gamma=False, eps=0.000010)
res4b17_branch2b_st = res4b17_branch2b_relu * 1.0 + bn4b17_branch2b_t * 1.0
res4b17_branch2b_st_relu = mx.symbol.Activation(name='res4b17_branch2b_st_relu', data=res4b17_branch2b_st , act_type='relu')
res4b17_branch2c = mx.symbol.Convolution(name='res4b17_branch2c', data=res4b17_branch2b_st_relu , num_filter=1024, pad=(0, 0, 0), kernel=(1,1,1), stride=(1,1,1), no_bias=True)
bn4b17_branch2c = mx.symbol.BatchNorm(name='bn4b17_branch2c', data=res4b17_branch2c , fix_gamma=False, eps=0.000010)
res4b17 = mx.symbol.broadcast_add(name='res4b17', *[res4b16_relu,bn4b17_branch2c] )
res4b17_relu = mx.symbol.Activation(name='res4b17_relu', data=res4b17 , act_type='relu')
res4b18_branch2a = mx.symbol.Convolution(name='res4b18_branch2a', data=res4b17_relu , num_filter=256, pad=(0, 0, 0), kernel=(1,1,1), stride=(1,1,1), no_bias=True)
bn4b18_branch2a = mx.symbol.BatchNorm(name='bn4b18_branch2a', data=res4b18_branch2a , fix_gamma=False, eps=0.000010)
res4b18_branch2a_relu = mx.symbol.Activation(name='res4b18_branch2a_relu', data=bn4b18_branch2a , act_type='relu')
res4b18_branch2b = mx.symbol.Convolution(name='res4b18_branch2b', data=res4b18_branch2a_relu , num_filter=256, pad=(0, 1, 1), kernel=(1,3,3), stride=(1,1,1), no_bias=True)
bn4b18_branch2b = mx.symbol.BatchNorm(name='bn4b18_branch2b', data=res4b18_branch2b , fix_gamma=False, eps=0.000010)
res4b18_branch2b_relu = mx.symbol.Activation(name='res4b18_branch2b_relu', data=bn4b18_branch2b , act_type='relu')
res4b18_branch2b_t = mx.symbol.Convolution(name='res4b18_branch2b_t', data=res4b18_branch2b_relu , num_filter=256, pad=(1, 0, 0), kernel=(3,1,1), stride=(1,1,1), no_bias=True)
bn4b18_branch2b_t = mx.symbol.BatchNorm(name='bn4b18_branch2b_t', data=res4b18_branch2b_t , fix_gamma=False, eps=0.000010)
res4b18_branch2b_st = res4b18_branch2b_relu * 0.5 + bn4b18_branch2b_t * 0.5
res4b18_branch2b_st_relu = mx.symbol.Activation(name='res4b18_branch2b_st_relu', data=res4b18_branch2b_st , act_type='relu')
res4b18_branch2c = mx.symbol.Convolution(name='res4b18_branch2c', data=res4b18_branch2b_st_relu , num_filter=1024, pad=(0, 0, 0), kernel=(1,1,1), stride=(1,1,1), no_bias=True)
bn4b18_branch2c = mx.symbol.BatchNorm(name='bn4b18_branch2c', data=res4b18_branch2c , fix_gamma=False, eps=0.000010)
res4b18 = mx.symbol.broadcast_add(name='res4b18', *[res4b17_relu,bn4b18_branch2c] )
res4b18_relu = mx.symbol.Activation(name='res4b18_relu', data=res4b18 , act_type='relu')
res4b19_branch2a = mx.symbol.Convolution(name='res4b19_branch2a', data=res4b18_relu , num_filter=256, pad=(0, 0, 0), kernel=(1,1,1), stride=(1,1,1), no_bias=True)
bn4b19_branch2a = mx.symbol.BatchNorm(name='bn4b19_branch2a', data=res4b19_branch2a , fix_gamma=False, eps=0.000010)
res4b19_branch2a_relu = mx.symbol.Activation(name='res4b19_branch2a_relu', data=bn4b19_branch2a , act_type='relu')
res4b19_branch2b = mx.symbol.Convolution(name='res4b19_branch2b', data=res4b19_branch2a_relu , num_filter=256, pad=(0, 1, 1), kernel=(1,3,3), stride=(1,1,1), no_bias=True)
bn4b19_branch2b = mx.symbol.BatchNorm(name='bn4b19_branch2b', data=res4b19_branch2b , fix_gamma=False, eps=0.000010)
res4b19_branch2b_relu = mx.symbol.Activation(name='res4b19_branch2b_relu', data=bn4b19_branch2b , act_type='relu')
res4b19_branch2b_t = mx.symbol.Convolution(name='res4b19_branch2b_t', data=res4b19_branch2b_relu , num_filter=256, pad=(1, 0, 0), kernel=(3,1,1), stride=(1,1,1), no_bias=True)
bn4b19_branch2b_t = mx.symbol.BatchNorm(name='bn4b19_branch2b_t', data=res4b19_branch2b_t , fix_gamma=False, eps=0.000010)
res4b19_branch2b_t_relu = mx.symbol.Activation(name='res4b19_branch2b_t_relu', data=bn4b19_branch2b_t , act_type='relu')
res4b19_branch2c = mx.symbol.Convolution(name='res4b19_branch2c', data=res4b19_branch2b_t_relu , num_filter=1024, pad=(0, 0, 0), kernel=(1,1,1), stride=(1,1,1), no_bias=True)
bn4b19_branch2c = mx.symbol.BatchNorm(name='bn4b19_branch2c', data=res4b19_branch2c , fix_gamma=False, eps=0.000010)
res4b19 = mx.symbol.broadcast_add(name='res4b19', *[res4b18_relu,bn4b19_branch2c] )
res4b19_relu = mx.symbol.Activation(name='res4b19_relu', data=res4b19 , act_type='relu')
res4b20_branch2a = mx.symbol.Convolution(name='res4b20_branch2a', data=res4b19_relu , num_filter=256, pad=(0, 0, 0), kernel=(1,1,1), stride=(1,1,1), no_bias=True)
bn4b20_branch2a = mx.symbol.BatchNorm(name='bn4b20_branch2a', data=res4b20_branch2a , fix_gamma=False, eps=0.000010)
res4b20_branch2a_relu = mx.symbol.Activation(name='res4b20_branch2a_relu', data=bn4b20_branch2a , act_type='relu')
res4b20_branch2b = mx.symbol.Convolution(name='res4b20_branch2b', data=res4b20_branch2a_relu , num_filter=256, pad=(0, 1, 1), kernel=(1,3,3), stride=(1,1,1), no_bias=True)
bn4b20_branch2b = mx.symbol.BatchNorm(name='bn4b20_branch2b', data=res4b20_branch2b , fix_gamma=False, eps=0.000010)
res4b20_branch2b_relu = mx.symbol.Activation(name='res4b20_branch2b_relu', data=bn4b20_branch2b , act_type='relu')
res4b20_branch2b_t = mx.symbol.Convolution(name='res4b20_branch2b_t', data=res4b20_branch2a_relu , num_filter=256, pad=(1, 0, 0), kernel=(3,1,1), stride=(1,1,1), no_bias=True)
bn4b20_branch2b_t = mx.symbol.BatchNorm(name='bn4b20_branch2b_t', data=res4b20_branch2b_t , fix_gamma=False, eps=0.000010)
res4b20_branch2b_st = res4b20_branch2b_relu * 1.0 + bn4b20_branch2b_t * 1.0
res4b20_branch2b_st_relu = mx.symbol.Activation(name='res4b20_branch2b_st_relu', data=res4b20_branch2b_st , act_type='relu')
res4b20_branch2c = mx.symbol.Convolution(name='res4b20_branch2c', data=res4b20_branch2b_st_relu , num_filter=1024, pad=(0, 0, 0), kernel=(1,1,1), stride=(1,1,1), no_bias=True)
bn4b20_branch2c = mx.symbol.BatchNorm(name='bn4b20_branch2c', data=res4b20_branch2c , fix_gamma=False, eps=0.000010)
res4b20 = mx.symbol.broadcast_add(name='res4b20', *[res4b19_relu,bn4b20_branch2c] )
res4b20_relu = mx.symbol.Activation(name='res4b20_relu', data=res4b20 , act_type='relu')
res4b21_branch2a = mx.symbol.Convolution(name='res4b21_branch2a', data=res4b20_relu , num_filter=256, pad=(0, 0, 0), kernel=(1,1,1), stride=(1,1,1), no_bias=True)
bn4b21_branch2a = mx.symbol.BatchNorm(name='bn4b21_branch2a', data=res4b21_branch2a , fix_gamma=False, eps=0.000010)
res4b21_branch2a_relu = mx.symbol.Activation(name='res4b21_branch2a_relu', data=bn4b21_branch2a , act_type='relu')
res4b21_branch2b = mx.symbol.Convolution(name='res4b21_branch2b', data=res4b21_branch2a_relu , num_filter=256, pad=(0, 1, 1), kernel=(1,3,3), stride=(1,1,1), no_bias=True)
bn4b21_branch2b = mx.symbol.BatchNorm(name='bn4b21_branch2b', data=res4b21_branch2b , fix_gamma=False, eps=0.000010)
res4b21_branch2b_relu = mx.symbol.Activation(name='res4b21_branch2b_relu', data=bn4b21_branch2b , act_type='relu')
res4b21_branch2b_t = mx.symbol.Convolution(name='res4b21_branch2b_t', data=res4b21_branch2b_relu , num_filter=256, pad=(1, 0, 0), kernel=(3,1,1), stride=(1,1,1), no_bias=True)
bn4b21_branch2b_t = mx.symbol.BatchNorm(name='bn4b21_branch2b_t', data=res4b21_branch2b_t , fix_gamma=False, eps=0.000010)
res4b21_branch2b_st = res4b21_branch2b_relu * 0.5 + bn4b21_branch2b_t * 0.5
res4b21_branch2b_st_relu = mx.symbol.Activation(name='res4b21_branch2b_st_relu', data=res4b21_branch2b_st , act_type='relu')
res4b21_branch2c = mx.symbol.Convolution(name='res4b21_branch2c', data=res4b21_branch2b_st_relu , num_filter=1024, pad=(0, 0, 0), kernel=(1,1,1), stride=(1,1,1), no_bias=True)
bn4b21_branch2c = mx.symbol.BatchNorm(name='bn4b21_branch2c', data=res4b21_branch2c , fix_gamma=False, eps=0.000010)
res4b21 = mx.symbol.broadcast_add(name='res4b21', *[res4b20_relu,bn4b21_branch2c] )
res4b21_relu = mx.symbol.Activation(name='res4b21_relu', data=res4b21 , act_type='relu')
res4b22_branch2a = mx.symbol.Convolution(name='res4b22_branch2a', data=res4b21_relu , num_filter=256, pad=(0, 0, 0), kernel=(1,1,1), stride=(1,1,1), no_bias=True)
bn4b22_branch2a = mx.symbol.BatchNorm(name='bn4b22_branch2a', data=res4b22_branch2a , fix_gamma=False, eps=0.000010)
res4b22_branch2a_relu = mx.symbol.Activation(name='res4b22_branch2a_relu', data=bn4b22_branch2a , act_type='relu')
res4b22_branch2b = mx.symbol.Convolution(name='res4b22_branch2b', data=res4b22_branch2a_relu , num_filter=256, pad=(0, 1, 1), kernel=(1,3,3), stride=(1,1,1), no_bias=True)
bn4b22_branch2b = mx.symbol.BatchNorm(name='bn4b22_branch2b', data=res4b22_branch2b , fix_gamma=False, eps=0.000010)
res4b22_branch2b_relu = mx.symbol.Activation(name='res4b22_branch2b_relu', data=bn4b22_branch2b , act_type='relu')
res4b22_branch2b_t = mx.symbol.Convolution(name='res4b22_branch2b_t', data=res4b22_branch2b_relu , num_filter=256, pad=(1, 0, 0), kernel=(3,1,1), stride=(1,1,1), no_bias=True)
bn4b22_branch2b_t = mx.symbol.BatchNorm(name='bn4b22_branch2b_t', data=res4b22_branch2b_t , fix_gamma=False, eps=0.000010)
res4b22_branch2b_t_relu = mx.symbol.Activation(name='res4b22_branch2b_t_relu', data=bn4b22_branch2b_t , act_type='relu')
res4b22_branch2c = mx.symbol.Convolution(name='res4b22_branch2c', data=res4b22_branch2b_t_relu , num_filter=1024, pad=(0, 0, 0), kernel=(1,1,1), stride=(1,1,1), no_bias=True)
bn4b22_branch2c = mx.symbol.BatchNorm(name='bn4b22_branch2c', data=res4b22_branch2c , fix_gamma=False, eps=0.000010)
res4b22 = mx.symbol.broadcast_add(name='res4b22', *[res4b21_relu,bn4b22_branch2c] )
res4b22_relu = mx.symbol.Activation(name='res4b22_relu', data=res4b22 , act_type='relu')
res4b23_branch2a = mx.symbol.Convolution(name='res4b23_branch2a', data=res4b22_relu , num_filter=256, pad=(0, 0, 0), kernel=(1,1,1), stride=(1,1,1), no_bias=True)
bn4b23_branch2a = mx.symbol.BatchNorm(name='bn4b23_branch2a', data=res4b23_branch2a , fix_gamma=False, eps=0.000010)
res4b23_branch2a_relu = mx.symbol.Activation(name='res4b23_branch2a_relu', data=bn4b23_branch2a , act_type='relu')
res4b23_branch2b = mx.symbol.Convolution(name='res4b23_branch2b', data=res4b23_branch2a_relu , num_filter=256, pad=(0, 1, 1), kernel=(1,3,3), stride=(1,1,1), no_bias=True)
bn4b23_branch2b = mx.symbol.BatchNorm(name='bn4b23_branch2b', data=res4b23_branch2b , fix_gamma=False, eps=0.000010)
res4b23_branch2b_relu = mx.symbol.Activation(name='res4b23_branch2b_relu', data=bn4b23_branch2b , act_type='relu')
res4b23_branch2b_t = mx.symbol.Convolution(name='res4b23_branch2b_t', data=res4b23_branch2a_relu , num_filter=256, pad=(1, 0, 0), kernel=(3,1,1), stride=(1,1,1), no_bias=True)
bn4b23_branch2b_t = mx.symbol.BatchNorm(name='bn4b23_branch2b_t', data=res4b23_branch2b_t , fix_gamma=False, eps=0.000010)
res4b23_branch2b_st = res4b23_branch2b_relu * 1.0 + bn4b23_branch2b_t * 1.0
res4b23_branch2b_st_relu = mx.symbol.Activation(name='res4b23_branch2b_st_relu', data=res4b23_branch2b_st , act_type='relu')
res4b23_branch2c = mx.symbol.Convolution(name='res4b23_branch2c', data=res4b23_branch2b_st_relu , num_filter=1024, pad=(0, 0, 0), kernel=(1,1,1), stride=(1,1,1), no_bias=True)
bn4b23_branch2c = mx.symbol.BatchNorm(name='bn4b23_branch2c', data=res4b23_branch2c , fix_gamma=False, eps=0.000010)
res4b23 = mx.symbol.broadcast_add(name='res4b23', *[res4b22_relu,bn4b23_branch2c] )
res4b23_relu = mx.symbol.Activation(name='res4b23_relu', data=res4b23 , act_type='relu')
res4b24_branch2a = mx.symbol.Convolution(name='res4b24_branch2a', data=res4b23_relu , num_filter=256, pad=(0, 0, 0), kernel=(1,1,1), stride=(1,1,1), no_bias=True)
bn4b24_branch2a = mx.symbol.BatchNorm(name='bn4b24_branch2a', data=res4b24_branch2a , fix_gamma=False, eps=0.000010)
res4b24_branch2a_relu = mx.symbol.Activation(name='res4b24_branch2a_relu', data=bn4b24_branch2a , act_type='relu')
res4b24_branch2b = mx.symbol.Convolution(name='res4b24_branch2b', data=res4b24_branch2a_relu , num_filter=256, pad=(0, 1, 1), kernel=(1,3,3), stride=(1,1,1), no_bias=True)
bn4b24_branch2b = mx.symbol.BatchNorm(name='bn4b24_branch2b', data=res4b24_branch2b , fix_gamma=False, eps=0.000010)
res4b24_branch2b_relu = mx.symbol.Activation(name='res4b24_branch2b_relu', data=bn4b24_branch2b , act_type='relu')
res4b24_branch2b_t = mx.symbol.Convolution(name='res4b24_branch2b_t', data=res4b24_branch2b_relu , num_filter=256, pad=(1, 0, 0), kernel=(3,1,1), stride=(1,1,1), no_bias=True)
bn4b24_branch2b_t = mx.symbol.BatchNorm(name='bn4b24_branch2b_t', data=res4b24_branch2b_t , fix_gamma=False, eps=0.000010)
res4b24_branch2b_st = res4b24_branch2b_relu * 0.5 + bn4b24_branch2b_t * 0.5
res4b24_branch2b_st_relu = mx.symbol.Activation(name='res4b24_branch2b_st_relu', data=res4b24_branch2b_st , act_type='relu')
res4b24_branch2c = mx.symbol.Convolution(name='res4b24_branch2c', data=res4b24_branch2b_st_relu , num_filter=1024, pad=(0, 0, 0), kernel=(1,1,1), stride=(1,1,1), no_bias=True)
bn4b24_branch2c = mx.symbol.BatchNorm(name='bn4b24_branch2c', data=res4b24_branch2c , fix_gamma=False, eps=0.000010)
res4b24 = mx.symbol.broadcast_add(name='res4b24', *[res4b23_relu,bn4b24_branch2c] )
res4b24_relu = mx.symbol.Activation(name='res4b24_relu', data=res4b24 , act_type='relu')
res4b25_branch2a = mx.symbol.Convolution(name='res4b25_branch2a', data=res4b24_relu , num_filter=256, pad=(0, 0, 0), kernel=(1,1,1), stride=(1,1,1), no_bias=True)
bn4b25_branch2a = mx.symbol.BatchNorm(name='bn4b25_branch2a', data=res4b25_branch2a , fix_gamma=False, eps=0.000010)
res4b25_branch2a_relu = mx.symbol.Activation(name='res4b25_branch2a_relu', data=bn4b25_branch2a , act_type='relu')
res4b25_branch2b = mx.symbol.Convolution(name='res4b25_branch2b', data=res4b25_branch2a_relu , num_filter=256, pad=(0, 1, 1), kernel=(1,3,3), stride=(1,1,1), no_bias=True)
bn4b25_branch2b = mx.symbol.BatchNorm(name='bn4b25_branch2b', data=res4b25_branch2b , fix_gamma=False, eps=0.000010)
res4b25_branch2b_relu = mx.symbol.Activation(name='res4b25_branch2b_relu', data=bn4b25_branch2b , act_type='relu')
res4b25_branch2b_t = mx.symbol.Convolution(name='res4b25_branch2b_t', data=res4b25_branch2b_relu , num_filter=256, pad=(1, 0, 0), kernel=(3,1,1), stride=(1,1,1), no_bias=True)
bn4b25_branch2b_t = mx.symbol.BatchNorm(name='bn4b25_branch2b_t', data=res4b25_branch2b_t , fix_gamma=False, eps=0.000010)
res4b25_branch2b_t_relu = mx.symbol.Activation(name='res4b25_branch2b_t_relu', data=bn4b25_branch2b_t , act_type='relu')
res4b25_branch2c = mx.symbol.Convolution(name='res4b25_branch2c', data=res4b25_branch2b_t_relu , num_filter=1024, pad=(0, 0, 0), kernel=(1,1,1), stride=(1,1,1), no_bias=True)
bn4b25_branch2c = mx.symbol.BatchNorm(name='bn4b25_branch2c', data=res4b25_branch2c , fix_gamma=False, eps=0.000010)
res4b25 = mx.symbol.broadcast_add(name='res4b25', *[res4b24_relu,bn4b25_branch2c] )
res4b25_relu = mx.symbol.Activation(name='res4b25_relu', data=res4b25 , act_type='relu')
res4b26_branch2a = mx.symbol.Convolution(name='res4b26_branch2a', data=res4b25_relu , num_filter=256, pad=(0, 0, 0), kernel=(1,1,1), stride=(1,1,1), no_bias=True)
bn4b26_branch2a = mx.symbol.BatchNorm(name='bn4b26_branch2a', data=res4b26_branch2a , fix_gamma=False, eps=0.000010)
res4b26_branch2a_relu = mx.symbol.Activation(name='res4b26_branch2a_relu', data=bn4b26_branch2a , act_type='relu')
res4b26_branch2b = mx.symbol.Convolution(name='res4b26_branch2b', data=res4b26_branch2a_relu , num_filter=256, pad=(0, 1, 1), kernel=(1,3,3), stride=(1,1,1), no_bias=True)
bn4b26_branch2b = mx.symbol.BatchNorm(name='bn4b26_branch2b', data=res4b26_branch2b , fix_gamma=False, eps=0.000010)
res4b26_branch2b_relu = mx.symbol.Activation(name='res4b26_branch2b_relu', data=bn4b26_branch2b , act_type='relu')
res4b26_branch2b_t = mx.symbol.Convolution(name='res4b26_branch2b_t', data=res4b26_branch2a_relu , num_filter=256, pad=(1, 0, 0), kernel=(3,1,1), stride=(1,1,1), no_bias=True)
bn4b26_branch2b_t = mx.symbol.BatchNorm(name='bn4b26_branch2b_t', data=res4b26_branch2b_t , fix_gamma=False, eps=0.000010)
res4b26_branch2b_st = res4b26_branch2b_relu * 1.0 + bn4b26_branch2b_t * 1.0
res4b26_branch2b_st_relu = mx.symbol.Activation(name='res4b26_branch2b_st_relu', data=res4b26_branch2b_st , act_type='relu')
res4b26_branch2c = mx.symbol.Convolution(name='res4b26_branch2c', data=res4b26_branch2b_st_relu , num_filter=1024, pad=(0, 0, 0), kernel=(1,1,1), stride=(1,1,1), no_bias=True)
bn4b26_branch2c = mx.symbol.BatchNorm(name='bn4b26_branch2c', data=res4b26_branch2c , fix_gamma=False, eps=0.000010)
res4b26 = mx.symbol.broadcast_add(name='res4b26', *[res4b25_relu,bn4b26_branch2c] )
res4b26_relu = mx.symbol.Activation(name='res4b26_relu', data=res4b26 , act_type='relu')
res4b27_branch2a = mx.symbol.Convolution(name='res4b27_branch2a', data=res4b26_relu , num_filter=256, pad=(0, 0, 0), kernel=(1,1,1), stride=(1,1,1), no_bias=True)
bn4b27_branch2a = mx.symbol.BatchNorm(name='bn4b27_branch2a', data=res4b27_branch2a , fix_gamma=False, eps=0.000010)
res4b27_branch2a_relu = mx.symbol.Activation(name='res4b27_branch2a_relu', data=bn4b27_branch2a , act_type='relu')
res4b27_branch2b = mx.symbol.Convolution(name='res4b27_branch2b', data=res4b27_branch2a_relu , num_filter=256, pad=(0, 1, 1), kernel=(1,3,3), stride=(1,1,1), no_bias=True)
bn4b27_branch2b = mx.symbol.BatchNorm(name='bn4b27_branch2b', data=res4b27_branch2b , fix_gamma=False, eps=0.000010)
res4b27_branch2b_relu = mx.symbol.Activation(name='res4b27_branch2b_relu', data=bn4b27_branch2b , act_type='relu')
res4b27_branch2b_t = mx.symbol.Convolution(name='res4b27_branch2b_t', data=res4b27_branch2b_relu , num_filter=256, pad=(1, 0, 0), kernel=(3,1,1), stride=(1,1,1), no_bias=True)
bn4b27_branch2b_t = mx.symbol.BatchNorm(name='bn4b27_branch2b_t', data=res4b27_branch2b_t , fix_gamma=False, eps=0.000010)
res4b27_branch2b_st = res4b27_branch2b_relu * 0.5 + bn4b27_branch2b_t * 0.5
res4b27_branch2b_st_relu = mx.symbol.Activation(name='res4b27_branch2b_st_relu', data=res4b27_branch2b_st , act_type='relu')
res4b27_branch2c = mx.symbol.Convolution(name='res4b27_branch2c', data=res4b27_branch2b_st_relu , num_filter=1024, pad=(0, 0, 0), kernel=(1,1,1), stride=(1,1,1), no_bias=True)
bn4b27_branch2c = mx.symbol.BatchNorm(name='bn4b27_branch2c', data=res4b27_branch2c , fix_gamma=False, eps=0.000010)
res4b27 = mx.symbol.broadcast_add(name='res4b27', *[res4b26_relu,bn4b27_branch2c] )
res4b27_relu = mx.symbol.Activation(name='res4b27_relu', data=res4b27 , act_type='relu')
res4b28_branch2a = mx.symbol.Convolution(name='res4b28_branch2a', data=res4b27_relu , num_filter=256, pad=(0, 0, 0), kernel=(1,1,1), stride=(1,1,1), no_bias=True)
bn4b28_branch2a = mx.symbol.BatchNorm(name='bn4b28_branch2a', data=res4b28_branch2a , fix_gamma=False, eps=0.000010)
res4b28_branch2a_relu = mx.symbol.Activation(name='res4b28_branch2a_relu', data=bn4b28_branch2a , act_type='relu')
res4b28_branch2b = mx.symbol.Convolution(name='res4b28_branch2b', data=res4b28_branch2a_relu , num_filter=256, pad=(0, 1, 1), kernel=(1,3,3), stride=(1,1,1), no_bias=True)
bn4b28_branch2b = mx.symbol.BatchNorm(name='bn4b28_branch2b', data=res4b28_branch2b , fix_gamma=False, eps=0.000010)
res4b28_branch2b_relu = mx.symbol.Activation(name='res4b28_branch2b_relu', data=bn4b28_branch2b , act_type='relu')
res4b28_branch2b_t = mx.symbol.Convolution(name='res4b28_branch2b_t', data=res4b28_branch2b_relu , num_filter=256, pad=(1, 0, 0), kernel=(3,1,1), stride=(1,1,1), no_bias=True)
bn4b28_branch2b_t = mx.symbol.BatchNorm(name='bn4b28_branch2b_t', data=res4b28_branch2b_t , fix_gamma=False, eps=0.000010)
res4b28_branch2b_t_relu = mx.symbol.Activation(name='res4b28_branch2b_t_relu', data=bn4b28_branch2b_t , act_type='relu')
res4b28_branch2c = mx.symbol.Convolution(name='res4b28_branch2c', data=res4b28_branch2b_t_relu , num_filter=1024, pad=(0, 0, 0), kernel=(1,1,1), stride=(1,1,1), no_bias=True)
bn4b28_branch2c = mx.symbol.BatchNorm(name='bn4b28_branch2c', data=res4b28_branch2c , fix_gamma=False, eps=0.000010)
res4b28 = mx.symbol.broadcast_add(name='res4b28', *[res4b27_relu,bn4b28_branch2c] )
res4b28_relu = mx.symbol.Activation(name='res4b28_relu', data=res4b28 , act_type='relu')
res4b29_branch2a = mx.symbol.Convolution(name='res4b29_branch2a', data=res4b28_relu , num_filter=256, pad=(0, 0, 0), kernel=(1,1,1), stride=(1,1,1), no_bias=True)
bn4b29_branch2a = mx.symbol.BatchNorm(name='bn4b29_branch2a', data=res4b29_branch2a , fix_gamma=False, eps=0.000010)
res4b29_branch2a_relu = mx.symbol.Activation(name='res4b29_branch2a_relu', data=bn4b29_branch2a , act_type='relu')
res4b29_branch2b = mx.symbol.Convolution(name='res4b29_branch2b', data=res4b29_branch2a_relu , num_filter=256, pad=(0, 1, 1), kernel=(1,3,3), stride=(1,1,1), no_bias=True)
bn4b29_branch2b = mx.symbol.BatchNorm(name='bn4b29_branch2b', data=res4b29_branch2b , fix_gamma=False, eps=0.000010)
res4b29_branch2b_relu = mx.symbol.Activation(name='res4b29_branch2b_relu', data=bn4b29_branch2b , act_type='relu')
res4b29_branch2b_t = mx.symbol.Convolution(name='res4b29_branch2b_t', data=res4b29_branch2a_relu , num_filter=256, pad=(1, 0, 0), kernel=(3,1,1), stride=(1,1,1), no_bias=True)
bn4b29_branch2b_t = mx.symbol.BatchNorm(name='bn4b29_branch2b_t', data=res4b29_branch2b_t , fix_gamma=False, eps=0.000010)
res4b29_branch2b_st = res4b29_branch2b_relu * 1.0 + bn4b29_branch2b_t * 1.0
res4b29_branch2b_st_relu = mx.symbol.Activation(name='res4b29_branch2b_st_relu', data=res4b29_branch2b_st , act_type='relu')
res4b29_branch2c = mx.symbol.Convolution(name='res4b29_branch2c', data=res4b29_branch2b_st_relu , num_filter=1024, pad=(0, 0, 0), kernel=(1,1,1), stride=(1,1,1), no_bias=True)
bn4b29_branch2c = mx.symbol.BatchNorm(name='bn4b29_branch2c', data=res4b29_branch2c , fix_gamma=False, eps=0.000010)
res4b29 = mx.symbol.broadcast_add(name='res4b29', *[res4b28_relu,bn4b29_branch2c] )
res4b29_relu = mx.symbol.Activation(name='res4b29_relu', data=res4b29 , act_type='relu')
res4b30_branch2a = mx.symbol.Convolution(name='res4b30_branch2a', data=res4b29_relu , num_filter=256, pad=(0, 0, 0), kernel=(1,1,1), stride=(1,1,1), no_bias=True)
bn4b30_branch2a = mx.symbol.BatchNorm(name='bn4b30_branch2a', data=res4b30_branch2a , fix_gamma=False, eps=0.000010)
res4b30_branch2a_relu = mx.symbol.Activation(name='res4b30_branch2a_relu', data=bn4b30_branch2a , act_type='relu')
res4b30_branch2b = mx.symbol.Convolution(name='res4b30_branch2b', data=res4b30_branch2a_relu , num_filter=256, pad=(0, 1, 1), kernel=(1,3,3), stride=(1,1,1), no_bias=True)
bn4b30_branch2b = mx.symbol.BatchNorm(name='bn4b30_branch2b', data=res4b30_branch2b , fix_gamma=False, eps=0.000010)
res4b30_branch2b_relu = mx.symbol.Activation(name='res4b30_branch2b_relu', data=bn4b30_branch2b , act_type='relu')
res4b30_branch2b_t = mx.symbol.Convolution(name='res4b30_branch2b_t', data=res4b30_branch2b_relu , num_filter=256, pad=(1, 0, 0), kernel=(3,1,1), stride=(1,1,1), no_bias=True)
bn4b30_branch2b_t = mx.symbol.BatchNorm(name='bn4b30_branch2b_t', data=res4b30_branch2b_t , fix_gamma=False, eps=0.000010)
res4b30_branch2b_st = res4b30_branch2b_relu * 0.5 + bn4b30_branch2b_t * 0.5
res4b30_branch2b_st_relu = mx.symbol.Activation(name='res4b30_branch2b_st_relu', data=res4b30_branch2b_st , act_type='relu')
res4b30_branch2c = mx.symbol.Convolution(name='res4b30_branch2c', data=res4b30_branch2b_st_relu , num_filter=1024, pad=(0, 0, 0), kernel=(1,1,1), stride=(1,1,1), no_bias=True)
bn4b30_branch2c = mx.symbol.BatchNorm(name='bn4b30_branch2c', data=res4b30_branch2c , fix_gamma=False, eps=0.000010)
res4b30 = mx.symbol.broadcast_add(name='res4b30', *[res4b29_relu,bn4b30_branch2c] )
res4b30_relu = mx.symbol.Activation(name='res4b30_relu', data=res4b30 , act_type='relu')
res4b31_branch2a = mx.symbol.Convolution(name='res4b31_branch2a', data=res4b30_relu , num_filter=256, pad=(0, 0, 0), kernel=(1,1,1), stride=(1,1,1), no_bias=True)
bn4b31_branch2a = mx.symbol.BatchNorm(name='bn4b31_branch2a', data=res4b31_branch2a , fix_gamma=False, eps=0.000010)
res4b31_branch2a_relu = mx.symbol.Activation(name='res4b31_branch2a_relu', data=bn4b31_branch2a , act_type='relu')
res4b31_branch2b = mx.symbol.Convolution(name='res4b31_branch2b', data=res4b31_branch2a_relu , num_filter=256, pad=(0, 1, 1), kernel=(1,3,3), stride=(1,1,1), no_bias=True)
bn4b31_branch2b = mx.symbol.BatchNorm(name='bn4b31_branch2b', data=res4b31_branch2b , fix_gamma=False, eps=0.000010)
res4b31_branch2b_relu = mx.symbol.Activation(name='res4b31_branch2b_relu', data=bn4b31_branch2b , act_type='relu')
res4b31_branch2b_t = mx.symbol.Convolution(name='res4b31_branch2b_t', data=res4b31_branch2b_relu , num_filter=256, pad=(1, 0, 0), kernel=(3,1,1), stride=(1,1,1), no_bias=True)
bn4b31_branch2b_t = mx.symbol.BatchNorm(name='bn4b31_branch2b_t', data=res4b31_branch2b_t , fix_gamma=False, eps=0.000010)
res4b31_branch2b_t_relu = mx.symbol.Activation(name='res4b31_branch2b_t_relu', data=bn4b31_branch2b_t , act_type='relu')
res4b31_branch2c = mx.symbol.Convolution(name='res4b31_branch2c', data=res4b31_branch2b_t_relu , num_filter=1024, pad=(0, 0, 0), kernel=(1,1,1), stride=(1,1,1), no_bias=True)
bn4b31_branch2c = mx.symbol.BatchNorm(name='bn4b31_branch2c', data=res4b31_branch2c , fix_gamma=False, eps=0.000010)
res4b31 = mx.symbol.broadcast_add(name='res4b31', *[res4b30_relu,bn4b31_branch2c] )
res4b31_relu = mx.symbol.Activation(name='res4b31_relu', data=res4b31 , act_type='relu')
res4b32_branch2a = mx.symbol.Convolution(name='res4b32_branch2a', data=res4b31_relu , num_filter=256, pad=(0, 0, 0), kernel=(1,1,1), stride=(1,1,1), no_bias=True)
bn4b32_branch2a = mx.symbol.BatchNorm(name='bn4b32_branch2a', data=res4b32_branch2a , fix_gamma=False, eps=0.000010)
res4b32_branch2a_relu = mx.symbol.Activation(name='res4b32_branch2a_relu', data=bn4b32_branch2a , act_type='relu')
res4b32_branch2b = mx.symbol.Convolution(name='res4b32_branch2b', data=res4b32_branch2a_relu , num_filter=256, pad=(0, 1, 1), kernel=(1,3,3), stride=(1,1,1), no_bias=True)
bn4b32_branch2b = mx.symbol.BatchNorm(name='bn4b32_branch2b', data=res4b32_branch2b , fix_gamma=False, eps=0.000010)
res4b32_branch2b_relu = mx.symbol.Activation(name='res4b32_branch2b_relu', data=bn4b32_branch2b , act_type='relu')
res4b32_branch2b_t = mx.symbol.Convolution(name='res4b32_branch2b_t', data=res4b32_branch2a_relu , num_filter=256, pad=(1, 0, 0), kernel=(3,1,1), stride=(1,1,1), no_bias=True)
bn4b32_branch2b_t = mx.symbol.BatchNorm(name='bn4b32_branch2b_t', data=res4b32_branch2b_t , fix_gamma=False, eps=0.000010)
res4b32_branch2b_st = res4b32_branch2b_relu * 1.0 + bn4b32_branch2b_t * 1.0
res4b32_branch2b_st_relu = mx.symbol.Activation(name='res4b32_branch2b_st_relu', data=res4b32_branch2b_st , act_type='relu')
res4b32_branch2c = mx.symbol.Convolution(name='res4b32_branch2c', data=res4b32_branch2b_st_relu , num_filter=1024, pad=(0, 0, 0), kernel=(1,1,1), stride=(1,1,1), no_bias=True)
bn4b32_branch2c = mx.symbol.BatchNorm(name='bn4b32_branch2c', data=res4b32_branch2c , fix_gamma=False, eps=0.000010)
res4b32 = mx.symbol.broadcast_add(name='res4b32', *[res4b31_relu,bn4b32_branch2c] )
res4b32_relu = mx.symbol.Activation(name='res4b32_relu', data=res4b32 , act_type='relu')
res4b33_branch2a = mx.symbol.Convolution(name='res4b33_branch2a', data=res4b32_relu , num_filter=256, pad=(0, 0, 0), kernel=(1,1,1), stride=(1,1,1), no_bias=True)
bn4b33_branch2a = mx.symbol.BatchNorm(name='bn4b33_branch2a', data=res4b33_branch2a , fix_gamma=False, eps=0.000010)
res4b33_branch2a_relu = mx.symbol.Activation(name='res4b33_branch2a_relu', data=bn4b33_branch2a , act_type='relu')
res4b33_branch2b = mx.symbol.Convolution(name='res4b33_branch2b', data=res4b33_branch2a_relu , num_filter=256, pad=(0, 1, 1), kernel=(1,3,3), stride=(1,1,1), no_bias=True)
bn4b33_branch2b = mx.symbol.BatchNorm(name='bn4b33_branch2b', data=res4b33_branch2b , fix_gamma=False, eps=0.000010)
res4b33_branch2b_relu = mx.symbol.Activation(name='res4b33_branch2b_relu', data=bn4b33_branch2b , act_type='relu')
res4b33_branch2b_t = mx.symbol.Convolution(name='res4b33_branch2b_t', data=res4b33_branch2b_relu , num_filter=256, pad=(1, 0, 0), kernel=(3,1,1), stride=(1,1,1), no_bias=True)
bn4b33_branch2b_t = mx.symbol.BatchNorm(name='bn4b33_branch2b_t', data=res4b33_branch2b_t , fix_gamma=False, eps=0.000010)
res4b33_branch2b_st = res4b33_branch2b_relu * 0.5 + bn4b33_branch2b_t * 0.5
res4b33_branch2b_st_relu = mx.symbol.Activation(name='res4b33_branch2b_st_relu', data=res4b33_branch2b_st , act_type='relu')
res4b33_branch2c = mx.symbol.Convolution(name='res4b33_branch2c', data=res4b33_branch2b_st_relu , num_filter=1024, pad=(0, 0, 0), kernel=(1,1,1), stride=(1,1,1), no_bias=True)
bn4b33_branch2c = mx.symbol.BatchNorm(name='bn4b33_branch2c', data=res4b33_branch2c , fix_gamma=False, eps=0.000010)
res4b33 = mx.symbol.broadcast_add(name='res4b33', *[res4b32_relu,bn4b33_branch2c] )
res4b33_relu = mx.symbol.Activation(name='res4b33_relu', data=res4b33 , act_type='relu')
res4b34_branch2a = mx.symbol.Convolution(name='res4b34_branch2a', data=res4b33_relu , num_filter=256, pad=(0, 0, 0), kernel=(1,1,1), stride=(1,1,1), no_bias=True)
bn4b34_branch2a = mx.symbol.BatchNorm(name='bn4b34_branch2a', data=res4b34_branch2a , fix_gamma=False, eps=0.000010)
res4b34_branch2a_relu = mx.symbol.Activation(name='res4b34_branch2a_relu', data=bn4b34_branch2a , act_type='relu')
res4b34_branch2b = mx.symbol.Convolution(name='res4b34_branch2b', data=res4b34_branch2a_relu , num_filter=256, pad=(0, 1, 1), kernel=(1,3,3), stride=(1,1,1), no_bias=True)
bn4b34_branch2b = mx.symbol.BatchNorm(name='bn4b34_branch2b', data=res4b34_branch2b , fix_gamma=False, eps=0.000010)
res4b34_branch2b_relu = mx.symbol.Activation(name='res4b34_branch2b_relu', data=bn4b34_branch2b , act_type='relu')
res4b34_branch2b_t = mx.symbol.Convolution(name='res4b34_branch2b_t', data=res4b34_branch2b_relu , num_filter=256, pad=(1, 0, 0), kernel=(3,1,1), stride=(1,1,1), no_bias=True)
bn4b34_branch2b_t = mx.symbol.BatchNorm(name='bn4b34_branch2b_t', data=res4b34_branch2b_t , fix_gamma=False, eps=0.000010)
res4b34_branch2b_t_relu = mx.symbol.Activation(name='res4b34_branch2b_t_relu', data=bn4b34_branch2b_t , act_type='relu')
res4b34_branch2c = mx.symbol.Convolution(name='res4b34_branch2c', data=res4b34_branch2b_t_relu , num_filter=1024, pad=(0, 0, 0), kernel=(1,1,1), stride=(1,1,1), no_bias=True)
bn4b34_branch2c = mx.symbol.BatchNorm(name='bn4b34_branch2c', data=res4b34_branch2c , fix_gamma=False, eps=0.000010)
res4b34 = mx.symbol.broadcast_add(name='res4b34', *[res4b33_relu,bn4b34_branch2c] )
res4b34_relu = mx.symbol.Activation(name='res4b34_relu', data=res4b34 , act_type='relu')
res4b35_branch2a = mx.symbol.Convolution(name='res4b35_branch2a', data=res4b34_relu , num_filter=256, pad=(0, 0, 0), kernel=(1,1,1), stride=(1,1,1), no_bias=True)
bn4b35_branch2a = mx.symbol.BatchNorm(name='bn4b35_branch2a', data=res4b35_branch2a , fix_gamma=False, eps=0.000010)
res4b35_branch2a_relu = mx.symbol.Activation(name='res4b35_branch2a_relu', data=bn4b35_branch2a , act_type='relu')
res4b35_branch2b = mx.symbol.Convolution(name='res4b35_branch2b', data=res4b35_branch2a_relu , num_filter=256, pad=(0, 1, 1), kernel=(1,3,3), stride=(1,1,1), no_bias=True)
bn4b35_branch2b = mx.symbol.BatchNorm(name='bn4b35_branch2b', data=res4b35_branch2b , fix_gamma=False, eps=0.000010)
res4b35_branch2b_relu = mx.symbol.Activation(name='res4b35_branch2b_relu', data=bn4b35_branch2b , act_type='relu')
res4b35_branch2b_t = mx.symbol.Convolution(name='res4b35_branch2b_t', data=res4b35_branch2a_relu , num_filter=256, pad=(1, 0, 0), kernel=(3,1,1), stride=(1,1,1), no_bias=True)
bn4b35_branch2b_t = mx.symbol.BatchNorm(name='bn4b35_branch2b_t', data=res4b35_branch2b_t , fix_gamma=False, eps=0.000010)
res4b35_branch2b_st = res4b35_branch2b_relu * 1.0 + bn4b35_branch2b_t * 1.0
res4b35_branch2b_st_relu = mx.symbol.Activation(name='res4b35_branch2b_st_relu', data=res4b35_branch2b_st , act_type='relu')
res4b35_branch2c = mx.symbol.Convolution(name='res4b35_branch2c', data=res4b35_branch2b_st_relu , num_filter=1024, pad=(0, 0, 0), kernel=(1,1,1), stride=(1,1,1), no_bias=True)
bn4b35_branch2c = mx.symbol.BatchNorm(name='bn4b35_branch2c', data=res4b35_branch2c , fix_gamma=False, eps=0.000010)
res4b35 = mx.symbol.broadcast_add(name='res4b35', *[res4b34_relu,bn4b35_branch2c] )
res4b35_relu = mx.symbol.Activation(name='res4b35_relu', data=res4b35 , act_type='relu')
res5a_pool = mx.symbol.Pooling(name='res5a_pool', data=res4b35_relu , pooling_convention='full', pad=(0,0,0), kernel=(2,1,1), stride=(2,1,1), pool_type='max')
res5a_reshape = mx.symbol.Reshape(name='res5a_reshape', data=res5a_pool , shape=(0,0,10,10))
res5a_branch1 = mx.symbol.Convolution(name='res5a_branch1', data=res5a_reshape , num_filter=2048, pad=(0, 0), kernel=(1,1), stride=(2,2), no_bias=True)
bn5a_branch1 = mx.symbol.BatchNorm(name='bn5a_branch1', data=res5a_branch1 , fix_gamma=False, eps=0.000010)
res5a_branch2a = mx.symbol.Convolution(name='res5a_branch2a', data=res5a_reshape , num_filter=512, pad=(0, 0), kernel=(1,1), stride=(2,2), no_bias=True)
bn5a_branch2a = mx.symbol.BatchNorm(name='bn5a_branch2a', data=res5a_branch2a , fix_gamma=False, eps=0.000010)
res5a_branch2a_relu = mx.symbol.Activation(name='res5a_branch2a_relu', data=bn5a_branch2a , act_type='relu')
res5a_branch2b = mx.symbol.Convolution(name='res5a_branch2b', data=res5a_branch2a_relu , num_filter=512, pad=(1, 1), kernel=(3,3), stride=(1,1), no_bias=True)
bn5a_branch2b = mx.symbol.BatchNorm(name='bn5a_branch2b', data=res5a_branch2b , fix_gamma=False, eps=0.000010)
res5a_branch2b_relu = mx.symbol.Activation(name='res5a_branch2b_relu', data=bn5a_branch2b , act_type='relu')
res5a_branch2c = mx.symbol.Convolution(name='res5a_branch2c', data=res5a_branch2b_relu , num_filter=2048, pad=(0, 0), kernel=(1,1), stride=(1,1), no_bias=True)
bn5a_branch2c = mx.symbol.BatchNorm(name='bn5a_branch2c', data=res5a_branch2c , fix_gamma=False, eps=0.000010)
res5a = mx.symbol.broadcast_add(name='res5a', *[bn5a_branch1,bn5a_branch2c] )
res5a_relu = mx.symbol.Activation(name='res5a_relu', data=res5a , act_type='relu')
res5b_branch2a = mx.symbol.Convolution(name='res5b_branch2a', data=res5a_relu , num_filter=512, pad=(0, 0), kernel=(1,1), stride=(1,1), no_bias=True)
bn5b_branch2a = mx.symbol.BatchNorm(name='bn5b_branch2a', data=res5b_branch2a , fix_gamma=False, eps=0.000010)
res5b_branch2a_relu = mx.symbol.Activation(name='res5b_branch2a_relu', data=bn5b_branch2a , act_type='relu')
res5b_branch2b = mx.symbol.Convolution(name='res5b_branch2b', data=res5b_branch2a_relu , num_filter=512, pad=(1, 1), kernel=(3,3), stride=(1,1), no_bias=True)
bn5b_branch2b = mx.symbol.BatchNorm(name='bn5b_branch2b', data=res5b_branch2b , fix_gamma=False, eps=0.000010)
res5b_branch2b_relu = mx.symbol.Activation(name='res5b_branch2b_relu', data=bn5b_branch2b , act_type='relu')
res5b_branch2c = mx.symbol.Convolution(name='res5b_branch2c', data=res5b_branch2b_relu , num_filter=2048, pad=(0, 0), kernel=(1,1), stride=(1,1), no_bias=True)
bn5b_branch2c = mx.symbol.BatchNorm(name='bn5b_branch2c', data=res5b_branch2c , fix_gamma=False, eps=0.000010)
res5b = mx.symbol.broadcast_add(name='res5b', *[res5a_relu,bn5b_branch2c] )
res5b_relu = mx.symbol.Activation(name='res5b_relu', data=res5b , act_type='relu')
res5c_branch2a = mx.symbol.Convolution(name='res5c_branch2a', data=res5b_relu , num_filter=512, pad=(0, 0), kernel=(1,1), stride=(1,1), no_bias=True)
bn5c_branch2a = mx.symbol.BatchNorm(name='bn5c_branch2a', data=res5c_branch2a , fix_gamma=False, eps=0.000010)
res5c_branch2a_relu = mx.symbol.Activation(name='res5c_branch2a_relu', data=bn5c_branch2a , act_type='relu')
res5c_branch2b = mx.symbol.Convolution(name='res5c_branch2b', data=res5c_branch2a_relu , num_filter=512, pad=(1, 1), kernel=(3,3), stride=(1,1), no_bias=True)
bn5c_branch2b = mx.symbol.BatchNorm(name='bn5c_branch2b', data=res5c_branch2b , fix_gamma=False, eps=0.000010)
res5c_branch2b_relu = mx.symbol.Activation(name='res5c_branch2b_relu', data=bn5c_branch2b , act_type='relu')
res5c_branch2c = mx.symbol.Convolution(name='res5c_branch2c', data=res5c_branch2b_relu , num_filter=2048, pad=(0, 0), kernel=(1,1), stride=(1,1), no_bias=True)
bn5c_branch2c = mx.symbol.BatchNorm(name='bn5c_branch2c', data=res5c_branch2c , fix_gamma=False, eps=0.000010)
res5c = mx.symbol.broadcast_add(name='res5c', *[res5b_relu,bn5c_branch2c] )
res5c_relu = mx.symbol.Activation(name='res5c_relu', data=res5c , act_type='relu')
pool5 = mx.symbol.Pooling(name='pool5', data=res5c_relu , pooling_convention='full', global_pool=True, kernel=(1,1), pool_type='avg')
pool5_drop = mx.symbol.Dropout(name='pool5_drop', data=pool5 , p=0.500000)
flatten_0=mx.symbol.Flatten(name='flatten_0', data=pool5_drop)
fc_kinetics = mx.symbol.FullyConnected(name='fc_kinetics', data=flatten_0 , num_hidden=400, no_bias=False)
prob = mx.symbol.SoftmaxOutput(name='prob', data=fc_kinetics )
prob.save('deploy_p3d_resnet_kinetics-symbol.json')