卷积神经网络 {Keras 由浅入深}

卷积神经网络

|
![tensorflow ](https://img-blog.csdnimg.cn/20190825125400589.png#==#pic_center =40x)TensorFlow|

![keras](https://img-blog.csdnimg.cn/20190804140154168.png#==#pic_center =40x)Keras

python & mathematics


卷积神经网络能够有效的处理图像文件,当然换一种说法就是能够有效处理矩阵。
其关键部分就是卷积核(过滤器)的生成。
当然还有一些其他的基础操作。

对于卷积核
卷积核的特征:

__init__(
    filters,
    kernel_size,
    strides=(1, 1),
    padding='valid',
    data_format='channels_last',
    dilation_rate=(1, 1),
    activation=None,
    use_bias=True,
    kernel_initializer=None,
    bias_initializer=tf.zeros_initializer(),
    kernel_regularizer=None,
    bias_regularizer=None,
    activity_regularizer=None,
    kernel_constraint=None,
    bias_constraint=None,
    trainable=True,
    name=None,
    **kwargs
)
  • filters :kernel的数量(维度)
  • kernel:过滤器的大小
  • strides:步长
  • padding:填充

详见:https://tensorflow.google.cn/api_docs/python/tf/layers/Conv2D?hl=zh_cn

# Official Example
model = models.Sequential()
model.add(layers.Conv2D(32, (3, 3), activation='relu', input_shape=(28, 28, 1)))
model.add(layers.MaxPooling2D((2, 2)))
model.add(layers.Conv2D(64, (3, 3), activation='relu'))
model.add(layers.MaxPooling2D((2, 2)))
model.add(layers.Conv2D(64, (3, 3), activation='relu'))

猜你喜欢

转载自www.cnblogs.com/wykxldz/p/13192491.html