Keras 第一次数据扩充还是数据集拆分?

Keras 第一次数据扩充还是数据集拆分?,keras,Keras,我想创建一个CNN二进制分类器来识别卫星图像。我有大约13000张照片。我拍了8000张照片,分为两组:一组是物体出现的地方,另一组是物体出现的地方。从8000张照片中,只有85张照片具有我正在搜索的元素。我现在是否应该旋转、缩放这85张照片,使其达到400张,然后将这两组照片分为训练数据集、有效数据集和测试数据集?85张图像对于训练模型来说似乎很少。但我肯定会首先将它们分为train、val和test,因为您希望确保这些集合尽可能不同。如果您首先应用数据增强,然后将其拆分为多个集合,则需要注意

我想创建一个CNN二进制分类器来识别卫星图像。我有大约13000张照片。我拍了8000张照片,分为两组:一组是物体出现的地方,另一组是物体出现的地方。从8000张照片中,只有85张照片具有我正在搜索的元素。我现在是否应该旋转、缩放这85张照片,使其达到400张,然后将这两组照片分为训练数据集、有效数据集和测试数据集?

85张图像对于训练模型来说似乎很少。但我肯定会首先将它们分为train、val和test,因为您希望确保这些集合尽可能不同。如果您首先应用数据增强,然后将其拆分为多个集合,则需要注意一幅图像的所有变体最终都会出现在同一集合中。首先分割然后增加数据似乎是更安全的方法。

85图像对于训练模型来说似乎很少。但我肯定会首先将它们分为train、val和test,因为您希望确保这些集合尽可能不同。如果您首先应用数据增强,然后将其拆分为多个集合,则需要注意一幅图像的所有变体最终都会出现在同一集合中。首先拆分然后增加数据似乎是更安全的方法。

为什么只选择8000而不是全部?如果一节课非常少,对你的训练没有帮助。因此,使用一些扩充然后分批进行划分是有意义的。您还可以用眼睛选择性地选择训练数据,以平衡对象和非对象图像;阿纳金分析这8000张照片花了很长时间,我没有那么多时间。我会将每个图像旋转10次,以获得更大的样本。然后我会把它分成3组。为什么你只选择8000而不是全部?如果一节课非常少,对你的训练没有帮助。因此,使用一些扩充然后分批进行划分是有意义的。您还可以用眼睛选择性地选择训练数据,以平衡对象和非对象图像;阿纳金分析这8000张照片花了很长时间,我没有那么多时间。我会将每个图像旋转10次,以获得更大的样本。然后我将其分为3组。我刚才做了增强:(因为我有11个旋转的图片和1个原版,所以我把它拆分是没有问题的,所以我会用12的乘法来分割。是的,你可以这样做,只要注意一个图像的旋转都在一个子集中。我不知道你的学习任务是什么,但是也要考虑其他的增强技术,比如饱和度和亮度操作。,镜像或随机裁剪。我设法将一张图片的旋转样本放在同一个子集中。我设法获得80%的准确率,但当我预测一些图片时,概率为99%的图片没有搜索对象:(.我得到了2112张图片作为训练集,1056张图片作为测试和验证集。为什么你的验证和测试集这么大?我会用80%用于训练,10%用于验证,10%用于测试。你是如何定义准确性的?你尝试过其他数据增强技术吗?你使用什么样的模型?我从深度学习中复制了比例在R中,我在编译模型时在度量中使用了acc。我尝试了宽度范围、高度范围、剪切范围、缩放范围。这是一个具有二元交叉熵损失函数的CNN模型。我刚才做了增强:(因为我有11个旋转的图片和1个原版,所以我把它拆分是没有问题的,所以我会用12的乘法来分割。是的,你可以这样做,只要注意一个图像的旋转都在一个子集中。我不知道你的学习任务是什么,但是也要考虑其他的增强技术,比如饱和度和亮度操作。,镜像或随机裁剪。我设法将一张图片的旋转样本放在同一个子集中。我设法获得80%的准确率,但当我预测一些图片时,概率为99%的图片没有搜索对象:(.我得到了2112张图片作为训练集,1056张图片作为测试和验证集。为什么你的验证和测试集这么大?我会用80%用于训练,10%用于验证,10%用于测试。你是如何定义准确性的?你尝试过其他数据增强技术吗?你使用什么样的模型?我从深度学习中复制了比例在R中,我在编译模型时在度量中使用了acc。我尝试了宽度范围、高度范围、剪切范围、缩放范围。这是一个CNN模型,具有二进制交叉熵损失函数。