fire module in squeezeNet model
| 14 | |
| 15 | // fire module in squeezeNet model |
| 16 | static VARP fireMoudle(VARP x, int inputChannel, int squeeze_1x1, |
| 17 | int expand_1x1, int expand_3x3) { |
| 18 | x = _Conv(0.0f, 0.0f, x, {inputChannel, squeeze_1x1}, {1, 1}, VALID, {1, 1}, {1, 1}, 1); |
| 19 | auto y1 = _Conv(0.0f, 0.0f, x, {squeeze_1x1, expand_1x1}, {1, 1}, VALID, {1, 1}, {1, 1}, 1); |
| 20 | auto y2 = _Conv(0.0f, 0.0f, x, {squeeze_1x1, expand_3x3}, {3, 3}, SAME, {1, 1}, {1, 1}, 1); |
| 21 | return _Concat({y1, y2}, 1); // concat on channel axis (NCHW) |
| 22 | } |
| 23 | |
| 24 | VARP squeezeNetExpr(int numClass) { |
| 25 | auto x = _Input({1, 3, 224, 224}, NC4HW4); |
no test coverage detected