tensorflow - 张量流模型可以在更高分辨率的图像上训练吗?
问题描述
需要帮助了解 Tensorflow 模型是否可以在更大的分辨率(如 4K 分辨率)上进行训练。我试过了,但训练没有开始,我希望是因为一些记忆问题。有没有人做过同样的事情?
解决方案
理论上你可以,TensorFlow 没有任何限制阻止你这样做。
但实际上,限制是 GPU 或系统 RAM。一个 3840x2160 (4K) 的单通道浮点特征图大约需要 32 MB RAM,通常卷积网络在每一层使用多个特征图,从 96 到 512。例如,128 个 4K 特征图需要大约 1 GB RAM,然后使用批处理进行训练并为梯度计算保留中间结果,将需要太多 RAM。
如果您查看常见 ImageNet 训练的神经网络的输入形状,尺寸通常为 224x224、256x256,我见过的最大尺寸是 600x600,用于对象检测网络(如 SSD 和 Faster R-CNN)。这些尺寸与完整的 4K 图像相差甚远。
TLDR。您应该将图像缩小到可管理的大小。
推荐阅读
- flutter - 如何停止在颤动中选择多个容器?
- java - 从firebase存储,firebase实时数据库在android应用程序中显示图像的问题
- reactjs - cometd - 反应连接通道总是在 Safari 浏览器中返回错误代码 402::Unknown client
- python - Streamlit 应用程序中的依赖项问题
- javascript - Google recaptcha v3-获取控制台错误 net::ERR_BLOCKED_BY_RESPONSE 200
- r - 基于维度值重复记录data.table R
- java - 类型安全:从 WebElement 到 List 的未经检查的强制转换
- .net - .NET COM Interop 在我的 PC 上的 VB6 应用程序中工作正常,但在客户端 PC 上不起作用 - ActiveX 无法创建对象
- java - 无法通过 https 标头请求在肥皂中设置用户代理 - java
- python - Python 从另一个方法返回值