首页 > 解决方案 > 在 H2o 苏打水中运行具有 300 列(6 GB)的大型数据集的 coxph 模型

问题描述

我们正在尝试使用 h2o 运行 coxph 模型,Rsparkling 用于 6 GB 和 300 列的大型数据集,无论我们为 spark 采用什么配置,我们都会遇到内存问题。

根据 h2o,我们应该只有 4 倍数据大小的集群,但我们甚至使用了 128GB 的​​ 4 个工作节点和 128 个主节点。但仍然是它提出的问题。

请帮助我们选择使用当前数据集运行 h2o 所需的 spark 配置。我们能够为 50,000 条记录运行相同的代码。

我们有 300 列 X 和 2 对交互项。偏移列和权重。

您可以在此处找到示例代码,但它没有 300 列。我不知道如何提供完美的输入文件和完整的代码来复制问题。如果您希望查看包含 300 列的实际代码,请告诉我。

`# Load the libraries used to analyze the data
 library(survival)
 library(MASS)
 library(h2o)


 # Create H2O-based model
 predictors <- c("HasPartner", "HasSingleLine", "HasMultipleLines",
            "HasPaperlessBilling", "HasAutomaticBilling", 
 "MonthlyCharges",
            "HasOnlineSecurity", "HasOnlineBackup", "HasDeviceProtection",
            "HasTechSupport", "HasStreamingTV", "HasStreamingMovies")

 h2o_model <- h2o.coxph(x = predictors,
                   event_column = "HasChurned",
                   stop_column = "tenure",
                   stratify_by = "Contract",
                   training_frame = churn_hex)

  print(summary(h2o_model))'

标签: h2osparkling-water

解决方案


这完全取决于停止列和分层列的基数。我会尝试使用 32-64GB 内存的单个节点。

请分享有关数据集的详细信息。


推荐阅读