只是你的常规densely-connected NN 层。
用法
tf.keras.layers.Dense(
units, 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
)参数
-
units正整数,输出空间的维度。 -
activation要使用的激活函数。如果您未指定任何内容,则不会应用任何激活(即 "linear" 激活:a(x) = x)。 -
use_bias布尔值,层是否使用偏置向量。 -
kernel_initializerkernel权重矩阵的初始化程序。 -
bias_initializer偏置向量的初始化器。 -
kernel_regularizer应用于kernel权重矩阵的正则化函数。 -
bias_regularizer应用于偏置向量的正则化函数。 -
activity_regularizer应用于层输出的正则化函数("activation")。 -
kernel_constraint应用于kernel权重矩阵的约束函数。 -
bias_constraint应用于偏置向量的约束函数。
Dense 实现操作:output = activation(dot(input, kernel) + bias) 其中activation 是作为activation 参数传递的逐元素激活函数,kernel 是层创建的权重矩阵,bias 是创建的偏置向量按层(仅当 use_bias 为 True 时适用)。这些都是 Dense 的所有属性。
注意:如果层的输入的秩大于 2,则 Dense 沿 inputs 的最后一个轴和 kernel 的轴 0 计算 inputs 和 kernel 之间的点积(使用tf.tensordot)。例如,如果输入的维度为 (batch_size, d0, d1) ,那么我们创建一个形状为 (d1, units) 的 kernel ,并且 kernel 沿 input 的轴 2 运行,在每个形状为 (1, 1, d1) 的 sub-tensor 上(有batch_size * d0 这样的sub-tensors)。在这种情况下,输出将具有形状 (batch_size, d0, units) 。
此外,图层调用一次后,图层属性不能修改(trainable属性除外)。当传递一个流行的 kwarg input_shape 时,keras 将创建一个输入层以插入到当前层之前。这可以等同于显式定义 InputLayer 。
例子:
# Create a `Sequential` model and add a Dense layer as the first layer.
model = tf.keras.models.Sequential()
model.add(tf.keras.Input(shape=(16,)))
model.add(tf.keras.layers.Dense(32, activation='relu'))
# Now the model will take as input arrays of shape (None, 16)
# and output arrays of shape (None, 32).
# Note that after the first layer, you don't need to specify
# the size of the input anymore:
model.add(tf.keras.layers.Dense(32))
model.output_shape
(None, 32)
输入形状:
N-D 具有形状的张量:(batch_size, ..., input_dim)。最常见的情况是形状为 (batch_size, input_dim) 的 2D 输入。
输出形状:
N-D 具有形状的张量:(batch_size, ..., units)。例如,对于形状为 (batch_size, input_dim) 的 2D 输入,输出的形状为 (batch_size, units) 。
相关用法
- Python tf.keras.layers.DenseFeatures用法及代码示例
- Python tf.keras.layers.Dropout用法及代码示例
- Python tf.keras.layers.Dot用法及代码示例
- Python tf.keras.layers.Discretization用法及代码示例
- Python tf.keras.layers.InputLayer用法及代码示例
- Python tf.keras.layers.serialize用法及代码示例
- Python tf.keras.layers.maximum用法及代码示例
- Python tf.keras.layers.LayerNormalization用法及代码示例
- Python tf.keras.layers.Conv2D用法及代码示例
- Python tf.keras.layers.RepeatVector用法及代码示例
- Python tf.keras.layers.Multiply用法及代码示例
- Python tf.keras.layers.Activation用法及代码示例
- Python tf.keras.layers.Conv1D用法及代码示例
- Python tf.keras.layers.experimental.preprocessing.PreprocessingLayer.adapt用法及代码示例
- Python tf.keras.layers.CategoryEncoding用法及代码示例
- Python tf.keras.layers.subtract用法及代码示例
- Python tf.keras.layers.experimental.preprocessing.HashedCrossing用法及代码示例
- Python tf.keras.layers.Subtract用法及代码示例
- Python tf.keras.layers.ZeroPadding3D用法及代码示例
- Python tf.keras.layers.MaxPool3D用法及代码示例
注:本文由纯净天空筛选整理自tensorflow.org大神的英文原创作品 tf.keras.layers.Dense。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。
