Home | History | Annotate | Download | only in layers
      1 # Copyright 2016 The TensorFlow Authors. All Rights Reserved.
      2 #
      3 # Licensed under the Apache License, Version 2.0 (the "License");
      4 # you may not use this file except in compliance with the License.
      5 # You may obtain a copy of the License at
      6 #
      7 #     http://www.apache.org/licenses/LICENSE-2.0
      8 #
      9 # Unless required by applicable law or agreed to in writing, software
     10 # distributed under the License is distributed on an "AS IS" BASIS,
     11 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
     12 # See the License for the specific language governing permissions and
     13 # limitations under the License.
     14 # ==============================================================================
     15 """Keras layers API."""
     16 
     17 from __future__ import absolute_import
     18 from __future__ import division
     19 from __future__ import print_function
     20 
     21 # Generic layers.
     22 # pylint: disable=g-bad-import-order
     23 from tensorflow.python.keras.engine.input_layer import Input
     24 from tensorflow.python.keras.engine.input_layer import InputLayer
     25 from tensorflow.python.keras.engine.input_spec import InputSpec
     26 from tensorflow.python.keras.engine.base_layer import Layer
     27 
     28 # Advanced activations.
     29 from tensorflow.python.keras.layers.advanced_activations import LeakyReLU
     30 from tensorflow.python.keras.layers.advanced_activations import PReLU
     31 from tensorflow.python.keras.layers.advanced_activations import ELU
     32 from tensorflow.python.keras.layers.advanced_activations import ReLU
     33 from tensorflow.python.keras.layers.advanced_activations import ThresholdedReLU
     34 from tensorflow.python.keras.layers.advanced_activations import Softmax
     35 
     36 # Convolution layers.
     37 from tensorflow.python.keras.layers.convolutional import Conv1D
     38 from tensorflow.python.keras.layers.convolutional import Conv2D
     39 from tensorflow.python.keras.layers.convolutional import Conv3D
     40 from tensorflow.python.keras.layers.convolutional import Conv2DTranspose
     41 from tensorflow.python.keras.layers.convolutional import Conv3DTranspose
     42 from tensorflow.python.keras.layers.convolutional import SeparableConv1D
     43 from tensorflow.python.keras.layers.convolutional import SeparableConv2D
     44 
     45 # Convolution layer aliases.
     46 from tensorflow.python.keras.layers.convolutional import Convolution1D
     47 from tensorflow.python.keras.layers.convolutional import Convolution2D
     48 from tensorflow.python.keras.layers.convolutional import Convolution3D
     49 from tensorflow.python.keras.layers.convolutional import Convolution2DTranspose
     50 from tensorflow.python.keras.layers.convolutional import Convolution3DTranspose
     51 from tensorflow.python.keras.layers.convolutional import SeparableConvolution1D
     52 from tensorflow.python.keras.layers.convolutional import SeparableConvolution2D
     53 from tensorflow.python.keras.layers.convolutional import DepthwiseConv2D
     54 
     55 # Image processing layers.
     56 from tensorflow.python.keras.layers.convolutional import UpSampling1D
     57 from tensorflow.python.keras.layers.convolutional import UpSampling2D
     58 from tensorflow.python.keras.layers.convolutional import UpSampling3D
     59 from tensorflow.python.keras.layers.convolutional import ZeroPadding1D
     60 from tensorflow.python.keras.layers.convolutional import ZeroPadding2D
     61 from tensorflow.python.keras.layers.convolutional import ZeroPadding3D
     62 from tensorflow.python.keras.layers.convolutional import Cropping1D
     63 from tensorflow.python.keras.layers.convolutional import Cropping2D
     64 from tensorflow.python.keras.layers.convolutional import Cropping3D
     65 
     66 # Core layers.
     67 from tensorflow.python.keras.layers.core import Masking
     68 from tensorflow.python.keras.layers.core import Dropout
     69 from tensorflow.python.keras.layers.core import SpatialDropout1D
     70 from tensorflow.python.keras.layers.core import SpatialDropout2D
     71 from tensorflow.python.keras.layers.core import SpatialDropout3D
     72 from tensorflow.python.keras.layers.core import Activation
     73 from tensorflow.python.keras.layers.core import Reshape
     74 from tensorflow.python.keras.layers.core import Permute
     75 from tensorflow.python.keras.layers.core import Flatten
     76 from tensorflow.python.keras.layers.core import RepeatVector
     77 from tensorflow.python.keras.layers.core import Lambda
     78 from tensorflow.python.keras.layers.core import Dense
     79 from tensorflow.python.keras.layers.core import ActivityRegularization
     80 
     81 # Embedding layers.
     82 from tensorflow.python.keras.layers.embeddings import Embedding
     83 
     84 # Locally-connected layers.
     85 from tensorflow.python.keras.layers.local import LocallyConnected1D
     86 from tensorflow.python.keras.layers.local import LocallyConnected2D
     87 
     88 # Merge layers.
     89 from tensorflow.python.keras.layers.merge import Add
     90 from tensorflow.python.keras.layers.merge import Subtract
     91 from tensorflow.python.keras.layers.merge import Multiply
     92 from tensorflow.python.keras.layers.merge import Average
     93 from tensorflow.python.keras.layers.merge import Maximum
     94 from tensorflow.python.keras.layers.merge import Minimum
     95 from tensorflow.python.keras.layers.merge import Concatenate
     96 from tensorflow.python.keras.layers.merge import Dot
     97 from tensorflow.python.keras.layers.merge import add
     98 from tensorflow.python.keras.layers.merge import subtract
     99 from tensorflow.python.keras.layers.merge import multiply
    100 from tensorflow.python.keras.layers.merge import average
    101 from tensorflow.python.keras.layers.merge import maximum
    102 from tensorflow.python.keras.layers.merge import minimum
    103 from tensorflow.python.keras.layers.merge import concatenate
    104 from tensorflow.python.keras.layers.merge import dot
    105 
    106 # Noise layers.
    107 from tensorflow.python.keras.layers.noise import AlphaDropout
    108 from tensorflow.python.keras.layers.noise import GaussianNoise
    109 from tensorflow.python.keras.layers.noise import GaussianDropout
    110 
    111 # Normalization layers.
    112 from tensorflow.python.keras.layers.normalization import LayerNormalization
    113 from tensorflow.python.keras.layers.normalization import BatchNormalization
    114 from tensorflow.python.keras.layers.normalization_v2 import BatchNormalization as BatchNormalizationV2
    115 
    116 # Kernelized layers.
    117 from tensorflow.python.keras.layers.kernelized import RandomFourierFeatures
    118 
    119 # Pooling layers.
    120 from tensorflow.python.keras.layers.pooling import MaxPooling1D
    121 from tensorflow.python.keras.layers.pooling import MaxPooling2D
    122 from tensorflow.python.keras.layers.pooling import MaxPooling3D
    123 from tensorflow.python.keras.layers.pooling import AveragePooling1D
    124 from tensorflow.python.keras.layers.pooling import AveragePooling2D
    125 from tensorflow.python.keras.layers.pooling import AveragePooling3D
    126 from tensorflow.python.keras.layers.pooling import GlobalAveragePooling1D
    127 from tensorflow.python.keras.layers.pooling import GlobalAveragePooling2D
    128 from tensorflow.python.keras.layers.pooling import GlobalAveragePooling3D
    129 from tensorflow.python.keras.layers.pooling import GlobalMaxPooling1D
    130 from tensorflow.python.keras.layers.pooling import GlobalMaxPooling2D
    131 from tensorflow.python.keras.layers.pooling import GlobalMaxPooling3D
    132 
    133 # Pooling layer aliases.
    134 from tensorflow.python.keras.layers.pooling import MaxPool1D
    135 from tensorflow.python.keras.layers.pooling import MaxPool2D
    136 from tensorflow.python.keras.layers.pooling import MaxPool3D
    137 from tensorflow.python.keras.layers.pooling import AvgPool1D
    138 from tensorflow.python.keras.layers.pooling import AvgPool2D
    139 from tensorflow.python.keras.layers.pooling import AvgPool3D
    140 from tensorflow.python.keras.layers.pooling import GlobalAvgPool1D
    141 from tensorflow.python.keras.layers.pooling import GlobalAvgPool2D
    142 from tensorflow.python.keras.layers.pooling import GlobalAvgPool3D
    143 from tensorflow.python.keras.layers.pooling import GlobalMaxPool1D
    144 from tensorflow.python.keras.layers.pooling import GlobalMaxPool2D
    145 from tensorflow.python.keras.layers.pooling import GlobalMaxPool3D
    146 
    147 # Recurrent layers.
    148 from tensorflow.python.keras.layers.recurrent import RNN
    149 from tensorflow.python.keras.layers.recurrent import AbstractRNNCell
    150 from tensorflow.python.keras.layers.recurrent import StackedRNNCells
    151 from tensorflow.python.keras.layers.recurrent import SimpleRNNCell
    152 from tensorflow.python.keras.layers.recurrent import GRUCell
    153 from tensorflow.python.keras.layers.recurrent import LSTMCell
    154 from tensorflow.python.keras.layers.recurrent import PeepholeLSTMCell
    155 from tensorflow.python.keras.layers.recurrent import SimpleRNN
    156 
    157 from tensorflow.python.keras.layers.recurrent import GRU
    158 from tensorflow.python.keras.layers.recurrent import LSTM
    159 from tensorflow.python.keras.layers.recurrent_v2 import GRU as GRU_v2
    160 from tensorflow.python.keras.layers.recurrent_v2 import LSTM as LSTM_v2
    161 
    162 # Convolutional-recurrent layers.
    163 from tensorflow.python.keras.layers.convolutional_recurrent import ConvLSTM2D
    164 
    165 # CuDNN recurrent layers.
    166 from tensorflow.python.keras.layers.cudnn_recurrent import CuDNNLSTM
    167 from tensorflow.python.keras.layers.cudnn_recurrent import CuDNNGRU
    168 
    169 # Wrapper functions
    170 from tensorflow.python.keras.layers.wrappers import Wrapper
    171 from tensorflow.python.keras.layers.wrappers import Bidirectional
    172 from tensorflow.python.keras.layers.wrappers import TimeDistributed
    173 
    174 # Serialization functions
    175 from tensorflow.python.keras.layers.serialization import deserialize
    176 from tensorflow.python.keras.layers.serialization import serialize
    177 
    178 del absolute_import
    179 del division
    180 del print_function
    181