SwapAxes

Описание

Info

Родительский класс: Module

Производные классы: -

Этот модуль выполняет функцию перемены местами значений тензора вдоль осей. Аналог функции swapaxes в numpy.

Инициализация

def __init__(self, axis1, axis2, name=None):

Параметры

Параметр Возможные типы Описание По умолчанию
axis1 int Номер первой оси -
axis2 int Номер второй оси -
name str Имя слоя None

Пояснения

-

Примеры

Необходимые импорты.

import numpy as np
from PuzzleLib.Backend import gpuarray
from PuzzleLib.Modules import SwapAxes

Сформируем тензор данных. Обратите внимание на текущий формат: (batchsize, insize).

shape = (10, 3, 5, 4, 2)
data = gpuarray.to_gpu(np.random.randn(*shape).astype(np.float32))
print(data.shape)
(10, 3, 5, 4, 2)
swap = SwapAxes(axis1=2, axis2=4)
outdata = swap(data)
print(outdata.shape)
(10, 3, 2, 4, 5)
swap = SwapAxes(axis1=0, axis2=2)
outdata = swap(data)
print(outdata.shape)
(5, 3, 10, 4, 2)