首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用tensorflow cnn进行批量学习对模型的准确性有影响吗?

用tensorflow cnn进行批量学习对模型的准确性有影响吗?
EN

Stack Overflow用户
提问于 2020-10-27 05:09:55
回答 1查看 69关注 0票数 0

我在处理大量的图像

然而,当用python枕头解压缩时,python由于内存不足而停止。

所以我只是切片图像和训练模型

例如

  1. 全部数据: 1.jpg,2.jpg~100.jpg =>learn 50年代
  2. 切片数据:批1->1.jpg~10.jpg,批2->11.jpg~20.jpg.批10 =>learn 50划时代第1批,学习50划时代第2批.

模型的准确性有什么不同吗?

谢谢

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-10-27 18:18:54

图像数据往往占用大量的内存。通常,如果您尝试将所有图像作为一个大数据集处理,您将得到内存耗尽错误。为了处理这一问题,数据作为图像的“批次”积累,并在训练过程中作为输入依次提供给模型。通常使用生成器来完成这一任务。例如,假设您有10,000个训练图像,比如300×300 rgb像素。这是一个变化很大的数据。因此,与其尝试一次处理所有10,000幅图像,不如将其分批处理。batch_size可用于定义一次处理和存储在内存中的图像数量。例如,如果将batch_size设置为50,则需要200个连续批处理所有图像,用于一个训练阶段。200是steps_per_epoch在model.fit中的名字。如果您愿意,您可以创建自己的生成器,但是keras提供了几个API,可以为您做到这一点。这是这里。文档,我更喜欢使用ImageDataGenerator.flow_from_directory来提供所需的批处理生成,但也提供图像增强。批处理大小可以在一定程度上影响模型的性能,并影响培训时间。典型的小批处理使得训练持续时间更长,并且在每一个时期的度量中都会产生更大的差异,但在避免陷入局部极小值方面有一些优势。较大的批次大小往往会缩短整个培训时间。我通常使用不同的批处理大小进行几次运行,以查看模型的性能是否有显著的变化。

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

https://stackoverflow.com/questions/64548602

复制
相关文章

相似问题

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