Depthwise 1D convolution

```
layer_depthwise_conv_1d(
object,
kernel_size,
strides = 1L,
padding = "valid",
depth_multiplier = 1L,
data_format = NULL,
dilation_rate = 1L,
activation = NULL,
use_bias = TRUE,
depthwise_initializer = "glorot_uniform",
bias_initializer = "zeros",
depthwise_regularizer = NULL,
bias_regularizer = NULL,
activity_regularizer = NULL,
depthwise_constraint = NULL,
bias_constraint = NULL,
...
)
```

- object
What to compose the new

`Layer`

instance with. Typically a Sequential model or a Tensor (e.g., as returned by`layer_input()`

). The return value depends on`object`

. If`object`

is:missing or

`NULL`

, the`Layer`

instance is returned.a

`Sequential`

model, the model with an additional layer is returned.a Tensor, the output tensor from

`layer_instance(object)`

is returned.

- kernel_size
An integer, specifying the height and width of the 1D convolution window. Can be a single integer to specify the same value for all spatial dimensions.

- strides
An integer, specifying the strides of the convolution along the height and width. Can be a single integer to specify the same value for all spatial dimensions. Specifying any stride value != 1 is incompatible with specifying any

`dilation_rate`

value != 1.- padding
one of

`'valid'`

or`'same'`

(case-insensitive).`"valid"`

means no padding.`"same"`

results in padding with zeros evenly to the left/right or up/down of the input such that output has the same height/width dimension as the input.- depth_multiplier
The number of depthwise convolution output channels for each input channel. The total number of depthwise convolution output channels will be equal to

`filters_in * depth_multiplier`

.- data_format
A string, one of

`"channels_last"`

(default) or`"channels_first"`

. The ordering of the dimensions in the inputs.`channels_last`

corresponds to inputs with shape`(batch_size, height, width, channels)`

while`channels_first`

corresponds to inputs with shape`(batch_size, channels, height, width)`

. It defaults to the`image_data_format`

value found in your Keras config file at`~/.keras/keras.json`

. If you never set it, then it will be 'channels_last'.- dilation_rate
A single integer, specifying the dilation rate to use for dilated convolution. Currently, specifying any

`dilation_rate`

value != 1 is incompatible with specifying any stride value != 1.- activation
Activation function to use. If you don't specify anything, no activation is applied (see

`?activation_relu`

).- use_bias
Boolean, whether the layer uses a bias vector.

- depthwise_initializer
Initializer for the depthwise kernel matrix (see

`initializer_glorot_uniform`

). If NULL, the default initializer (`"glorot_uniform"`

) will be used.- bias_initializer
Initializer for the bias vector (see

`keras.initializers`

). If NULL, the default initializer ('zeros') will be used.- depthwise_regularizer
Regularizer function applied to the depthwise kernel matrix (see

`regularizer_l1()`

).- bias_regularizer
Regularizer function applied to the bias vector (see

`regularizer_l1()`

).- activity_regularizer
Regularizer function applied to the output of the layer (its 'activation') (see

`regularizer_l1()`

).- depthwise_constraint
Constraint function applied to the depthwise kernel matrix (see

`constraint_maxnorm()`

).- bias_constraint
Constraint function applied to the bias vector (see

`constraint_maxnorm()`

).- ...
standard layer arguments.

Depthwise convolution is a type of convolution in which each input channel is convolved with a different kernel (called a depthwise kernel). You can understand depthwise convolution as the first step in a depthwise separable convolution.

It is implemented via the following steps:

Split the input into individual channels.

Convolve each channel with an individual depthwise kernel with

`depth_multiplier`

output channels.Concatenate the convolved outputs along the channels axis.

Unlike a regular 1D convolution, depthwise convolution does not mix information across different input channels.

The `depth_multiplier`

argument determines how many filter are applied to one
input channel. As such, it controls the amount of output channels that are
generated per input channel in the depthwise step.

Other convolutional layers:
`layer_conv_1d_transpose()`

,
`layer_conv_1d()`

,
`layer_conv_2d_transpose()`

,
`layer_conv_2d()`

,
`layer_conv_3d_transpose()`

,
`layer_conv_3d()`

,
`layer_conv_lstm_2d()`

,
`layer_cropping_1d()`

,
`layer_cropping_2d()`

,
`layer_cropping_3d()`

,
`layer_depthwise_conv_2d()`

,
`layer_separable_conv_1d()`

,
`layer_separable_conv_2d()`

,
`layer_upsampling_1d()`

,
`layer_upsampling_2d()`

,
`layer_upsampling_3d()`

,
`layer_zero_padding_1d()`

,
`layer_zero_padding_2d()`

,
`layer_zero_padding_3d()`