目录
传统神经网络vs卷积神经网络
损失函数 softmax onehot
为什么需要卷积神经网络
基本组成结构
卷积
更贴合实际的例子
这个例子是3个channel :R G B 对应右边三个矩阵
每个channel 有自己卷积核 然后有两套卷积核 W0 W1
每套卷积核有三个权重矩阵(也可以说是filter)
卷积核下面的是偏置项对应两套卷积核 b0 b1
最右边的则是计算出的两种特征图(对应的三权重矩阵卷积后相加 再加 偏置项)
若步长为2
步长为3呢
出现大小不匹配
则
padding
特征图大小计算
depth/channel
是和卷积核filter的个数保持一致的 比如上个例子每套卷积核有对应R G B 的三个卷积核filter,最终则计算出3个
不同卷积核关注不同东西
池化
这里的filter指多大的区域内池化
分类倾向于最大值池化
全连接
先做 flatten 展平,然后后一个神经元和前一个神经元每一个值都有一个权重连接。
小结
卷积神经网络典型结构
AlexNet
DropOut
一定程度克服过拟合问题 关闭部分神经元 关闭部分参数
数据增强
通道为3(rgb) 卷积参数量 34944 参数量为 0
经过relu 大小不改变
先flatten 展平 再和4096个神经元全连接
把4096个神经元映射到一个类别的大小,求损失,优化网络
ZFNET
VGG
对迁移学习有很大贡献
GoolgeNet
除了分类,没有全连接层, inception 模块
inception 模块
v2通过1*1 的卷积核来降维,减少参数量
v3 把5*5 的卷积核 裂变成 3*3 的卷积核
ResNet
带有主体,解决梯度消失 若 F(x)为0 则输出也为0 可以自适应调节网络层数
代码实战
TensorFlow-CNN
注意训练时 train改为true
总结