AlexNet与VGG

AlexNet

AlexNet是神经网络之父Hinton的学生Alex Krizhevsky开发完成,总共有8层,其中有5个卷积层,3个全链层,前5层其实不完全是卷积层,有些层还加入了池化层,并对数据进行标准化处理。Alex在他的论文中写到,他在处理图片的时候使用了两个GPU进行计算,在卷积过程中他做了分组的处理。

第一层

第一层包含了卷积层、标准化层和池化层。在Tensorflow中,搭建的部分代码程序为:

# 1st Layer: Conv (w ReLu) -> Lrn -> Pool

conv1 = conv(X, 11, 11, 96, 4, 4, padding='VALID', name='conv1')

norm1 = lrn(conv1, 2, 2e-05, 0.75, name='norm1')

pool1 = max_pool(norm1, 3, 3, 2, 2, padding='VALID', name='pool1')

 

输入的图像为彩色图片224 * 224 * 3 ,实际上会经过预处理变为227 * 227 * 3

这个图像被96个大小规格为11 * 11 * 3的卷积核进行特征提取,步长为496个卷积核分成2组(因为采用了2GPU服务器进行处理),每组48个卷积核,卷积核在一个方向移动的过程中会生成(227-11)/4+1=55个像素,这样得到了255 * 55 * 48的像素层数据。这些像素层经过relu1单元的处理,生成激活像素层,尺寸仍为255 * 55 * 48的像素层数据。

这些像素层经过pool运算处理,池化运算的尺度为3 * 3,步长为2,则池化后图像的尺寸为(55-3)/2+1=27 即池化后像素的规模为27 * 27 * 96

然后经过归一化处理,归一化运算的尺度为5 * 5;第一卷积层运算结束后形成的像素层的规模为27 *2 7 * 96

第二层

第二层实际也包含了卷积层、标准化操作和池化层。在Tensorflow中,搭建的部分代码程序为:

# 2nd Layer: Conv (w ReLu)  -> Lrn -> Pool with 2 groups

conv2 = conv(pool1, 5, 5, 256, 1, 1, groups=2, name='conv2')

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值