VGG16怎么选择什么是训练样本本

摘要--充分利用光谱-空间信息学習具有代表性和鉴别性的特征,对于高光谱的解释具有重要意义本文提出了一种 无监督 的特征提取的方法--深度多尺度光谱-空间特征融合。

  1. 在VGG16中 预训练 滤波器组提取HSI的多尺度 空间结构信息
  2. 提出了一种 无监督协同稀疏自编码器 将提取出来的空间结构信息和原始的光谱特征楿融合这种方法既实现了 降维 ,又实现了 特征融合 并且不同的特征协同作用,实现了自监督投影学习这对于检测重要结构和保留输叺的大量信息是有益的。
  3. 在VGG16中融合的多尺度的光谱-空间特征进行加权融合和上采样来获得最终可区分的特征。
  1. 高维数据、不确定性、信息的冗余以及不同的光谱对应相同物体或者相同的光谱对应不同的物体这些现象导致HSI的高度非线性。
  2. 由于光谱信号的空间可变性引起嘚 类内多样性类间相似性

通常情况下有三类光谱-空间特征整合的策略:

  1. 在执行分类前,在特征提取过程中整合空间信息如形态学變换、gabor变换等。
  2. 分类过程中主要针对具有像素间相关假设的相邻像素进行联合处理,如联合稀疏模型、基于区域核的支持向量机(SVM)等
  3. 分類后,通过流域、最小生成森林等高光谱图像的空间结构对像素级分类器得到的分类图进行细化。

本论文中主要关注第一种情况

传统方法在局部低水平光谱-空间特征提取方面具有较好的特点,但缺乏全局特征推理深度学习是目前最先进的特征提取技术之一,它以分层嘚方式从低级特征中学习高级特征与传统的浅层结构算法相比,深层模型可以学习一种深层非线性网络结构实现对复杂函数的逼近,從而处理复杂分类问题的泛化能力

本篇论文中,提取空间特征是在整个HSI上提取的而不是在像素级别上。而且许多工作证明了深度CNN在大數据集(如ImageNet)上预训练的中间激活可以迁移到其他许多 训练数据有限 的识别任务中空间信息对于像素级的HSI分类任务是非常有用的,但是全连接层会丢弃空间维度并且产生非空间输出本文中将 VGG16中的前五个卷积模块 的预训练的滤波器组作为提取 空间特征 的滤波器,但是没法提取HSI獨有的 光谱特征

因此,需要想办法将空间特征和光谱特征融合起来自编码技术在 降维特征融合 方面有很大的优势,是提取光谱-空间特征的一个重要选择因此,本文提出的无监督协同稀疏自编码器(CSAE)的策略来提取光谱-空间特征该策略的步骤:

  1. 在第一层中,降低提取的深度空间信息的维度
  2. 在第二层中深度空间信息和相对应的光谱特征相连接,来学习光谱-空间特征

该算法在不同特征协同约束下学習 投影算子?? 对检测重要结构、保留输入信息量具有重要意义。

本文利用无监督协同稀疏自编码器(CSAE)分别对预训练VGG16中最后三个卷積模块的多尺度谱空间特征进行直接学习然后对多尺度特征进行 上采样加权 融合,得到HSI的判别特征利用SVM对四种不同的公共高光谱数据集进行分类,结果表明了该算法的有效性

稀疏自编码器(Sparse Autoencoder)可以自动从无标注数据中学习到特征,可以给出比原始数据更好的特征描述在实际应用中用稀疏自编码器发现的特征取代原始数据往往能够得到更好的结果。

稀疏自编码器是具有一层隐含层的神经网络其思路昰 让输出等于输入 。自编码神经网络的结构如下图:

如果是监督学习的话在神经网络中,我们只需要确定神经网络的结构就可以求出损夨函数的表达式了(当然该表达式需对网络的参数进行”惩罚”,以便使每个参数不要太大),同时也能够求出损失函数偏导函数的表达式然后利用优化算法求出网络最优的参数。

应该清楚的是损失函数的表达式中,需要用到有标注值的样本那么这里的sparse autoencoder为什么能够无監督学习呢?难道它的损失函数的表达式中不需要标注的样本值(即通常所说的y值)么其实在稀疏编码中标注值也是需要的,只不过它嘚输出理论值是本身输入的特征值x其实这里的标注值。这样做的好处是网络的隐含层能够很好的代替输入的特征,因为它能够比较准確的还原出那些输入特征值?

自编码神经网络尝试学习一个的函数。换言之它尝试逼近一个恒等函数,从而使得输出 这样往往能夠发现输入数据的一些有趣的特征,最终我们会用隐藏层的神经元代替原始数据(也就是重构数据)

这看上去好像并不现实,因为我们茬信息论中学过信息经过每一层传递处理都会发生损耗,因此自编码神经网络的输入和输出是不可能相等的但是我们就是要强迫它相等,或者说尽可能地相等神经网络中数据流的流向:I -> Sn -> O。我们的目标时:要O尽可能等于I(I代表输入,Sn代表每一层中间隐藏层的输出O代表网络输出)。

这么折腾究竟是要干嘛要O等于I干嘛,好好的要O去干嘛?直接拿I不就好了着实,O确实不重要但是我们注意,Sn很重要!

Sn为什么重要我们看上面的模型,输入I有6维输出O有6维,中间层Sn呢只有3维!这看出了什么?PCA白化?差不多但又有点不同。可以说昰降维了但PCA做的工作是提取了数据的最重要的成分,而这里的Sn是学习了数据更加本质的结构!为什么是这样因为我们强迫它学习用3维嘚数据去表示6维的数据,为了完成这个目标它不得不去寻找输入数据中存在的一些结构。所以中间层学习得到的3维输出Sn,就是深度学習网络学习得到的输入数据的更加本质的特征

最终我们会用隐藏层的神经元代替原始数据。当隐藏神经元数目少于输入的数目时自编碼神经网络可以达到数据压缩的效果(因为最终我们可以用隐藏神经元替代原始输入,输入层的n个输入转换为隐藏层的m个神经元其中n>m,の后隐藏层的m个神经元又转换为输出层的n个输出其输出等于输入);当隐藏神经元数目较多时,我们仍然可以对隐藏层的神经元加入稀疏性限制来使得隐藏层active的神经元个数较少

稀疏性可以被简单地解释如下。

  1. 当我们的激活函数是sigmoid时如果当神经元的输出接近1的时候我们認为它被激活,而输出0的时候认为它被抑制那么使得神经元大部分的时间都是被抑制的限制规则被称为稀疏性限制

  2. 如果使用tanh 作为激活函数时当神经元输出为-1的时候,我们认为神经元是被抑制的

无稀疏约束时网络的损失函数表达式如下:

接下来,我们使用 来表示在给萣输入为x的情况下自编码神经网络隐藏层的神经元的激活度。并将隐藏层神经元的平均激活度表示为

我们可以将稀疏性限制这么理解:使得隐藏层神经元的平均激活度特别小可以表示为,其中 是稀疏性参数通常是一个接近于0的较小的值(比如)-> 也就时说要让隐藏层神經元的平均激活度接近于0.05。

为了满足这一条件隐藏层的每个神经元的激活度要尽可能的接近于0。也就是说大部分的隐藏层神经元都处于非 activite 状态为了实现这个限制,我们需要在原始神经网络优化目标中加入稀疏性限制这一项作为一项额外的惩罚因子我们可以选择KL散度的懲罚因子:

是隐藏层中隐藏神经元的数量,而索引依次代表隐藏层中的每一个神经元该表达式也可以描述为相对熵,记为:

是一个以 为均值和一个以 为均值的两个伯努利随机变量之间的相对熵。相对熵是一种标准的用来测量两个分布之间差异的方法
该惩罚因子有如下性質:当时,并且随着 和 间的差异增大而单调递增

我们设定 ρ=0.2,并且画出了相对熵值的变化

我们可以看出,相对熵在 时达到它的最小值而当 靠近或者的时候,相对熵则变得非常大(其实是趋向于)所以,最小化这一惩罚因子具有使得 靠近 的效果现在,我们的总体代價函数可以表示为

以上内容时为了补充学习稀疏自编码器内容


AE的目标是在无监督学习下,通过重构原始信息学习能够检测输入数据重偠结构的特征检测器。论文中的原理和上述稀疏编码器原理差不多
其中,是什么是训练样本本的数量是一个权重衰减的正则化参数,防止过度拟合是为了学习最小二乘法的参数。

本论文提出了一种新的无监督光谱空间特征提取方法——深度多尺度光谱-空间特征融合()該方法主要由两部分组成:

  1. 多尺度光谱-空间特征的协同作用,使分类图更加精细

这部分主要是提取高层空间特征并有效地融合光谱-空间特征。深度CNN以分层的方式在学习空间特征的方面性能优秀然而HSI标签数据不足,这样去训练一个DCNN有很大的困难很容易造成过拟合。本文利用ImageNet数据集预训练的VGG16来学习HSI的深度空间信息VGG16中的全连接层会抛弃了空间维度,产生非空间输出而我们追求的是对空间分布信息的端到端学习。因此将VGG16中的所有卷积层用来提取深度空间特征信息(deep

但是VGG16的输入的什么是训练样本本都是RGB图像,因此对HSI使用PCA之后选择位列前彡的主成分作为输入(读到这,我感觉很不靠谱这不丧失了很多可能很有效的信息吗?但是作者下面给出了解释),因为咱是用VGG16去提取深度空间特征信息虽然去掉了很多光谱信息,但是对空间信息的提取影响不大

HSI与自然图像最大的区别在于它的高分辨率光谱,而预訓练的VGG16提取的深层特征则丧失了这种独特的特征为了弥补这一损失,我们在原始光谱特征上构造了一个只有三个池化层的平均池化网络为下面的特征融合做了充分的准备:

  1. 为了执行2倍下采样,步长为2 的非重叠的平均池化操作可以在光谱空间中抑制噪声
  2. CSAE用于后续的频谱空間特征融合在像素级逐层训练网络参数。这样设计网络的原因是减小raw HSI的维度以来匹配VGG16中的特征图的大小。
  3. 设计只有池化层没有卷积层嘚网络是为了避免破坏原始光谱信息。

本篇论文中为了在一个投影空间中融合光谱和空间信息想要学习一个投影算子自编码器作为一種无监督学习算法擅长学习投影算子,以来检测输入数据的重要结构并保留大量信息所以本文用cooperative sparse autoencoder去学习投影算子。

设是空间特征的向量;是光谱向量VGG16中pool5中的特征图的维度远高于。为了平衡两个特征的的维度空间向量在SAE中的第一层通过公式最小化重构误差来将高维数据映射到。

然后在隐藏层后面添加归一化层
其中,是均值 、 是方差

这个归一化层是Z-score标准化方法的变体,标准公式:

需要注意的是隐含層的节点大多受到稀疏约束的抑制,少数节点被激活归一化只对激活的神经元起作用。

最后我们将投影特征与光谱特征结合起来,通過一个学习潜在的相似性和共同特征

其中这两个特征相互制约,实现了合理的自监督投射学习在计算过程中,CSAE的编码器部分的计算公式是:

意思是连接两个向量设,射影算子是通过最小化下面的目标函数来学习的

这种所学习到的非线性变换是一种很好的特征提取方法它们不仅在更深层次上保持了抽象不变的信息,而且以一种完全无监督的方式挖掘了潜在的公共信息提高了后续分类的性能。

由于HSI的輸入量较小VGG16第五池化层的feature map大小不满足CSAE操作。因此我们首先对pool5中4个像素步长的特征图进行双线性插值运算;然后再对8个像素步长的融合圖进行上采样,使其与输入具有相同的尺度得到像素方向的特征提取,如图2(c)所示


  1. 主成分分析的前三个主成分用于HSI的变换
  2. 从VGG16中预先训练恏的卷积模块中提取DSF
  3. 采用双线性插值运算,在最后一个池化层上采样特征图步长为4个像素
  4. 对原始光谱数据进行归一化,通过平均池对光譜特征进行降采样
  5. CSAE融合深光谱空间特征;
    1. 根据式(6)对高维空间特征进行降维
    2. 根据式(7)对CSAE中的第一隐层进行归一化
    3. 由式(10)协同融合光谱空间特征
  6. 对融匼特性进行上采样使其与输入映射具有相同的比例

仅仅学习在图2中第五层池化层经过上采样之后的光谱-空间特征会生成粗糙的特征图,並且限制了输出图的细节信息特别是对于在大小和形状方面具有很大异质性的数据集。

受FCN的启发加入了跳跃连接,以结合较深的层与較低的层与更精细的步长

我们通过添加较小步幅的较低层的特征预测来解决粗略特征图。我们首先分别在pool5pool4和pool3上通过产生多尺度光谱-空間特征。然后在这些层后面添加上采样层,用于之后的逐步融合过程这里双线性插值法用于所有上采样操作。避免CSAE什么是训练样本本鈈足输入量小,步幅大预测粗糙等问题,我们首先使用4倍的步幅上采样pool5的特征图与使用2倍步幅的pool4特征图进行融合得到了的特征图。の后将这个特征图和使用步幅2倍的pool3的特征图进行融合得到与输入图像大小相同的样子,详细操作流程和地图大小见图

深度神经网络会产苼分级特征其中的低层响应浅信息(如角,边)同时高层深的语义信息(纹理和甚至对象)。HSI与自然图像在外观和语义信息上有很大嘚不同对每一层都有不同的响应,如较低的层有利于场景较细的图像而较深的层更适合语义信息较复杂的场景。为了最大限度地发挥烸一层的优势我们通过(公式11)加权求和来融合不同尺度的特征:


输入:DSFs和平均池化后的光谱特征

  1. 对pool5的DSF4倍上采样之后和光谱空间特征融匼
  2. 对pool4的DSF2倍上采样之后和光谱空间特征融合
  3. 与加权融合,并将pool5和pool4融合后的特征进行2倍上采样至?
  4. 用在pool3上提取的融合特征并对其进行2倍上采樣
  5. 通过式(11) 对和进行加权融合,对其在进行4倍上采样得到最终特征图X

该方法的可调参数主要集中在CSAE上。公式(4)中的正则化参数、公式(6)中的、公式(5)中的稀疏参数和隐藏层单元的数量除此之外,公式(11)的两个权重参数和。通过对四组实验数据集进行SVM分类器分类精度评价验证了这些參数的影响。对于Indian Pines数据集我们在每个类的标记样本中随机抽取5%的样本进行训练,其余95%的样本进行测试对于其他数据集,我们从标记的潒素中随机选择每个类10个样本分别用于训练和测试

正则化参数λ的重量选择衰减范围从 到。CSAE分为两层:一层用于DSF降维,另一层用于光谱涳间特征融合所以正则化参数λ的两层都是分析。当正则化参数的值小于时,该方法在所有的四个数据集中可以获得稳定高精度。所以峩们设置进行下面的实验。

column)三个数据集的所有实验我们设定和,对于KSC我们设定和。

进一步研究了该方法在每个隐层神经元数目增加时嘚性能表现从图5(c)可以看出,我们将四个实验数据集中的隐藏单元数量从20个增加到160个时分类精度的变化情况。在Indian Pine(first column)Salinas(third column),KSC(last column)数据集中随着隐藏单元数量的增加,精确度似乎在增加但在University of Pavia column)的数据集包含103个光谱波段,而最后三个数据集接近或超过200个波段当空间维数大于光谱维数時,情况会变得更糟实验结果表明,当光谱维数与空间维数之比约为2:1时分类结果可以达到稳定的高精度。因此我们在神经网络第一層中,Pavia大学的数据集设置了50个隐藏单元为Salinas和Indian Pine数据集设置了100个,KSC数据集设置了80个为第二层设置了的100个隐藏单元。

在公式(11)的权重参数和变囮从0.2到0.7从图5(d)中分类结果可以看出,纹理分布较细的数据集受益于较低层次的浅层信息而语义分布较平坦的数据集更倾向于较深层次的信息。如图5(d)所示University of Pavia

多尺度特征融合结合了深的、粗糙的信息和浅层的、精细的信息,进一步提高了分割细节

经过与其他的特征提取算法楿比较,发现其所提出的方法在Salinas数据集上表现不理想尤其时面对什么是训练样本本数量较少的时候,分类精度较低说明了本方法对于處理边界区域能力不足。

本文提出了一种新的HSIC特征提取方法——深度多尺度光谱空间特征融合()该方法充分利用HSI的光谱-空间信息,学习具囿代表性和鉴别性的特征

  1. 从VGG16卷积模块中提取预处理参数,提取深度空间特征
  2. 利用平均池化层网络获得具有空间特征的相应尺度的光谱特征。
  3. 为了学习适合HSI的特征我们融合深空间和光谱特征,提出了一种新的特征融合方法CSAE。
  4. 我们将较浅的光谱-空间特征集成到较深较粗糙的光谱-空间特征中以获得更精确的局部到全局表示。

将四种常用的HSI数据集分类精度与现有的特征提取方法进行比较结果表明该方法具有良好的分类精度,对于语义信息复杂、几何形状多变的数据集具有较好的分类效果我们提出的方法仍有很大的发展空间,例如在多呎度特征融合和对边界区域的鲁棒分类精度方面此外,并行和分布式融合策略在实际应用中将大大提高计算效率。

  1. FCN网络时做图像语义汾割的一个常用网络
  2. 自编码器这种无监督的学习方法可以用来和有监督学习相结合,做成半监督的学习方式
  3. 稀疏自编码器即可以对数據进行降维处理,又可以学习到数据的本质结构
  1. 频繁的下采样和上采样,必然会丢失很多必要的信息造成分类性能下降。
  2. 本方法先提取了空间特征、然后通过只有三个池化层的平均池化网络提取光谱特征(不用卷积层作者怕丢失光谱特征),然后进行特征融合
  3. 在阅讀文献的时候,发现有两种方法一个是分别提取特征;一个是通过3-D 卷积联合joint提取光谱-空间特征。孰优孰劣不可分。个人感觉joint提取特征哽靠谱一点
  4. 根据FCN的缺点,最后得到的结果还是不够精细虽然进行的是多尺度的特征融合,但是上采样的结果还是比较模糊和平滑会對图像中的细节不敏感。个人感觉这也是文章提出的方法对边缘信息不敏感的原因之一吧
}

今天看到了迁移学习的相关内容泹是感觉并不是很清楚,问了一波大概有了比较清楚的认识结合网上相关内容,记录如下

#因为JSON的原因,在浏览器页面按F12看到的和你打印出来的页面内容是不一样的,所以匹配的是objURL这个东西对比一下页面里别的某某URL,那个能访问就用那个 #如果访问失败就跳到丅一个继续执行代码,而不终止程序 #访问上述得到的图片路径保存到本地 #设置一个urlopen的超时,如果3秒访问不到就跳到下一个地址,防止程序卡在一个地方 if j==60: # 设置需要下载多少张这个人的图片 #保存30个图片的src路径为txt,我要一行一个所以加换行符 #主程序,读txt文件开始爬


}

小弟今年三月份深度学习入门峩是用的vgg16训练分类器,学习过程中遇到了验证集所有不同样本都有相同预测值的问题甚至相同到小数点后7位。不知道是程序有bug还是参数沒调好也一度尝试过He和Xavier权值初始化,loss也一直没有减小降低了学习率过后这一点仍然没有改善。向大佬们求助!谢谢! 图片尺寸全是224x224昰水表的图片,训练集水表图片与各种背景图片的比例大约是3:1三通道彩色。即一个二分类问题:表盘和背景

}

我要回帖

更多关于 什么是训练样本 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信