【问题标题】:Keras model.fit runs out of memory in Google Colab ProKeras model.fit 在 Google Colab Pro 中内存不足
【发布时间】:2020-11-20 15:00:06
【问题描述】:

我正在尝试使用以下数据集的简单顺序模型。 使用具有 35 GB RAM + 225 GB 磁盘空间的 Colab PRO。

  1. 总句子数 - 59000
  2. 总字数 - 160000
  3. 填充序列长度 - 38

所以 train_x (59000,37), train_y (59000)

我正在使用 FastText 嵌入层。 FastText 模型生成权重 (行) vocab_size 113000 (列/维度) embedding_size 8815

这是 model.summary() 的样子

编译模型大约需要 15 分钟,但 .fit 会在没有足够内存的情况下崩溃。

我已将 batch_size 降低到 4(相对于默认值 32).. 仍然没有运气。

纪元=2 详细=0 batch_size=4

历史 = seq_model.fit(train_x,train_y, epochs=epochs, verbose=verbose,callbacks=[csv_logger],batch_size=batch_size)

感谢任何使这项工作发挥作用的想法。

【问题讨论】:

  • 这不是一个简单的序列模型,你的模型有14.98亿个参数,非常大,对比一下ResNet有200万个参数,VGG有1.5亿个左右。训练这么大的模型需要一些工程挑战,所以你也许应该重新考虑一下这是否是你想做的。
  • 权重约为 6 Gb。我认为您有机会使用简单的优化器和 1 的 batch_size 进行训练。但是,除非您拥有大量 TPU,否则训练如此庞大的模型可能需要数年时间
  • @Dr.Snoopy - 感谢您的反馈。有任何重新思考的建议吗?

标签: tensorflow machine-learning keras google-colaboratory tensorflow2.0


【解决方案1】:

如果我看到的是正确的,那么您的模型太大了! 它有近 15 亿个参数。这太过分了。 减少批量大小根本没有帮助。

【讨论】:

    猜你喜欢
    • 2021-09-21
    • 2022-11-22
    • 1970-01-01
    • 2020-03-31
    • 2020-03-21
    • 2020-07-15
    • 2021-04-01
    • 1970-01-01
    • 2020-05-04
    相关资源
    最近更新 更多