ChannelShuffle¶
- class torch.nn.ChannelShuffle(groups)[source][source]¶
對張量中的通道進行分割和重排。
此操作將形狀為 的張量中的通道分割為 g 組,變為 ,然後對其進行混洗,同時在最終輸出中保留原始張量形狀。
- 引數
groups (int) – 將通道分割成的組數。
示例
>>> channel_shuffle = nn.ChannelShuffle(2) >>> input = torch.arange(1, 17, dtype=torch.float32).view(1, 4, 2, 2) >>> input tensor([[[[ 1., 2.], [ 3., 4.]], [[ 5., 6.], [ 7., 8.]], [[ 9., 10.], [11., 12.]], [[13., 14.], [15., 16.]]]]) >>> output = channel_shuffle(input) >>> output tensor([[[[ 1., 2.], [ 3., 4.]], [[ 9., 10.], [11., 12.]], [[ 5., 6.], [ 7., 8.]], [[13., 14.], [15., 16.]]]])