首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何训练比GPU内存更大的TF模型?

如何训练比GPU内存更大的TF模型?
EN

Stack Overflow用户
提问于 2021-03-03 00:25:37
回答 1查看 189关注 0票数 0

我想使用TF2,最好是EfficientDet D7网络来训练一个大型目标检测模型。对于我的16 GB内存的Tesla P100卡,我遇到了一个“内存不足”异常,即显卡上没有足够的内存可以分配。

所以我想知道在这种情况下我的选择是什么。如果我有多个GPU,那么TF模型将被拆分,以便填满两个卡的内存,这是正确的吗?因此,在我的情况下,使用第二张16 GB的Tesla卡,我在训练期间总共将拥有32 GB?如果是这样的话,我可以使用多个GPU的云提供商也是如此吗?

此外,如果我错了,在训练期间为多个GPU拆分一个模型将不起作用,那么还有什么方法可以训练一个不适合我的GPU内存的大型网络?

PS:我知道我可以将batch_size减少到1,但不幸的是,对于非常大的模型,这仍然不能解决我的问题…

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-03-18 17:26:41

你至少可以在GCP (Google Cloud Platform,谷歌云平台)中使用多个GPU,对其他云提供商不太确定。是的,一旦你这样做了,你就可以训练更大的批处理大小(确切的数量将取决于GPU,它的内存以及你的GPU如何在你的虚拟机中运行)

您可以查看此link,查看GCP中所有可用图形处理器的列表

如果你正在使用物体检测应用程序接口,你可以查看this上关于使用多个图形处理器进行训练的帖子。

或者,如果您想使用单个GPU,一个聪明的技巧是使用梯度累积的概念,您可以在不使用太多额外GPU内存的情况下虚拟地增加批处理大小,这在this post中进行了讨论。

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

https://stackoverflow.com/questions/66443220

复制
相关文章

相似问题

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