Replicate¶
Описание¶
Этот модуль выполняет операцию репликации выхода предыдущего слоя и используется для разветвления нейросети при её построении с помощью Sequential.
Инициализация¶
def __init__(self, times, name=None):
Параметры
Параметр | Возможные типы | Описание | По умолчанию |
---|---|---|---|
name | str | Имя слоя | None |
times | int | Сколько раз копировать выход предыдущего слоя | – |
Пояснения
-
Примеры¶
Необходимые импорты.
import numpy as np
from PuzzleLib.Backend import gpuarray
from PuzzleLib.Modules import Replicate
Info
gpuarray
необходим для правильного размещения тензора на GPU
np.random.seed(123)
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)
[[[[2. 2. 6. 1. 3.]
[6. 1. 0. 1. 0.]
[0. 3. 4. 0. 0.]
[4. 1. 7. 3. 2.]
[4. 7. 2. 4. 8.]]]]
repl = Replicate(times=3)
print(repl(data))
[[[[2. 2. 6. 1. 3.]
[6. 1. 0. 1. 0.]
[0. 3. 4. 0. 0.]
[4. 1. 7. 3. 2.]
[4. 7. 2. 4. 8.]]]],
[[[[2. 2. 6. 1. 3.]
[6. 1. 0. 1. 0.]
[0. 3. 4. 0. 0.]
[4. 1. 7. 3. 2.]
[4. 7. 2. 4. 8.]]]],
[[[[2. 2. 6. 1. 3.]
[6. 1. 0. 1. 0.]
[0. 3. 4. 0. 0.]
[4. 1. 7. 3. 2.]
[4. 7. 2. 4. 8.]]]]