阅读 166

卷积神经网络

目录

  • 2D Convolution

  • Kernel size

  • Padding & Stride

  • Channels

  • For instance

  • LeNet-5

  • Pyramid Architecture

  • layers.Conv2D

  • weight & bias

  • nn.conv2d

  • Gradient?

    • For instance


2D Convolution

35-卷积神经网络-2d卷积.jpg

Kernel size

35-卷积神经网络-卷积静态.jpg

  • 矩阵卷积

35-卷积神经网络-卷积动态图.gif

Padding & Stride

35-卷积神经网络-卷积padding.gif

  • 步长2

35-卷积神经网络-卷积步长2.jpg

Channels

35-卷积神经网络-通道.jpg

For instance

  • x: [b,28,28,3]

  • one k: [3,3,3]

  • multi-k: [16,3,3,3]

  • stride: 1

  • padding: [1,1,1,1]

  • bias: [16]

  • out: [b,28,28,16]

35-卷积神经网络-卷积张量动态.gif

LeNet-5

35-卷积神经网络-最早的神经网络.jpg

Pyramid Architecture

  • 从底层的边缘颜色到高层抽象的概念(轮子、车窗)

35-卷积神经网络-金字塔结构.jpg

layers.Conv2D

import tensorflow as tf
from tensorflow.keras import layers
x = tf.random.normal([1, 32, 32, 3])
# padding='valid':输入和输出维度不同
layer = layers.Conv2D(4, kernel_size=5, strides=1, padding='valid')
out = layer(x)
out.shape
TensorShape([1, 28, 28, 4])
# padding='same':输入和输出维度相同
layer = layers.Conv2D(4, kernel_size=5, strides=1, padding='same')
out = layer(x)
out.shape
TensorShape([1, 32, 32, 4])
layer = layers.Conv2D(4, kernel_size=5, strides=2, padding='same')
out = layer(x)
out.shape
TensorShape([1, 16, 16, 4])
layer.call(x).shape
TensorShape([1, 16, 16, 4])

weight & bias

layer = layers.Conv2D(4, kernel_size=5, strides=2, padding='same')
out = layer(x)
out.shape
TensorShape([1, 16, 16, 4])
# 5,5--》size,3--》通道数,4--》核数量
layer.kernel.shape
TensorShape([5, 5, 3, 4])
layer.bias
<tf.Variable 'conv2d_11/bias:0' shape=(4,) dtype=float32, numpy=array([0., 0., 0., 0.], dtype=float32)>

nn.conv2d

w = tf.random.normal([5, 5, 3, 4])
b = tf.zeros([4])
x.shape
TensorShape([1, 32, 32, 3])
out = tf.nn.conv2d(x, w, strides=1, padding='VALID')
out.shape
TensorShape([1, 28, 28, 4])
out = out + b
out.shape
TensorShape([1, 28, 28, 4])
out = tf.nn.conv2d(x, w, strides=2, padding='VALID')
out.shape
TensorShape([1, 14, 14, 4])

Gradient?


\[\frac{\partial{Loss}}{\partial{w}} \]


35-卷积神经网络-梯度.jpg

For instance

35-卷积神经网络-梯度实例.jpg


文章分类
后端
文章标签
版权声明:本站是系统测试站点,无实际运营。本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 XXXXXXo@163.com 举报,一经查实,本站将立刻删除。
相关推荐