CNNs:ZFNet之基于AlexNet特征可视化实验分析

本文探讨了基于AlexNet和ZFNet的卷积神经网络特征可视化实验,包括不同卷积层的特征提取和收敛性分析。实验显示随着层数增加,特征更偏向语义。ZFNet通过微调解决了AlexNet的混乱网格问题,提高了特征提取质量。此外,文章还涉及特征不变性、局部遮挡敏感性和局部相关性的实验,揭示了网络如何利用上下文信息进行分类。

导言

上一篇我们介绍了如何利用Deconvnet网络进行特征可视化操作,本篇我们将基于Deconvnet对文献中的相关实验进行分析,并验证一些结论。除此之外,我们还将针对实验现象对对AlexNet网络进行微调(ZFNet),并对网络进行简单介绍。然后基于ZFNet进行实验分析。

基于AlexNet网络的实验分析

实验一:不同卷积层特征提取分析

实验条件:

  • 模型数据集:ImageNet 2010 training set(1.0 million images, spread over 1000 different classes)
  • 模型AlexNet
  • 下图中,在2-5层是在验证数据集中的特征图中抽取前9个最大激活所对应的图片和喂到Deconvnet中得到的像素空间的特征。

在这里插入图片描述
第一层卷积:是极高和极低的频率信息的混合,几乎不覆盖中频(边缘信息+颜色信息)
在这里插入图片描述

在这里插入图片描述

第二层卷积:比第一层卷积提取出来的信息更加抽象,但仍主要是由边缘信息和颜色信息组成。

随着层数的增加,提取出来的特征越来越偏向“语义特征”。
在这里插入图片描述
在这里插入图片描述

第五层中右上角的一组图像中,看似几乎没有共同特征,但网络却学习到了背景草地的特征。

实验二:不同卷积层提取特征收敛分析

  • 基于AlexNet

在训练过程中特征演。下图中,展示了给定特征图的最强激活投影到像素空间中的特征。注意:色彩对比度认为的增强了,为了突出显示特征
在这里插入图片描述
可以从上图中发现,随着层数的增加,卷积层提取的特征更加偏向语义特征,且提取出来的语义特征需要更大的epoch才能提取出来;模型的底层网络在epoch很小便可以收敛。

下图为基于AlexNet网络在第一层卷积层核第二层卷积层提取特征后进行特征可视化的结果。可以从图(a)中看到实验中出现了无明显特征的特征图,在图(b)中可以看到明显的混乱网格的现象。其中“混乱网格”的出现是由于在使用卷积核对上一输入进行卷积时,步长过大造成的。所以针对此实验现象,文章提出了基于AlexNet的改进网络ZFNet
在这里插入图片描述

ZFNet网络介绍

在这里插入图片描述
针对AlexNet的实验现象,文章针对ImageNet数据集对AlexNet进行了微调,可以有效解决混乱网格和dead特征。

首先,让我们先看一下ZFNet的网络结构:

import torch
import torch.nn as nn
from collections import OrderedDict
from torchsummary import summary

class ZFNet(nn.Module):
    def __init__(self, class_num = 5):
        super(ZFNet, self).__init__()
        self.features = nn.Sequential(
            # input[3, 224, 224]  output[96, 110, 110]
            nn.Conv2d(3, 96, kernel_size=7, stride=2, padding=1),
            nn.ReLU(inplace=True),
            # output[96, 55, 55]
            nn.MaxPool2d(kernel_size=3, stride=2, padding=1, return_indices=True),

            # output[256, 26, 26]
            nn.Conv2d(96, 256, kernel_size=5, stride=2),
            nn.ReLU(inplace=True),
            # output[256, 13, 13]
            nn.MaxPool2d(kernel_size=3, stride=2, padding=1, return_indices=True),

            
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值