Split

Описание

Info

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

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

Данный модуль выполняет операцию разбиения значений тензора по заданной оси.

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

def __init__(self, axis, sections, name=None):

Параметры

Параметр Возможные типы Описание По умолчанию
axis int Ось, по которой производится операция. -
sections tuple На какие части разбить указанную ось. Количество выходных тензоров равно длине данного кортежа. -
name str Имя слоя. None

Пояснения

-

Примеры

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

>>> import numpy as np
>>> from PuzzleLib.Backend import gpuarray
>>> from PuzzleLib.Modules import Split

Info

gpuarray необходим для правильного размещения тензора на GPU

>>> batchsize, groups, size = 5, 3, 6
>>> data =  gpuarray.to_gpu(np.random.randn(batchsize, groups, size).astype(np.float32))
>>> split = Split(axis=2, sections=(3, 2, 1))
>>> outdata = split(data)
>>> for outd in outdata:
...   print(outd.shape)
(5, 3, 3)
(5, 3, 2)
(5, 3, 1)