public class SpaceToDepthLayer extends NoParamLayer
This operation takes 4D array in, in either NCHW or NHWC format, and moves data from spatial dimensions (HW)
to channels (C) for given blockSize.
The idea is that blocks of the input of size [blockSize,blockSize] are moved from the spatial dimension
to the depth dimension.
Thus, for NCHW input format, input shape [mb, inChannels, H, W]
, output has shape [mb, inChannels * blockSize * blockSize, H/blockSize, W/blockSize]
blockSize = 4 dataFormat = "NCHW" input shape = [128, 16, 16, 3] output shape = [128, 16/4, 16/4, 3*4*4]
Modifier and Type | Class and Description |
---|---|
static class |
SpaceToDepthLayer.Builder<T extends SpaceToDepthLayer.Builder<T>> |
static class |
SpaceToDepthLayer.DataFormat |
Modifier and Type | Field and Description |
---|---|
protected int |
blockSize |
protected SpaceToDepthLayer.DataFormat |
dataFormat |
constraints, iDropout, layerName
Modifier | Constructor and Description |
---|---|
protected |
SpaceToDepthLayer(SpaceToDepthLayer.Builder builder) |
Modifier and Type | Method and Description |
---|---|
SpaceToDepthLayer |
clone() |
double |
getL1ByParam(String paramName)
Get the L1 coefficient for the given parameter.
|
double |
getL2ByParam(String paramName)
Get the L2 coefficient for the given parameter.
|
LayerMemoryReport |
getMemoryReport(InputType inputType)
This is a report of the estimated memory consumption for the given layer
|
InputType |
getOutputType(int layerIndex,
InputType inputType)
For a given type of input to this layer, what is the type of the output?
|
InputPreProcessor |
getPreProcessorForInputType(InputType inputType)
For the given type of input to this layer, what preprocessor (if any) is required?
Returns null if no preprocessor is required, otherwise returns an appropriate InputPreProcessor
for this layer, such as a CnnToFeedForwardPreProcessor |
ParamInitializer |
initializer() |
Layer |
instantiate(NeuralNetConfiguration conf,
Collection<TrainingListener> trainingListeners,
int layerIndex,
INDArray layerParamsView,
boolean initializeParams) |
boolean |
isPretrainParam(String paramName)
Is the specified parameter a layerwise pretraining only parameter?
For example, visible bias params in an autoencoder (or, decoder params in a variational autoencoder) aren't used during supervised backprop. Layers (like DenseLayer, etc) with no pretrainable parameters will return false for all (valid) inputs. |
void |
setNIn(InputType inputType,
boolean override)
Set the nIn value (number of inputs, or input channels for CNNs) based on the given input type
|
getGradientNormalization, getGradientNormalizationThreshold, isPretrain
getUpdaterByParam, initializeConstraints, resetLayerDefaultConfig, setPretrain
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
getLayerName
protected int blockSize
protected SpaceToDepthLayer.DataFormat dataFormat
protected SpaceToDepthLayer(SpaceToDepthLayer.Builder builder)
public SpaceToDepthLayer clone()
public Layer instantiate(NeuralNetConfiguration conf, Collection<TrainingListener> trainingListeners, int layerIndex, INDArray layerParamsView, boolean initializeParams)
instantiate
in class Layer
public LayerMemoryReport getMemoryReport(InputType inputType)
Layer
getMemoryReport
in class Layer
inputType
- Input type to the layer. Memory consumption is often a function of the input typepublic InputType getOutputType(int layerIndex, InputType inputType)
Layer
getOutputType
in class Layer
layerIndex
- Index of the layerinputType
- Type of input for the layerpublic ParamInitializer initializer()
initializer
in class NoParamLayer
public void setNIn(InputType inputType, boolean override)
Layer
setNIn
in class NoParamLayer
inputType
- Input type for this layeroverride
- If false: only set the nIn value if it's not already set. If true: set it regardless of whether it's
already set or not.public InputPreProcessor getPreProcessorForInputType(InputType inputType)
Layer
InputPreProcessor
for this layer, such as a CnnToFeedForwardPreProcessor
getPreProcessorForInputType
in class Layer
inputType
- InputType to this layerpublic double getL1ByParam(String paramName)
Layer
getL1ByParam
in interface TrainingConfig
getL1ByParam
in class NoParamLayer
paramName
- Parameter namepublic double getL2ByParam(String paramName)
Layer
getL2ByParam
in interface TrainingConfig
getL2ByParam
in class NoParamLayer
paramName
- Parameter namepublic boolean isPretrainParam(String paramName)
Layer
isPretrainParam
in interface TrainingConfig
isPretrainParam
in class NoParamLayer
paramName
- Parameter name/keyCopyright © 2018. All rights reserved.