Tensorflow 为什么我的inception和带有2M参数的LSTM模型需要1G GPU内存?

Tensorflow 为什么我的inception和带有2M参数的LSTM模型需要1G GPU内存?,tensorflow,keras,deep-learning,Tensorflow,Keras,Deep Learning,该模型主要基于inception和LSTM,由Keras在tensorflow 2.x上实现。保存的模型参数仅占用2M的空间。该模型以32个批次的规模进行动态训练,每个批次的数据量为0.25M。model.fit_生成器中的辅助进程为20,use_multiprocessing=True 然而,我观察到它需要1G的GPU内存。我无法找出原因,我也不知道在培训期间可以使用哪些工具来监控模型不同部分的GPU内存成本 下面显示了模型的详细信息: 分配的GPU内存不仅用于参数,还用于向后传递的激活和渐变

该模型主要基于inception和LSTM,由Keras在tensorflow 2.x上实现。保存的模型参数仅占用2M的空间。该模型以32个批次的规模进行动态训练,每个批次的数据量为0.25M。model.fit_生成器中的辅助进程为20,use_multiprocessing=True

然而,我观察到它需要1G的GPU内存。我无法找出原因,我也不知道在培训期间可以使用哪些工具来监控模型不同部分的GPU内存成本

下面显示了模型的详细信息:

分配的GPU内存不仅用于参数,还用于向后传递的激活和渐变

此外,您还必须考虑以下因素影响使用的内存量:

  • 批量大小:批量中的图像越多,意味着激活次数越多
  • 工人数量:每个工人都需要一些内存来操作