Hi,all,I have some problem about ONNX Prelu.I convert my pytorch model to onnx ,but got error:
In `main`: #[version = "0.0.5"] fn (%inputL: Tensor[(1, 3, 512, 960), float32], %feature_extraction.firstconv.conv1.0.0.weight: Tensor[(48, 3, 1, 1), float32], %feature_extraction.firstconv.conv1.0.1.weight: Tensor[(48), float32], %feature_extraction.firstconv.conv1.0.1.bias: Tensor[(48), float32], %feature_extraction.firstconv.conv1.0.1.running_mean: Tensor[(48), float32], %feature_extraction.firstconv.conv1.0.1.running_var: Tensor[(48), float32], %v1552: Tensor[(1, 1, 1), float32]) { %0 = nn.conv2d(%inputL, %feature_extraction.firstconv.conv1.0.0.weight, padding=[0, 0, 0, 0], kernel_size=[1, 1]); %1 = nn.batch_norm(%0, %feature_extraction.firstconv.conv1.0.1.weight, %feature_extraction.firstconv.conv1.0.1.bias, %feature_extraction.firstconv.conv1.0.1.running_mean, %feature_extraction.firstconv.conv1.0.1.running_var); %2 = %1.0; %3 = reshape(%v1552, newshape=[-1]); nn.prelu(%2, %3) in particular dimension 0 conflicts 48 does not match 1; unable to unify: Tensor[(48), float32]` and `Tensor[(1), float32]`; I have read the doc about prelu: > ### **PRelu** > > PRelu takes input data (Tensor) and slope tensor as input, and produces one > output data (Tensor) where the function `f(x) = slope * x for x < 0` , > `f(x) = x for x >= 0` ., is applied to the data tensor elementwise. This > operator supports **unidirectional broadcasting** (tensor slope should be > unidirectional broadcastable to input tensor X); for more details please > check [the > doc](https://github.com/onnx/onnx/blob/master/docs/Broadcasting.md). > > #### Version > > This version of the operator has been available since version 9 of the > default ONNX operator set. > > Other versions of this operator: > [1](https://github.com/onnx/onnx/blob/master/docs/Changelog.md#PRelu-1), > [6](https://github.com/onnx/onnx/blob/master/docs/Changelog.md#PRelu-6), > [7](https://github.com/onnx/onnx/blob/master/docs/Changelog.md#PRelu-7) > > #### Inputs > > X : T > > Input tensor > > slope : T > > Slope tensor. The shape of slope can be smaller then first input X; if so, > its shape must be unidirectional broadcastable to X > > #### Outputs > > Y : T > > Output tensor (same size as X) my model have the prelu op,the slope shape is (1,1,1) the Input tensor shape is (1,48,512,960) Maybe tvm prelu can not support broadcast? Thanks! --- [Visit Topic](https://discuss.tvm.apache.org/t/prelu-op-can-not-support-broadcast/7880/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/422b0b2317f6c5c8f229909f87b5a6b19095559f8605fd92ba508096468be232).