处理 csv 文件数据时内存不足

数据挖掘 机器学习 张量流 熊猫 美国有线电视新闻网 麻木的
2022-02-22 18:04:10

处理 20 万条文本数据时出现错误。我在 tensorflow 中使用 CNN 文本分类。输出原始数据形状为 204177x22000。在传递给 numpy.array(out_raw) 时,这里消耗了 100% 的内存(使用 8GB RAM)。尝试批量处理数据,但没有奏效。如果我需要增加我的 RAM 大小,请帮助我解决公式。

处理这个问题陈述的方法是什么?

2个回答

就像@Sagar 说的那样,您可以将管道转换为 pyspark(使用 python API 的 Spark),并且您可以将内存使用设置为不超过 1G 的 RAM,例如,由于并行化,这会更快。

您可以尝试使用带有 Tensorflow 的生成器,它可以来回调整您的数据,因此它永远不会爆炸您的 RAM。

如果问题出在之前,比如将数据放入变量中,您可以使用 Dask。这只是一个分布式 Pandas,它可以通过批量处理数据来帮助您将数据放入 RAM

你在 jupyter notebook 中运行吗?有几种选择:

  • 将您的数据转换为羽毛或 hd5 格式
  • 您可以选择亚马逊机器学习 EC2 实例
  • 在 Paperspace.com 创建一个帐户以获得更多计算能力