apache-spark - 如何在 Spark 数据帧上训练神经网络自动编码器 (Keras)

标签 apache-spark keras pyspark autoencoder systemml

我创建了一个非常大的 Spark 数据框 在我的集群上使用 PySpark,它太大而无法放入内存。我也有一个 带有 Keras 的自动编码器模型 ,它接收一个 Pandas 数据帧(内存对象)。

将这两个世界结合在一起的最佳方式是什么?

我发现了一些在 Spark 上提供深度学习的库,但似乎仅适用于 hyper parameter tuning或者不会支持像 Apache SystemML 这样的自动编码器

我肯定不是第一个在 Spark Dataframes 上训练神经网络的人。我在这里有一个概念上的差距,请帮助!

最佳答案

正如您提到的,Spark 中的 Pandas DF 是内存中的对象,不会分发训练。对于分布式训练,你必须依赖 Spark DF 和一些特定的第三方包来处理分布式训练:
你可以在这里找到信息:
https://docs.databricks.com/applications/machine-learning/train-model/distributed-training/index.html

关于apache-spark - 如何在 Spark 数据帧上训练神经网络自动编码器 (Keras),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53116808/

相关文章:

apache-spark - 将 ORC 文件从 spark 写入 hadoop 时出错

java - 如何使用 Spark 从多个文档中获取术语文档矩阵?

python - keras lstm错误: expected to see 1 array

python - 如何使用另一个数据帧的新值更新 pyspark 数据帧?

apache-spark - pyspark 中 parquet writer 保存的文件数量

scala - 如何在Apache Spark中获取上一行的数据

python - 将权重从一个 Conv2D 层复制到另一层

tensorflow - 语义图像分割神经网络 (DeepLabV3+) 的内存过多问题

amazon-web-services - 在 EMR 上通过 Bootstrap Actions for PySpark 安装 Python 包

azure - 如何使用scala并从Azure blob存储读取文件?