首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >我们能用生成的对抗性网络生成巨大的数据集吗?

我们能用生成的对抗性网络生成巨大的数据集吗?
EN

Data Science用户
提问于 2017-04-04 11:26:17
回答 4查看 7.6K关注 0票数 15

我正在处理一个问题,我找不到足够的数据集(图像)来输入我的深层神经网络进行训练。

斯科特·里德等人发表的论文“生成对抗性文本到图像合成”给了我很大的灵感。生成对抗性网络。

我很想知道,我是否可以使用可用的小数据集作为GAN模型的输入,并生成一个更大的数据集来处理更深层次的网络模型?

够了吗?

EN

回答 4

Data Science用户

回答已采纳

发布于 2017-04-04 12:11:31

除了直接的数据收集工作之外,这不太可能增加更多内容。

目前GAN产出的质量(截至2017年)还不够高。GAN产生的图像通常很小,可能有异常/模糊的细节和奇怪的扭曲。在你所链接的文件中,系统从句子中生成的图像在主题上有可信的颜色块,但如果没有句子引发你期待的东西,它们中的大多数都不能被识别为任何特定的主题。

与从句子中生成图像相比,GANs的目标要小一些(尽管我在上面提出了批评,这是一个真正了不起的壮举-- IMO),它应该产生更接近于照片写实的图像。但它们的范围将较小,很可能不包括您想要的图像类型。而且,通常输出大小很小,例如64x64或128x128*,而且仍然有足够的失真和模糊性,所以原始的地面真实照片会更好。

GAN本身受到可用培训库的限制--如果您试图在其培训数据的范围之外生成图像,它将不会做得很好。当然,本文的研究结果集中在训练数据提供的领域上。但是,您不能只是将任何句子输入到这个模型中,并期望在其他地方有用的结果。

如果您找到了一个针对您的问题进行了适当数据集培训的GAN,那么您很可能最好尝试为您的项目直接获取相同的数据。

如果你面临着有限的地面真实数据的问题,那么使用GAN的一个更好的方法可能是使用一个预先训练过的分类器,比如VGG-19或Inception v5,替换最后几个完全连接的层,并根据您的数据对其进行微调。下面是一个在Python中使用Keras库来实现这一点的示例 -其他的例子可以找到搜索,如“微调CNN图像分类器”。

*自从我贴出这个答案以来,最先进的甘斯已经变得更好了。Nvidia的一个研究团队已经取得了显著的成功,创造了1024x1024照片真实感图像.。不过,这并没有改变我答覆中的其他要点。GANs并不是图像分类任务的可靠图像来源,除了GAN已经被训练过的子任务之外,它能够有条件地生成(或者更琐碎地,为分类器中的“其他”类别提供源数据)。

票数 10
EN

Data Science用户

发布于 2017-12-13 15:37:57

我和目前正在构建的DNN有着完全相同的问题。把我的数据集合起来,用GAN合成新的数据似乎是个好主意。但GAN本身只会学习输出图像,其图像方差和标准偏差与在训练集中学习的图像相同。因此,新生成的数据将简单地表示相同样本分布的更多排列。这将有助于您的NN培训更好地在相同的分布,因此,它可能导致更大的过度训练。

票数 3
EN

Data Science用户

发布于 2018-08-29 22:39:08

从纯理论的角度来看,这是不可能的。

任何给定的训练数据集都代表关于某个空间的结构的一定数量的信息。如果您在此数据集上对GAN进行培训,它只会从该数据集所表示的信息中学习。GAN合成的数据不可能比原始数据更大,原因很简单:这些信息从何而来?如果它不在原始数据集中,那么它也不能存在于GAN的合成数据中。

如果您训练一个神经网络在数据集上收敛,则该神经网络将学习该数据集包含的任何结构。任何由GAN合成的人工训练数据都不会增加新的信息。这个想法应该直截了当。

票数 3
EN
页面原文内容由Data Science提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://datascience.stackexchange.com/questions/18103

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档