Slice

Описание

Info

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

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

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

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

def __init__(self, slc=None, name=None):

Параметры

Параметр Возможные типы Описание По умолчанию
slc list Список объектов slice. None
name str Имя слоя. None

Пояснения

slc - для удобства можно вместо списка объектов slice задавать срез, как для numpy-массивов (см. пример).

Примеры

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

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

Info

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

>>> batchsize, maps, h, w = 1, 1, 5, 5
>>> data = gpuarray.to_gpu(np.random.randint(0, 9, (batchsize, maps, h, w)).astype(np.float32))
>>> print(data)
[[[[6. 2. 0. 8. 1.]
   [0. 7. 4. 5. 3.]
   [5. 7. 2. 5. 6.]
   [8. 2. 3. 3. 0.]
   [4. 4. 6. 7. 7.]]]]
>>> slc = Slice()[:, :, 1:-1, 1:-1]
>>> slc(data)
[[[[7. 4. 5.]
   [7. 2. 5.]
   [2. 3. 3.]]]]