layer_locally_connected_2d {keras} | R Documentation |
Locally-connected layer for 2D inputs.
Description
layer_locally_connected_2d
works similarly to layer_conv_2d()
, except
that weights are unshared, that is, a different set of filters is applied at
each different patch of the input.
Usage
layer_locally_connected_2d(
object,
filters,
kernel_size,
strides = c(1L, 1L),
padding = "valid",
data_format = NULL,
activation = NULL,
use_bias = TRUE,
kernel_initializer = "glorot_uniform",
bias_initializer = "zeros",
kernel_regularizer = NULL,
bias_regularizer = NULL,
activity_regularizer = NULL,
kernel_constraint = NULL,
bias_constraint = NULL,
implementation = 1L,
batch_size = NULL,
name = NULL,
trainable = NULL,
weights = NULL
)
Arguments
object |
What to compose the new
|
filters |
Integer, the dimensionality of the output space (i.e. the number output of filters in the convolution). |
kernel_size |
An integer or list of 2 integers, specifying the width and height of the 2D convolution window. Can be a single integer to specify the same value for all spatial dimensions. |
strides |
An integer or list of 2 integers, specifying the strides of
the convolution along the width and height. Can be a single integer to
specify the same value for all spatial dimensions. Specifying any stride
value != 1 is incompatible with specifying any |
padding |
Currently only supports |
data_format |
A string, one of |
activation |
Activation function to use. If you don't specify anything,
no activation is applied (ie. "linear" activation: |
use_bias |
Boolean, whether the layer uses a bias vector. |
kernel_initializer |
Initializer for the |
bias_initializer |
Initializer for the bias vector. |
kernel_regularizer |
Regularizer function applied to the |
bias_regularizer |
Regularizer function applied to the bias vector. |
activity_regularizer |
Regularizer function applied to the output of the layer (its "activation").. |
kernel_constraint |
Constraint function applied to the kernel matrix. |
bias_constraint |
Constraint function applied to the bias vector. |
implementation |
either 1, 2, or 3. 1 loops over input spatial locations
to perform the forward pass. It is memory-efficient but performs a lot of
(small) ops. 2 stores layer weights in a dense but sparsely-populated 2D
matrix and implements the forward pass as a single matrix-multiply. It uses
a lot of RAM but performs few (large) ops. 3 stores layer weights in a
sparse tensor and implements the forward pass as a single sparse
matrix-multiply. How to choose: 1: large, dense models, 2: small models, 3:
large, sparse models, where "large" stands for large input/output
activations (i.e. many |
batch_size |
Fixed batch size for layer |
name |
An optional name string for the layer. Should be unique in a model (do not reuse the same name twice). It will be autogenerated if it isn't provided. |
trainable |
Whether the layer weights will be updated during training. |
weights |
Initial weights for layer. |
Input shape
4D tensor with shape: (samples, channels, rows, cols)
if data_format='channels_first' or 4D tensor with shape: (samples, rows, cols, channels)
if data_format='channels_last'.
Output shape
4D tensor with shape: (samples, filters, new_rows, new_cols)
if data_format='channels_first' or 4D tensor with shape:
(samples, new_rows, new_cols, filters)
if data_format='channels_last'.
rows
and cols
values might have changed due to padding.
See Also
Other locally connected layers:
layer_locally_connected_1d()