tf.keras.layers.Conv1D
Stay organized with collections
Save and categorize content based on your preferences.
1D convolution layer (e.g. temporal convolution).
tf.keras.layers.Conv1D(
filters, kernel_size, strides=1, padding='valid', data_format='channels_last',
dilation_rate=1, activation=None, use_bias=True,
kernel_initializer='glorot_uniform', bias_initializer='zeros',
kernel_regularizer=None, bias_regularizer=None, activity_regularizer=None,
kernel_constraint=None, bias_constraint=None, **kwargs
)
This layer creates a convolution kernel that is convolved
with the layer input over a single spatial (or temporal) dimension
to produce a tensor of outputs.
If use_bias
is True, a bias vector is created and added to the outputs.
Finally, if activation
is not None
,
it is applied to the outputs as well.
When using this layer as the first layer in a model,
provide an input_shape
argument
(tuple of integers or None
, e.g.
(10, 128)
for sequences of 10 vectors of 128-dimensional vectors,
or (None, 128)
for variable-length sequences of 128-dimensional vectors.
Arguments |
filters
|
Integer, the dimensionality of the output space
(i.e. the number of output filters in the convolution).
|
kernel_size
|
An integer or tuple/list of a single integer,
specifying the length of the 1D convolution window.
|
strides
|
An integer or tuple/list of a single integer,
specifying the stride length of the convolution.
Specifying any stride value != 1 is incompatible with specifying
any dilation_rate value != 1.
|
padding
|
One of "valid" , "causal" or "same" (case-insensitive).
"causal" results in causal (dilated) convolutions, e.g. output[t]
does not depend on input[t+1:]. Useful when modeling temporal data
where the model should not violate the temporal order.
See WaveNet: A Generative Model for Raw Audio, section
2.1.
|
data_format
|
A string,
one of channels_last (default) or channels_first .
|
dilation_rate
|
an integer or tuple/list of a single integer, specifying
the dilation rate to use for dilated convolution.
Currently, specifying any dilation_rate value != 1 is
incompatible with specifying any strides value != 1.
|
activation
|
Activation function to use.
If you don't specify anything, no activation is applied
(ie. "linear" activation: a(x) = x ).
|
use_bias
|
Boolean, whether the layer uses a bias vector.
|
kernel_initializer
|
Initializer for the kernel weights matrix.
|
bias_initializer
|
Initializer for the bias vector.
|
kernel_regularizer
|
Regularizer function applied to
the kernel weights matrix.
|
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.
|
Examples:
# Small convolutional model for 128-length vectors with 6 timesteps
# model.input_shape == (None, 6, 128)
model = Sequential()
model.add(Conv1D(32, 3,
activation='relu',
input_shape=(6, 128)))
# now: model.output_shape == (None, 4, 32)
3D tensor with shape: (batch_size, steps, input_dim)
Output shape:
3D tensor with shape: (batch_size, new_steps, filters)
steps
value might have changed due to padding or strides.
Except as otherwise noted, the content of this page is licensed under the Creative Commons Attribution 4.0 License, and code samples are licensed under the Apache 2.0 License. For details, see the Google Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates.
Last updated 2020-10-01 UTC.
[null,null,["Last updated 2020-10-01 UTC."],[],[],null,["# tf.keras.layers.Conv1D\n\n\u003cbr /\u003e\n\n|-----------------------------------------------------------------|------------------------------------------------------------------------------------------------------------------------------------------|\n| [TensorFlow 2 version](/api_docs/python/tf/keras/layers/Conv1D) | [View source on GitHub](https://github.com/tensorflow/tensorflow/blob/v1.15.0/tensorflow/python/keras/layers/convolutional.py#L276-L387) |\n\n1D convolution layer (e.g. temporal convolution).\n\n#### View aliases\n\n\n**Main aliases**\n\n[`tf.keras.layers.Convolution1D`](/api_docs/python/tf/keras/layers/Conv1D)\n**Compat aliases for migration**\n\nSee\n[Migration guide](https://www.tensorflow.org/guide/migrate) for\nmore details.\n\n[`tf.compat.v1.keras.layers.Conv1D`](/api_docs/python/tf/keras/layers/Conv1D), [`tf.compat.v1.keras.layers.Convolution1D`](/api_docs/python/tf/keras/layers/Conv1D), \\`tf.compat.v2.keras.layers.Conv1D\\`, \\`tf.compat.v2.keras.layers.Convolution1D\\`\n\n\u003cbr /\u003e\n\n tf.keras.layers.Conv1D(\n filters, kernel_size, strides=1, padding='valid', data_format='channels_last',\n dilation_rate=1, activation=None, use_bias=True,\n kernel_initializer='glorot_uniform', bias_initializer='zeros',\n kernel_regularizer=None, bias_regularizer=None, activity_regularizer=None,\n kernel_constraint=None, bias_constraint=None, **kwargs\n )\n\nThis layer creates a convolution kernel that is convolved\nwith the layer input over a single spatial (or temporal) dimension\nto produce a tensor of outputs.\nIf `use_bias` is True, a bias vector is created and added to the outputs.\nFinally, if `activation` is not `None`,\nit is applied to the outputs as well.\n\nWhen using this layer as the first layer in a model,\nprovide an `input_shape` argument\n(tuple of integers or `None`, e.g.\n`(10, 128)` for sequences of 10 vectors of 128-dimensional vectors,\nor `(None, 128)` for variable-length sequences of 128-dimensional vectors.\n\n\u003cbr /\u003e\n\n\u003cbr /\u003e\n\n\u003cbr /\u003e\n\n| Arguments --------- ||\n|------------------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| `filters` | Integer, the dimensionality of the output space (i.e. the number of output filters in the convolution). |\n| `kernel_size` | An integer or tuple/list of a single integer, specifying the length of the 1D convolution window. |\n| `strides` | An integer or tuple/list of a single integer, specifying the stride length of the convolution. Specifying any stride value != 1 is incompatible with specifying any `dilation_rate` value != 1. |\n| `padding` | One of `\"valid\"`, `\"causal\"` or `\"same\"` (case-insensitive). `\"causal\"` results in causal (dilated) convolutions, e.g. output\\[t\\] does not depend on input\\[t+1:\\]. Useful when modeling temporal data where the model should not violate the temporal order. See [WaveNet: A Generative Model for Raw Audio, section 2.1](https://arxiv.org/abs/1609.03499). |\n| `data_format` | A string, one of `channels_last` (default) or `channels_first`. |\n| `dilation_rate` | an integer or tuple/list of a single integer, specifying the dilation rate to use for dilated convolution. Currently, specifying any `dilation_rate` value != 1 is incompatible with specifying any `strides` value != 1. |\n| `activation` | Activation function to use. If you don't specify anything, no activation is applied (ie. \"linear\" activation: `a(x) = x`). |\n| `use_bias` | Boolean, whether the layer uses a bias vector. |\n| `kernel_initializer` | Initializer for the `kernel` weights matrix. |\n| `bias_initializer` | Initializer for the bias vector. |\n| `kernel_regularizer` | Regularizer function applied to the `kernel` weights matrix. |\n| `bias_regularizer` | Regularizer function applied to the bias vector. |\n| `activity_regularizer` | Regularizer function applied to the output of the layer (its \"activation\").. |\n| `kernel_constraint` | Constraint function applied to the kernel matrix. |\n| `bias_constraint` | Constraint function applied to the bias vector. |\n\n\u003cbr /\u003e\n\n#### Examples:\n\n # Small convolutional model for 128-length vectors with 6 timesteps\n # model.input_shape == (None, 6, 128)\n\n model = Sequential()\n model.add(Conv1D(32, 3, \n activation='relu', \n input_shape=(6, 128)))\n\n # now: model.output_shape == (None, 4, 32)\n\n#### Input shape:\n\n3D tensor with shape: `(batch_size, steps, input_dim)`\n\n#### Output shape:\n\n3D tensor with shape: `(batch_size, new_steps, filters)`\n`steps` value might have changed due to padding or strides."]]