18个面向初学者的经典开源计算机视觉项目-图像分类篇Inception(三)

在研究这篇文章时,有一点很清楚。2014年是发展真正流行的图像分类预训练模型的标志性一年。尽管上述VGG-16在当年的ILSVRC中排名第二,但排名第一的不是别人,正是谷歌——通过它的GoogLeNet或Inception。

最初的论文提出了Inceptionv1模型。在只有700万个参数的情况下,即比当时流行的模型(如VGG和AlexNet)小得多,再加上较低的错误率,你就可以看出为什么它是一个突破性的模型。不仅如此,本文的主要创新也是另一个突破—Inception模块。

简单来说,Inception模块只是对输入执行不同大小的卷积,执行最大池,并将结果连接到下一个Inception模块。1*1卷积运算的引入大大降低了参数。

18个面向初学者的经典开源计算机视觉项目-图像分类篇Inception(三)_第1张图片

尽管Inceptionv1中的层数为22,但参数的大量减少使其成为一个难以击败的模型。

18个面向初学者的经典开源计算机视觉项目-图像分类篇Inception(三)_第2张图片

Inceptionv2模型是对Inceptionv1模型的一项重大改进,它提高了准确性,并进一步降低了模型的复杂性。在与Inceptionv2相同的论文中,作者介绍了Inceptionv3模型,并对v2进行了一些改进。Inceptionv3在2016年CVPR中以3.5%的前五名错误率位居榜首。

以下是主要的改进措施:批量标准化介绍、更多因子分解、RMSProp优化

18个面向初学者的经典开源计算机视觉项目-图像分类篇Inception(三)_第3张图片

正如你所看到的,与VGG16微不足道的16层相比,层的数量是42层。此外,Inceptionv3将错误率降低到仅4.2%。

我们执行以下操作:将基本模型的输出展平到一维,添加一个具有1024个隐藏单元和ReLU激活的完全连接层,这一次,我们的DropOut设置为0.2,添加最后一个完全连接的Sigmoid层。我们将再次使用RMSProp,当然你也可以尝试Adam Optimizer,然后,我们将对模型进行拟合:

18个面向初学者的经典开源计算机视觉项目-图像分类篇Inception(三)_第4张图片

因此,我们可以看到,我们在10个epochs内获得了96%的验证准确率。还要注意,这个模型比VGG16快得多。每个epochs仅占VGG16中每个epochs的1/4左右。当然,你可以使用不同的超参数值进行实验,看看它的性能有多好/差。 

具体过程,可查看原文链接:

https://www.analyticsvidhya.com/blog/2020/08/top-4-pre-trained-models-for-image-classification-with-python-code/?utm_source=blog&utm_medium=18_open-Source_computer_vision_projects

微信公众号:

下载对应的论文,在公众号中回复:paper

你可能感兴趣的:(计算机视觉,人工智能,python,神经网络,深度学习)