class ChannelShuffle(nn.Module):
应用NPU兼容的通道shuffle操作。为避免NPU上效率不高的连续操作,我们用相同语义重写替换原始操作。以下两个不连续操作已被替换:transpose和chunk。
from torch_npu.contrib.module import ChannelShuffle m = ChannelShuffle(64, split_shuffle=True)
>>> x1 = torch.randn(2,32,7,7) >>> x2 = torch.randn(2,32,7,7) >>> m = ChannelShuffle(64, split_shuffle=True) >>> output = m(x1, x2)