深度学习笔记(2)

55 阅读2分钟

利用keras.layers.Dense()函数处理的方式属于DNN的方式,Deep neural network 又名Fully connected (FC) layers,densely connected layers,multilayer perceptron (MLP)

CNN为卷积神经网络,它能够提取图像的关键信息,相比于DNN,它的权值共享结构降低了网络模型的复杂度,减少了权值的数量。CNN对平移、缩放、倾斜等变形具有一定的不变性。采样不会改变实体。

Conv2D 函数的主要参数包括:

  1. filters:整数,表示卷积核(滤波器)的数量,也是该层输出的通道数。
  2. kernel_size:整数或元组,指定卷积核的大小,通常为 (3, 3) 或 (5, 5)。
  3. strides:整数或元组,表示卷积核在输入上的移动步幅。
  4. padding:字符串,可以是 “valid”(不使用零填充)或 “same”(使用零填充)。
  5. activation:指定该层的激活函数,如 “relu”、“sigmoid” 等。
  6. input_shape:输入数据的形状,通常在模型的第一层中使用。
  7. data_format:字符串,可以是 “channels_last”(通道在最后)或 “channels_first”(通道在前)。

MaxPooling2D 函数的主要参数包括:

  1. pool_size:整数或元组,指定池化窗口的大小,通常为 (2, 2)。
  2. strides:整数或元组,表示池化窗口的移动步幅。
  3. padding:字符串,可以是 “valid”(不使用零填充)或 “same”(使用零填充)。
  4. data_format:字符串,可以是 “channels_last”(通道在最后)或 “channels_first”(通道在前)。

Dense 函数的主要参数包括:

  1. units:整数,表示该层的输出维度,也就是该层的神经元数量。
  2. activation:指定该层的激活函数,常用的包括 relu、sigmoid、softmax 等。
  3. use_bias:布尔值,决定是否在该层中使用偏差项。
  4. kernel_initializer:用于初始化权重的方法,常见的有 glorot_uniform 和 he_normal。
  5. bias_initializer:用于初始化偏差项的方法。
  6. kernel_regularizer:权重正则化方法,用于防止过拟合。

数据增强

  • 可以通过旋转、平移、缩放来改变原图像的样貌,从而形成更多的数据,让训练集更加丰富,这种行为被称为数据增强。
  • 数据增强可以减小过拟合的情况,得到我们所需泛化的效果。