Dense 层是 TensorFlow Keras 中最常用的全连接层,用于执行线性变换并添加可选的激活函数。它广泛应用于神经网络的隐藏层和输出层。

核心功能

  • 线性变换:通过权重矩阵和偏置项对输入进行乘法和加法操作
  • 激活函数:支持自定义激活函数(如 relusigmoidtanh 等)
  • 参数控制:通过 units 指定输出维度,use_bias 控制是否使用偏置项

参数说明

参数 类型 说明
units int 输出特征的数量(即层的维度)
activation str 或 Callable 激活函数,若为 None 则使用线性激活
use_bias bool 是否添加偏置项(默认为 True
kernel_initializer str 或 Initializer 权重矩阵的初始化方法
bias_initializer str 或 Initializer 偏置项的初始化方法
kernel_regularizer Regularizer 权重的正则化方法
bias_regularizer Regularizer 偏置项的正则化方法

代码示例

import tensorflow as tf
model = tf.keras.Sequential([
    tf.keras.layers.Dense(64, activation='relu', input_shape=(32,)),
    tf.keras.layers.Dense(10)
])
Dense_Layer_Structure

扩展阅读

注意事项

  • Dense 层默认使用 linear 激活函数,需显式指定 activation 参数以启用非线性变换
  • 在卷积层后通常需要使用 Flatten 层将输入转换为一维向量再输入 Dense 层
  • 可通过 input_shape 参数定义输入维度,或使用 input_dim 简化配置
Neural_Network_Connection