如何将稀疏矩阵转化为 H2O?

How to get sparse matrices into H2O?

我正在尝试将稀疏矩阵放入 H2O 中,我想知道这是否可行。假设我们有以下内容:

test <- Matrix(c(1,0,0,1,1,1,1,0,1), nrow = 3, sparse = TRUE)

假设我的本地 H2O 是 localH2O,我似乎无法执行以下操作:

as.h2o(test)

它给出错误:cannot coerce class "structure("dgCMatrix", package = "Matrix")" to a data.frame。这似乎很合乎逻辑,但是假设测试太大以至于我无法将其转换为数据框,我该如何将其加载到 H2O 中?使用稀疏矩阵表示只有 500MB 左右。

如何将稀疏矩阵加载到 H2O 中?

将存储在 R 的内存中的数据传输到 H2O 的内存很麻烦,主要有两个原因:R 执行文件的 POST 以将数据流式传输到 H2O,这 1) 没有利用H2O 的并行 reader,以及 2) 将您的数据限制在 R 中。

相反,利用 R 中的 h2o.importFile 方法来利用 H2O 的并行 reader。您的数据可以存在于任何地方:HDFS、S3、常规文件系统...

H2O 支持 SVMLight reader,因此建议以 svmlight 格式保存来自 R 的稀疏矩阵。

希望对您有所帮助!