【问题标题】:Convolution neural network with limited amount of data数据量有限的卷积神经网络
【发布时间】:2019-06-21 15:49:51
【问题描述】:

我为图像分类构建了一个卷积神经网络,可以成功处理每个类的大量数据,但我想用特定数据库实现它,每个类可用的数据量有限(例如,可能是 1、2、 3)。相同模型的准确率会非常低,而不是我使用数据增强、批量归一化和 dropout。如何在可用数据量少的情况下提高系统精度,是否有专门针对这种情况的模型,或者对我的系统进行任何其他补充或对我的图像进行编辑以获得高度评估精度系统。谁能帮帮我,我很困惑。谢谢...

【问题讨论】:

    标签: database conv-neural-network


    【解决方案1】:

    如果你没有用少量数据做测试,你应该尝试一下,conv net 即使在数据量有限的情况下也能很好地工作,这取决于分类任务的“难”程度。

    我在少量数据中看到的选项很少:

    • 迁移学习(来自您使用大数据库训练的网络,或者对于更真实的世界条件,来自谷歌或其他大型网络训练的 DCNN,因为如果您从自己的 CNN 中获取权重,您将永远不知道您是否可以仅使用小型数据库来实现这些性能)

    • 如果有一些关于你的分类任务的研究,找出人们做哪些特征设计并应用它。然后在提取的特征上尝试不同的分类器,如 SVM、随机森林……看看目前常用的集成学习和堆叠模型

    ps:据我所知,有 2 个选项可以对图像进行分类。由神经网络完成的自动特征提取和“手动”特征提取,可以通过对该领域的深入了解来识别,作为数据科学家和该领域的专业人士。 提取特征后,您可以使用不同的分类器,大多数使用卷积网络提取特征的人使用他们的神经网络作为分类器

    【讨论】:

    • 非常感谢您的回答,是的,我现在正在尝试使用迁移学习,我在 google 上找到了一些使用 google 或其他大网络训练的网络权重的示例,但我不知道如何我可以使用我有限的数据库在大型数据库上使用我的预训练网络的权重吗?你能帮我吗,我需要这个有限数据库的分类。非常感谢..
    • 如果你从对所有数据训练的卷积网络中获取权重并冻结所有层,它与使用所有数据训练的 cnn 完全相同。如果您解冻某些层(例如最后一个完全连接的层),这样做并没有什么意义,因为大多数模型仍然已经在所有数据上进行了训练。ps:我是深度学习的新手,我不认为我“我错了,但我可能……不要把它当作真正的真相
    • 我希望这是可以理解的。你能告诉我为什么当你有一个大数据集时你试图用很少的数据来创建一个 CNN 吗?
    • 好的..我不明白你的问题。我猜你的 2 个数据集是不同的,但我猜你想对同一种对象进行分类。当您只有 1 个训练样本时,很难对图像进行分类。你可以看看这个 kaggle 挑战:他们正在尝试对鲸鱼进行分类,超过 70% 的目标只有一张图像
    猜你喜欢
    • 2017-01-01
    • 1970-01-01
    • 2016-10-20
    • 1970-01-01
    • 1970-01-01
    • 2020-11-01
    • 2020-10-07
    • 2020-10-19
    相关资源
    最近更新 更多