def @main(%data: Tensor[(1, 112, 112, 32), float32]) -> Tensor[(1, 112,
112, 64), float32] {
%3 = fn (%p0: Tensor[(1, 112, 112, 32), float32], %p1: Tensor[(3, 3, 32,
1), float32], %p2: Tensor[(1, 1, 1, 32), float32], %p3: Tensor[(1, 1, 1, 32),
float32], Primitive=1) -> Tensor[(1, 112, 112, 32), float32] {
%0 = nn.conv2d(%p0, %p1, padding=[1, 1, 1, 1], groups=32, channels=32,
kernel_size=[3, 3], data_layout="NHWC", kernel_layout="HWIO") /* ty=Tensor[(1,
112, 112, 32), float32] */;
%1 = multiply(%0, %p2) /* ty=Tensor[(1, 112, 112, 32), float32] */;
%2 = add(%1, %p3) /* ty=Tensor[(1, 112, 112, 32), float32] */;
nn.relu(%2) /* ty=Tensor[(1, 112, 112, 32), float32] */
};
%4 = %3(%data, meta[relay.Constant][0] /* ty=Tensor[(3, 3, 32, 1),
float32] */ /* ty=Tensor[(3, 3, 32, 1), float32] */, meta[relay.Constant][1] /*
ty=Tensor[(1, 1, 1, 32), float32] */ /* ty=Tensor[(1, 1, 1, 32), float32] */,
meta[relay.Constant][2] /* ty=Tensor[(1, 1, 1, 32), float32] */ /*
ty=Tensor[(1, 1, 1, 32), float32] */) /* ty=Tensor[(1, 112, 112, 32), float32]
*/;
%8 = fn (%p01: Tensor[(1, 112, 112, 32), float32], %p11: Tensor[(1, 1,
32, 64), float32], %p21: Tensor[(1, 1, 1, 64), float32], %p31: Tensor[(1, 1, 1,
64), float32], Primitive=1) -> Tensor[(1, 112, 112, 64), float32] {
%5 = nn.conv2d(%p01, %p11, padding=[0, 0, 0, 0], channels=64,
kernel_size=[1, 1], data_layout="NHWC", kernel_layout="HWIO") /* ty=Tensor[(1,
112, 112, 64), float32] */;
%6 = multiply(%5, %p21) /* ty=Tensor[(1, 112, 112, 64), float32] */;
%7 = add(%6, %p31) /* ty=Tensor[(1, 112, 112, 64), float32] */;
nn.relu(%7) /* ty=Tensor[(1, 112, 112, 64), float32] */
};
%8(%4, meta[relay.Constant][3] /* ty=Tensor[(1, 1, 32, 64), float32] */
/* ty=Tensor[(1, 1, 32, 64), float32] */, meta[relay.Constant][4] /*
ty=Tensor[(1, 1, 1, 64), float32] */ /* ty=Tensor[(1, 1, 1, 64), float32] */,
meta[relay.Constant][5] /* ty=Tensor[(1, 1, 1, 64), float32] */ /*
ty=Tensor[(1, 1, 1, 64), float32] */) /* ty=Tensor[(1, 112, 112, 64), float32]
*/
}
Hello, I'm just start learning how to use Relay's pattern matching. I wonder if
there's a way I can match a function pattern (together with its internal
pattern, e.g. `conv+mul+add+relu`), just like the two shown in the above
example? Thanks in advance!
---
[Visit
Topic](https://discuss.tvm.apache.org/t/how-to-detect-the-pattern-of-a-function/8283/1)
to respond.
You are receiving this because you enabled mailing list mode.
To unsubscribe from these emails, [click
here](https://discuss.tvm.apache.org/email/unsubscribe/5399e2a8eed927aceeea834ed43a678d29b51523cec87633b4cef221a7c97e86).