我想使用预训练的卷积网络进行图像分类。我的基础数据的分辨率为 500x500px 到 1000x1000px。预训练的架构通常期望更少(谷歌的 Inception 网络在 255 到 299px 之间)。
首先:使用更高分辨率的图像可能会产生很大的影响吗?即值得研究它吗?其次:这是否有意义,是否可以在低分辨率上使用预训练的网络并以更高的分辨率重新训练最后一层/分类器?
我想使用预训练的卷积网络进行图像分类。我的基础数据的分辨率为 500x500px 到 1000x1000px。预训练的架构通常期望更少(谷歌的 Inception 网络在 255 到 299px 之间)。
首先:使用更高分辨率的图像可能会产生很大的影响吗?即值得研究它吗?其次:这是否有意义,是否可以在低分辨率上使用预训练的网络并以更高的分辨率重新训练最后一层/分类器?
使用更高分辨率的图像可能会产生很大的影响吗?
是的,如果你增加卷积神经网络的输入大小,每一层的每个激活图的大小都会增加,所以你会有更多的计算量。此外,如果您使用相同的架构,密集层中的神经元数量以及参数数量也会增加。
这是否有意义,是否可以在低分辨率上使用预训练的网络并以更高的分辨率重新训练最后一层/分类器?
答案是不。当您训练具有特殊输入大小的网络时,您会保留变量来保存权重和中间变量。如果增加输入的大小,密集层的大小会有所不同,因此它们的 wights 数量也应该有所不同。
总结一下,对于具有分类任务的网络,将小尺寸图像传递给网络是合适的。对于边缘检测等其他任务,如果调整大小会破坏边缘信息,则必须小心。在这些情况下,您必须找到适当大小的图像才能保留重要信息。输入的小尺寸是为了减少操作数量和参数数量。