面对解决小型图像数据集,一种常用且非常高效的方法是使用预训练网络。那么什么是预训练网络呢?
定义:
预训练网络(pretrained network)是一个保存好的网络,之前已经在大型数据集(通常是大规模图像分类任务)上训练好。
作用:
如果这个原始数据集足够大且足够通用,那么预训练网络学到的特征的空间层次结构可以有效地作为视觉世界的通用模型,因此这些特征可用于各种不通的计算机视觉问题,即使这些新问题涉及的类别和原始任务完全不同。
这种学到的特征在不同问题之间的可移植性,是深度学习与血多早期浅层学习方法相比的重要有事,它使得深度学习对小数据问题非常有效。
例子:
在ImageNet上训练了一个网络(其类别主要是动物和日常用品),然后将这个训练好的网络应用于某个不相干的任务,比如图像识别中识别家具。
预训练网络的方法:
1)特征提取(feature extraction)
2)微调模型(fine-tuning)
一、特征提取
原理:
特征提取是使用之前网络学到的表示来从新样本中提取出有趣的特征。然后将这些特征输入一个新的分类器,从头开始训练。
过程:
用于图像分类的卷积神经网络包含两部分:首先是一系列池化层和卷积层,最后是一个密集连接分类器。第一部分叫做模型的卷积基(convolutional base)。对于CNN来说,特征提取就是取出之前训练好的网络的卷积基,在上面运行新数据,然后在输出上面训练一个新的分类器。

本文介绍了在处理小型图像数据集时,如何利用预训练的卷积神经网络(CNN)进行效果优化。预训练网络是在大型数据集上训练好的模型,其学到的特征可以用于各种计算机视觉问题。文章详细阐述了预训练网络的定义、作用,并通过特征提取和模型微调两种方法进行说明,强调了在微调过程中防止过拟合的重要性。
最低0.47元/天 解锁文章
2501

被折叠的 条评论
为什么被折叠?



